如何解決 SQL Server 2000 中的連接問題外文翻譯_第1頁
如何解決 SQL Server 2000 中的連接問題外文翻譯_第2頁
如何解決 SQL Server 2000 中的連接問題外文翻譯_第3頁
如何解決 SQL Server 2000 中的連接問題外文翻譯_第4頁
如何解決 SQL Server 2000 中的連接問題外文翻譯_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、How to troubleshoot connectivity issues in SQL Server 2000Chris Tull, Microsoft Help and SupportThis article can help you to resolve connectivity problems with Microsoft SQL Server 2000. This article contains descriptions of common connectivity problems and the steps that you can take to help resolv

2、e your connectivity problems. SQL Server 2000 supports several methods of communication between the instance of SQL Server and the client applications. If your client application and the instance of SQL Server reside on the same computer, Microsoft Windows interprocess communication (IPC) components

3、, such as local named pipes or the Shared Memory protocol, are used to communicate. However, when the client application and the instance of SQL Server reside on different computers, a network IPC, such as TCP/IP or named pipes, is used to communicate.SQL Server 2000 uses Net-Library, a DLL, to comm

4、unicate with a particular network protocol. A matching pair of Net-Libraries must be active on the client computer and the server computer to support the network protocol that you want to use. For example, if you want to enable a client application to communicate with a specific instance of SQL Serv

5、er across TCP/IP, the client TCP/IP Sockets Net-Library (Dbnetlib.dll) must be configured to connect to the server on the client computer. Likewise, the server TCP/IP Sockets Net-Library (Ssnetlib.dll) must listen on the server computer. In this scenario, the TCP/IP protocol stack must be installed

6、on both the client computer and the server computer.After you install SQL Server 2000, you can configure the properties of the client Net-Libraries by using Client Network Utility. You can configure the properties of the server Net-Libraries by using Server Network Utility (Svrnetcn.exe). The server

7、 Net-Libraries are installed during the installation of the server tools in SQL Server Setup. However, some of the server Net-Libraries may not be active. By default, SQL Server 2000 enables and listens on TCP/IP, named pipes, and Shared Memory. Therefore, for a client to connect to a server compute

8、r, the client must connect by using a client Net-Library that matches one of the server Net-Libraries that is currently being used by the instance of SQL Server.For additional information about SQL Server communication components and Net-Libraries, see the following topics in SQL Server Books Online

9、: Communication ComponentsClient and Server Net-LibrariesManaging ClientsTroubleshoot connectivity issuesMost of the connectivity issues that you may notice in SQL Server 2000 occur because of problems with TCP/IP, Windows authentication, or a combination of TCP/IP and Windows authentication. Import

10、ant Before you start to troubleshoot connectivity issues in SQL Server 2000, make sure that the MSSQLServer service is started on the computer that is running SQL Server.Verify your DNS settingsThe name resolution process in Domain Name System (DNS) is used to resolve the IP address to the name of t

11、he instance of SQL Server. If the name resolution process does not work correctly, the instance of SQL Server is not reachable, and you may receive one or more of the following error messages: SQL Server does not exist or access deniedGeneral Network ErrorCannot Generate SSPI ContextTo verify that t

12、he name resolution process is resolving the correct server, you can ping the server by using the server name and the IP address of the server. To do so, follow these steps: 1.Click Start, and then click Run.2.In the Run dialog box, type cmd in the Open box, and then click OK.3.At the command prompt,

13、 run the following command:ping <Server Name>Note the IP address that is returned.4.At the command prompt, run the following command (where IP address is the IP address that you noted in step 3):ping a <IP address>Verify that the command resolves to the correct server name. If either of

14、the specified commands are not successful, time out, or do not return the correct values, the DNS lookup is not working correctly or the problem occurs because of other networking or routing issues. To see your current DNS settings, run the following command at a command prompt:ipconfig /allTo work

15、around this problem, add an entry for the server to the %systemroot%system32driversetchosts file on the client computer. You can also work around the problem by connecting to the server by using the Named Pipes Net-library.Verify the enabled protocols and aliasesConnectivity problems may occur if th

16、e alias on the client computer is set incorrectly. You can view the aliases by using Client Network Utility. To do so, follow these steps: 1.Start Client Network Utility. If the SQL Server client tools are installed on the computer that is running the client application, follow these steps to start

17、Client Network Utility: a. Click Start, and then point to Programs.b. Point to Microsoft SQL Server, and then click Client Network Utility.If the SQL Server client tools are not installed on the client computer, follow these steps to start Client Network Utility: a. Click Start, and then click Run.b

18、. In the Run dialog box, type cliconfg in the Open box, and then click OK.2.In the SQL Server Client Network Utility window, click the General tab, and then enable all the protocols that you want to use.Note You must at least enable the TCP/IP protocol and the named pipes protocol.3.Click the Alias

19、tab, and then verify the aliases that are configured for the instance of SQL Server. 4.Verify the properties of the aliases to make sure that the server name or IP address and the protocol are configured correctly.You can create a new alias to test the connectivity by using the server name, the IP a

20、ddress, or even by using a different protocol.Note Earlier versions of Microsoft Data Access Components (MDAC) have a different user interface for Client Network Utility. Therefore, if you do not see the options that are listed in this article, install a later version of MDAC on the computer that is

21、 running the client application.Verify that the instance of SQL Server is listening correctlyTo verify that the instance of SQL Server is listening on named pipes, TCP/IP, or another protocol that you are using at the client application, open the current SQL Server error log file. The SQL Server err

22、or log file may contain entries that are similar to the following:2003-11-06 09:49:36.17 server SQL server listening on TCP, Shared Memory, Named Pipes. 2003-11-06 09:49:36.17 server SQL server listening on :1433, :1433.If you analyze the entries in the SQL Server error log file,

23、 you can verify that the instance of SQL Server is listening on the correct IP address and on the correct port. By default, a default instance of SQL Server listens on the port 1433. You can also use Server Network Utility to verify the protocol settings for SQL Server and to change the properties i

24、n SQL Server, including the protocols that can connect to SQL Server and the ports that can be used. For more information about using Server Network Utility, see the "SQL Server Network Utility" topic in SQL Server Books Online. Sometimes, SQL Server 2000 may not bind to port 1433 or any o

25、ther specified port. This problem may occur if the port is being used by another application or if you are trying to connect by using an IP address that is not correct. Therefore, the TCP/IP connections to SQL Server may not be successful and you may receive the following error message in the SQL Se

26、rver error log file: 2001-11-14 15:49:14.12 server SuperSocket Info: Bind failed on TCP port 1433.If you cannot connect to the instance of SQL Server by using a TCP/IP connection, try to use the named pipes protocol or the Shared Memory protocol. Run the following command at a command prompt to obta

27、in information about the ports that are in use:NETSTAT anYou can also use the Portqry command-line utility to obtain more information about the ports that are in use.Note For named instances of SQL Server, SQL Server dynamically determines the port and listens on the determined port. Therefore, when

28、 you start the named instance of SQL Server, SQL Server tries to listen on the port that was previously being used. If SQL Server cannot bind to that port, the named instance may dynamically bind to a different port. In that situation, make sure that the client application is also set to determine t

29、he port dynamically. Alternatively, you can also specify a static port for the named instance to bind to and to listen on by using Client Network Utility.Troubleshoot MDAC IssuesConnectivity problems may also occur because of problems with MDAC. For example, a software installation may overwrite som

30、e of the MDAC files or change the permissions that you must have to access the MDAC files. You can run the MDAC Component Checker to verify the MDAC installation on your computer.Note If you are connecting to a named instance of SQL Server, make sure that you are running MDAC 2.6 or later on your co

31、mputer. Earlier versions of MDAC do not recognize named instances of SQL Server. Therefore, connections to named instances may not be successful.You can use the Odbcping.exe utility to verify connections through the SQL Server ODBC driver.You can also test connectivity to the instance of SQL Server

32、by using a .udl file.Troubleshoot firewall issuesIf firewall exists between the client computer and the computer that is running SQL Server, make sure that the ports that are required to communicate through the firewall are open.If you use the TCP/IP protocol to connect to the instance of SQL Server

33、, make sure that you can use the Telnet program to connect to the port where SQL Server is listening. To use the Telnet program, run the following command at a command prompt: Telnet <IP Address> <Port Number>If the Telnet program is not successful and you receive an error message, resol

34、ve the error and then try to connect again.Note Because of issues that were caused by the Slammer virus, the User Datagram Protocol (UDP) port 1434 may be blocked on your firewall.Troubleshoot authentication and security issuesConnections to SQL Server may not be successful because of authentication

35、 failures. If the authentication fails, you may receive one of the following error messages:Login failed for user '<username>'Login failed for user 'NTAUTHORITYANONYMOUS LOGON'Login failed for user 'null'If you receive an error message because of an authentication failu

36、re and the error message does not mention a specific SQL Server login name, troubleshoot the problem with Windows authentication. You may receive the following error message because of problems with Windows authentication: Cannot generate SSPI ContextThe following problems may cause authentication a

37、nd security issues: Problems occur with NTLM authentication or with Kerberos authentication.The domain controller cannot be contacted because of connectivity issues.Problems occur with trust relationships across domains.For more information about possible causes, see the event logs on the computer.

38、To work around connectivity problems with Windows authentication, you can use SQL Server Authentication to connect to the instance of SQL Server. If the connection is not successful when you use SQL Server Authentication, you receive the following error message: Login failed for user '<userna

39、me>' . Not associated with a trusted connectionTo troubleshoot this problem, follow these steps. Warning If you use Registry Editor incorrectly, you may cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that you can solve problems that

40、result from using Registry Editor incorrectly. Use Registry Editor at your own risk. 1.Make sure that the instance of SQL Server is configured to use Windows authentication and SQL Server Authentication. To do so, make sure that the following registry keys are on the computer that is running SQL Ser

41、ver. For the default instance of SQL Server: HKEY_LOCAL_MACHINESoftwareMicrosoftMSSQLServerMSSQLServerLoginModeFor the named instance of SQL Server: HKEY_LOCAL_MACHINESoftwareMicrosoftMicrosoft SQL Server<Instance Name>MSSQLServerLoginModeMake sure that the following registry key values are se

42、t:Authentication typeValueWindows authentication only1Mixed mode (SQL Server Authentication and Windows authentication)2Note If you make any changes to the registry, you must stop and then restart the instance of SQL Server for the changes to take effect.2.Try to connect to the instance of SQL Serve

43、r by using different Windows accounts or SQL Server login accounts. This can help determine if the connection is not successful because of problems with a particular login account. For example, the password of the login account may have been changed.3.Try to connect to the instance of SQL Server by

44、using different protocols. For example, the connections that use the TCP/IP protocol with Windows authentication may not be successful, but connections that use the named pipes protocol with Windows authentication may be successful.If you are using certificates, you may receive a Secure Sockets Laye

45、r (SSL) security error message when you try to connect to the instance of SQL Server. Troubleshoot stress on TCP/IP socketsWhen you use the SQL Server ODBC driver, the Microsoft OLE DB Provider for SQL Server, or the managed provider, you can disable connection pooling by using the appropriate appli

46、cation programming interfaces (APIs). When you disable connection pooling and your application frequently opens and closes connections, the stress on the underlying SQL Server network library may increase. Sometimes, the Web servers and the JDBC drivers may also try to connect to the instance of SQL

47、 Server. Therefore, the increase in connection requests to SQL Server may be more than SQL Server can handle. This may stress the TCP/IP sockets, and you may receive the following error message in the SQL Server error log file: 2003-08-07 20:46:21.11 server Error: 17832, Severity: 20, State: 6 2003-

48、08-07 20:46:21.11 server Connection opened but invalid login packet(s) sent. Connection closed.For additional information, click the following article numbers to view the articles in the Microsoft Knowledge Base: 154628 ( /kb/154628/) INF: SQL logs 17832 with multiple TCPIP connection requests 32847

49、6 ( /kb/328476/) TCP/IP settings for SQL Server drivers when pooling is disabled Note You may not notice the stress on TCP/IP sockets if you are running SQL Server 2000 SP3 or SQL Server 2000 SP3a because a limit on the number of login packets was added. The 17832 error occurs when you use third-par

50、ty drivers to connect to the instance of SQL Server. To resolve this problem, contact the third-party vendor and obtain drivers that have been tested to work with SQL Server 2000 SP3 and SQL Server 2000 SP3a.See if the instance of SQL Server is started in single-user modeIf the instance of SQL Serve

51、r that you are trying to connect to is started in single-user mode, only one connection can be established with SQL Server. If you have software running on your computer that automatically connects to SQL Server, the software can easily use the only connection. For example, the following software ca

52、n automatically connect to the instance of SQL Server: SQL Server AgentThird-party backup softwareThird-party monitoring softwareThird-party virus softwareMicrosoft Internet Information Services (IIS)SQL Server Enterprise Manager The client application that is trying to connect to the instance of SQ

53、L Server receives the following error message: SQL Server does not exist or Access DeniedThis error generally occurs during SQL Cluster Setup and service pack setup when the setup process starts the instance of SQL Server in single-user mode. The specified applications may automatically connect to t

54、he instance of SQL Server using the only available connection, and setup is not successful.To determine if the instance of SQL Server has been started in single-user mode, check to see if the SQL Server error log file has an entry that is similar to following: 2003-07-31 11:26:43.79 spid3 Warning *

55、2003-07-31 11:26:43.80 spid3 SQL Server started in single user mode. Updates allowed to system catalogs.Verify named pipes connectivity to SQL ServerIf you cannot connect to the instance of SQL Server by using named pipes, make sure that the instance of SQL Server is configured to accept named pipes

56、 connections. Troubleshoot connections that time out during the recovery processEvery time that you start an instance of SQL Server, SQL Server recovers each database. During this recovery process, SQL Server rolls back the transactions that are not committed. SQL Server also rolls forward the trans

57、actions that are committed and the changes that were not written to the hard disk when the instance of SQL Server was stopped. When the recovery process is complete, SQL Server logs the following message in the SQL Server error log file: Recovery CompleteDuring the recovery process, SQL Server may n

58、ot accept connections. Clients that try to connect to the instance of SQL Server during that time may receive an error message that is similar to the following: Timeout ExpiredThe SQL Server Agent service may not start because it waits for SQL Server to recover the databases. Therefore, when you rec

59、eive the following message in the SQL Server error log file, the connections will no longer fail with a timeout error: Recovery CompleteIf the recovery process takes a long time, you may have to additionally troubleshoot the recovery process.Test different ways to connect to the instance of SQL ServerIf you experience connectivity problems when y

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論