FIX: 이 xp_sendmail 확장 저장된 프로시저를 성공적으로 SQL Server 2000 SP2 이상이 실행되지 않음

기술 자료 번역 기술 자료 번역
기술 자료: 833045 - 이 문서가 적용되는 제품 보기.
모두 확대 | 모두 축소

이 페이지에서

현상

Microsoft SQL Server 2000 서비스 팩 2 (SP2) 전자 메일 메시지를 사용하여 xp_sendmail 확장 저장된 프로시저를 컴퓨터에 보내야 하면 실행 또는 나중에 xp_sendmail 확장 저장된 프로시저를 성공적으로 실행되지 않을 수 있습니다. 다음과 같은 오류 메시지가 나타날 수 있습니다.
서버: 메시지 18025, 수준 16, 상태 1, 줄 0
xp_sendmail: 메일 오류가 0x80040115
참고 일반적으로 이 문제는 다음 두 조건에 해당하는 경우 발생합니다.
  • Microsoft SQL Server 2000을 실행하는 컴퓨터와 Microsoft Exchange Server를 실행하는 컴퓨터 간에 네트워크 연결 손실이 것입니다.
  • 첫 번째 실행의 xp_sendmail 확장 저장된 프로시저를 오류가 발생한 SQL Server의 인스턴스에 대한 후 Exchange 서버가 다시 시작됩니다.

해결 방법

서비스 팩 정보

이 문제를 해결하려면 Microsoft SQL Server 2000의 최신 서비스 팩을 구하십시오. 추가 정보는 다음 문서 번호를 클릭하여 Microsoft 기술 자료에서 확인하십시오:
290211최신 SQL Server 2000 서비스 팩을 구하는 방법

핫픽스 정보

이 핫픽스의 영어 버전은 다음 표에 나열된 파일 특성(또는 그 이후의 파일 특성)이 있습니다. 이러한 파일의 시간과 날짜는 UTC (협정 세계시) 로 나열됩니다. 파일 정보에서는 현지 시간으로 변환됩니다. UTC와 로컬 시간의 차이를 알려면 제어판의 날짜 및 시간 도구에서 표준 시간대 탭을 사용하십시오.
   Date         Time   Version             Size   File name
   ---------------------------------------------------------------------
   31-May-2003  18:45  2000.80.818.0      78,400  Console.exe      
   28-Oct-2003  04:21  2000.80.873.0     315,968  Custtask.dll     
   30-Jan-2004  16:29  2000.80.911.0      33,340  Dbmslpcn.dll     
   25-Apr-2003  02:12                    786,432  Distmdl.ldf
   25-Apr-2003  02:12                  2,359,296  Distmdl.mdf
   30-Jan-2003  01:55                        180  Drop_repl_hotfix.sql
   12-Sep-2003  03:26  2000.80.859.0   1,905,216  Dtspkg.dll       
   26-Aug-2003  20:16  2000.80.854.0     528,960  Dtspump.dll      
   23-Jun-2003  22:40  2000.80.837.0   1,557,052  Dtsui.dll        
   23-Jun-2003  22:40  2000.80.837.0     639,552  Dtswiz.dll       
   24-Apr-2003  02:51                    747,927  Instdist.sql
   03-May-2003  01:56                      1,581  Inst_repl_hotfix.sql
   30-Jan-2004  16:29  2000.80.911.0      90,692  Msgprox.dll      
   01-Apr-2003  02:07                      1,873  Odsole.sql
   30-Jan-2004  16:29  2000.80.911.0      62,024  Odsole70.dll     
   30-Jan-2004  16:29  2000.80.911.0      25,144  Opends60.dll     
   07-May-2003  18:47                    132,096  Opends60.pdb
   30-Jan-2004  16:28  2000.80.911.0      57,904  Osql.exe         
   02-Apr-2003  23:15  2000.80.797.0     279,104  Pfutil80.dll     
   04-Aug-2003  18:17                    550,780  Procsyst.sql
   12-Sep-2003  00:37                     12,305  Qfe469315.sql
   22-May-2003  22:57                     19,195  Qfe469571.sql
   30-Jan-2004  01:16                  1,090,380  Replmerg.sql
   30-Jan-2004  16:29  2000.80.911.0     221,768  Replprov.dll     
   30-Jan-2004  16:29  2000.80.911.0     307,784  Replrec.dll      
   29-Jan-2004  23:24  2000.80.911.0     159,813  Replres.rll
   06-Sep-2003  00:00                  1,087,150  Replsys.sql
   13-Aug-2003  16:28                    986,603  Repltran.sql
   30-Jan-2004  16:29  2000.80.911.0     287,304  Rinitcom.dll     
   30-Jan-2004  16:29  2000.80.911.0      57,916  Semnt.dll        
   29-Jul-2003  20:13  2000.80.819.0     492,096  Semobj.dll       
   31-May-2003  18:27  2000.80.818.0     172,032  Semobj.rll
   02-Jan-2004  19:42  2000.80.904.0      53,832  Snapshot.exe     
   09-Dec-2003  20:07                    117,834  Sp3_serv_uni.sql
   05-Feb-2004  00:46  2000.80.913.0      28,672  Sqlagent.dll     
   05-Feb-2004  00:47  2000.80.913.0     311,872  Sqlagent.exe     
   19-Feb-2004  18:02  2000.80.916.0     168,001  Sqlakw32.dll     
   30-Jan-2004  16:29  2000.80.911.0   4,215,360  Sqldmo.dll       
   07-Apr-2003  17:44                     25,172  Sqldumper.exe    
   29-Jan-2004  23:17  2000.80.911.0      28,672  Sqlevn70.rll
   05-Mar-2004  17:13  2000.80.922.0     180,792  Sqlmap70.dll     
   03-Sep-2003  02:56  2000.80.857.0     188,992  Sqlmmc.dll       
   02-Sep-2003  23:03  2000.80.857.0     479,232  Sqlmmc.rll
   22-Oct-2003  00:08  2000.80.871.0     401,984  Sqlqry.dll       
   30-Jan-2004  16:29  2000.80.911.0      57,920  Sqlrepss.dll     
   09-Mar-2004  19:54  2000.80.922.0   7,614,545  Sqlservr.exe     
   09-Mar-2004  19:57                 12,788,736  Sqlservr.pdb
   30-Jan-2004  16:29  2000.80.911.0     590,396  Sqlsort.dll      
   30-Jan-2004  16:29  2000.80.911.0      45,644  Sqlvdi.dll       
   30-Jan-2004  16:29  2000.80.911.0     106,588  Sqsrvres.dll     
   30-Jan-2004  16:29  2000.80.911.0      33,340  Ssmslpcn.dll     
   30-Jan-2004  16:29  2000.80.911.0      82,492  Ssnetlib.dll     
   30-Jan-2004  16:29  2000.80.911.0      25,148  Ssnmpn70.dll     
   28-Oct-2003  04:21  2000.80.873.0     123,456  Stardds.dll      
   30-Jan-2004  16:29  2000.80.911.0     158,240  Svrnetcn.dll     
   30-Jan-2004  16:29  2000.80.911.0      76,416  Svrnetcn.exe     
   30-Apr-2003  23:52  2000.80.816.0      45,132  Ums.dll          
   30-Apr-2003  23:52                    132,096  Ums.pdb
   30-Jan-2004  16:29  2000.80.911.0      98,872  Xpweb70.dll    
참고 파일 종속 관계로 인해 가장 최근의 핫픽스나 이러한 파일이 포함된 기능을 추가 파일이 들어 있습니다.

현재 상태

Microsoft는 "본 문서의 정보는 다음의 제품에 적용됩니다." 절에 나열된 Microsoft 제품에서 이 문제를 확인했습니다. 이 문제는 Microsoft SQL Server 2000 서비스 팩 4에서 처음 수정되었습니다.

해결 과정

이 문제를 해결하려면 네트워크 연결을 확인한 다음 메일을 다시. xp_sendmail 확장 저장된 프로시저를 레지스트리 항목을 구성하여 또는 응용 프로그램 코드에 재시도 논리를 추가하여 재시도 옵션을 설정할 수 있습니다. 이렇게 하려면 다음 방법 중 하나를 사용하십시오.
  • 방법 1: xp_sendmail 확장 저장된 프로시저를 다시 시도 옵션 구성

    xp_sendmail 확장 저장된 프로시저를 교전을 않으면 이 수정 프로그램을 설치한 후 기본적으로 HRESULT 0x80040115 =, xp_sendmail 확장 저장된 프로시저를 1000 밀리초 휴면 상태에 후 메일을 다시 보내려고 합니다. 그러나, 재시도 및 각 재시도 대기 간격 수를 구성할 수 있습니다.

    중요한 이 섹션에서는, 메서드 또는 작업이 레지스트리 수정 방법을 알려 주는 단계가 포함되어 있습니다. 그러나 레지스트리를 잘못 수정하면 심각한 문제가 발생할 수 있습니다. 따라서 다음 이 단계를 주의 깊게 따라야 합니다. 추가 보호 기능을 수정하기 전에 레지스트리를 백업해야. 그런 다음 문제가 발생할 경우 레지스트리를 복원할 수 있습니다. 백업 및 복원하는 방법에 대한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
    322756백업 및 Windows 에서 레지스트리를 복원하는 방법
    1. 재시도 횟수를 구성하려면 NumberOfTimesToRetryOnNetworkError DWORD 값을 다음 레지스트리 키를 추가할 및 다음 값을 설정하십시오.
      • SQL Server 2000 기본 인스턴스의 경우 HKEY_LOCAL_MACHINE\Software\Microsoft\MSSQLServer\MSSQLServer 사용하여 레지스트리 키를.
      • SQL Server 2000의 명명된 인스턴스를 사용하여 HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft 사용할 SQL Server\ Instance Name \MSSQLServer 레지스트리 키를.
    2. xp_sendmail 재시도 옵션 대기 간격을 구성하려면 WaitIntervalForRetryOnNetworkError DWORD 값을 다음 레지스트리 키를 추가할 및 다음 값을 설정하십시오.
      • SQL Server 2000의 기본 인스턴스에 HKEY_LOCAL_MACHINE\Software\Microsoft\MSSQLServer\MSSQLServer 레지스트리 키를 사용하십시오.
      • SQL Server 2000의 명명된 인스턴스를 Instance Name HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\ \MSSQLServer 레지스트리 키를 사용하십시오.
  • 방법 2: 추가 응용 프로그램 코드에 논리를 다시 시도

    이렇게 하려면 다음과 같이 하십시오.
    1. 메일 서버로 구성된 컴퓨터에 대한 네트워크 연결을 확인하십시오.
    2. 네트워크 어댑터와 해당 드라이버가 제대로 작동하는지 확인하십시오.
    3. 적절한 논리를 Transact-SQL 스크립트에서 오류가 발생한 후 전자 메일 메시지를 다시 보내야 수 있도록 전자 메일 메시지를 사용하여 xp_sendmail 확장 저장된 프로시저에 보낼 수 있습니다. 이렇게 하려면 다음과 유사한 Transact-SQL 스크립트를 사용할 수 있습니다: DECLARE @ EmailAddTO varchar(30)
      DECLARE
      @EmailAddTO varchar(30),
      @EmailSubject varchar(130),
      @EmailText varchar(255),
      @return int,
      @Counting int 
      
      BEGIN
      /* SET value */
      SET @return = 0 
      SET @Counting = 0 
      SET @EmailSubject = 'TEST EMAIL' 
      SET @EmailText = 'This is a test email'
      SET @EmailAddTO = '<RecipientAddress>' 
      
      /* LOOP. If e-mail is sent, break loop; ELSE WAIT 10 seconds, and then RETRY. */
      WHILE 1=1
      BEGIN
      SET @Counting = @Counting + 1
      
      EXEC @return = master.dbo.xp_sendmail 
      @recipients = @EmailAddTO,
      @message = @EmailText ,
      @subject = @EmailSubject
      
      /* CHECK value, break if SUCCESS */
      IF @return = 0
      BEGIN
      PRINT 'EMAIL SENT'
      BREAK
      END
      ELSE
      BEGIN
      /* Try 5 times */
      IF @Counting = 5
      BREAK 
      PRINT 'EMAIL FAILED, WAIT 10 SECONDS, TRY AGAIN'
      /* 000 hours, 00 minutes, and 10 seconds */
      WAITFOR DELAY '000:00:10'
      END
      END
      END
      GO

추가 정보

xp_sendmail 확장 저장된 프로시저를 사용하여 xp_sendmail 전자 메일 메시지를 보낼 때 MAPI API 호출이 많은 저장된 프로시저를 사용하면 확장. 그러나 이 핫픽스 다시 시도 옵션에서 다음 오류 메시지와 함께 오류를 발생시킨 단일 호출에 대한 추가됩니다.
HRESULT = 0x80040115

참조

소프트웨어 업데이트 용어에 대한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
824684Microsoft 소프트웨어 업데이트를 설명하는 데 사용되는 표준 용어에 대한 설명
자세한 내용은 Microsoft 기술 자료에 있는 문서를 보려면 다음 문서 번호를 클릭하시기 바랍니다:
263556SQL 메일을 구성하는 방법
315886일반적인 SQL 메일 문제
820220xp_sendmail 확장 저장된 프로시저를 사용하여 전자 메일을 보내면 0x80070005 또는 0x80040005 오류가 발생합니다.

속성

기술 자료: 833045 - 마지막 검토: 2007년 11월 2일 금요일 - 수정: 4.3
본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft SQL Server 2000 Desktop Engine (MSDE) SP2
  • Microsoft SQL Server 2000 Desktop Engine (MSDE) SP3
  • Microsoft SQL Server 2000 서비스 팩 2
  • Microsoft SQL Server 2000 서비스 팩 3
  • Microsoft SQL Server 2000 서비스 팩 2
  • Microsoft SQL Server 2000 서비스 팩 3
  • Microsoft SQL Server 2000 서비스 팩 2
  • Microsoft SQL Server 2000 Personal Edition Service Pack 3
  • Microsoft SQL Server 2000 서비스 팩 2
  • Microsoft SQL Server 2000 서비스 팩 3
키워드:?
kbmt kbhotfixserver kbqfe kbregistry kbsqlserv2000presp4fix kbfix kbbug kbemail kbdll kbprb kberrmsg kbsqlservmail KB833045 KbMtko
기계 번역된 문서
중요: 본 문서는 전문 번역가가 번역한 것이 아니라 Microsoft 기계 번역 소프트웨어로 번역한 것입니다. Microsoft는 번역가가 번역한 문서 및 기계 번역된 문서를 모두 제공하므로 Microsoft 기술 자료에 있는 모든 문서를 한글로 접할 수 있습니다. 그러나 기계 번역 문서가 항상 완벽한 것은 아닙니다. 따라서 기계 번역 문서에는 마치 외국인이 한국어로 말할 때 실수를 하는 것처럼 어휘, 구문 또는 문법에 오류가 있을 수 있습니다. Microsoft는 내용상의 오역 또는 Microsoft 고객이 이러한 오역을 사용함으로써 발생하는 부 정확성, 오류 또는 손해에 대해 책임을 지지 않습니다. Microsoft는 이러한 문제를 해결하기 위해 기계 번역 소프트웨어를 자주 업데이트하고 있습니다.

피드백 보내기

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com