ID #1109

Error Messages of SQL Server 2005 Start Up Failure (Part 2)

Part II- identify and resolve problem by mapping status code to specific problem.

 

1. TDSSNIClient initialization failed with error <xxx>, status code 0x3

This probably due to server fail to read the shared memory setting, go to sql server configuratin manager, check properties of shared memory in your sql instance.

 

2. TDSSNIClient initialization failed with error <xxx>, status code 0x4

This probably due to all protocols disabled on your server box, you need to enable at least one, shared memory/named pipe/TCP/VIA.

 

3. TDSSNIClient initialization failed with error <xxx>, status code 0xa

This probably due to your TCP protocol setting problem, go to sql server configuratin manager, check properties of TCP/IP, check whether you set invalid IP Address,port,any space around the address or port, etc.

 

4. TDSSNIClient initialization failed with error <xxx>, status code 0x8

This probably due to your TCP protocol setting problem, go to sql server configuratin manager, check properties of TCP/IP, check whether you set correct value of "Keep Alive", etc.

 

5. TDSSNIClient initialization failed with error <xxx>, status code 0x7

This probably due to your TCP protocol setting problem, go to sql server configuratin manager, check properties of TCP/IP, check whether you set correct value of "Keep Alive", it is supposed to be DWORD type.

 

6. TDSSNIClient initialization failed with error <xxx>, status code 0x9

Check whether registry key: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\SuperSocketNetLib\TCP is still avaliable and if it somehow corrupt, please reinstall SQL Server to fix.

 

7. TDSSNIClient initialization failed with error <xxx>, status code 0x51

Check whether registry key: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\SuperSocketNetLib\NP is still avaliable and if it somehow corrupt, please reinstall SQL Server to fix.

 

8. TDSSNIClient initialization failed with error <xxx>, status code 0xd

This probably due to your TCP protocol setting problem, go to sql server configuratin manager, check properties of TCP/IP, in *protocol* tab check whether you can see value of "Enabled" , "Listen All", "No Delay", etc.

 

9. TDSSNIClient initialization failed with error <xxx>, status code 0xe

This probably due to your TCP protocol setting problem, go to sql server configuratin manager, check properties of TCP/IP,in *Protocol* tab, check whether you can see value of "Listen All".

 

10. TDSSNIClient initialization failed with error <xxx>, status code 0x10

This probably due to your TCP protocol setting problem, go to sql server configuratin manager, check properties of TCP/IP, then firt you should see you "Listen All" in *Protocol* tab was set to 'yes', then go to *IPAddress* tab, in *IPAll* section,check whether you can see correct value of "TcpPort" or "TcpDynamicPort",no space around the value.

 

11. TDSSNIClient initialization failed with error <xxx>, status code 0x15

This probably due to your TCP protocol setting problem, especially when you enabled server listening on individual IP. go to sql server configuratin manager, check properties of TCP/IP, then firt you should see "Listen All" in *Protocol* tab was set to 'no', then go to *IPAddress* tab, in *IPxx*(the individual IP section that you enabld) section,check whether you can see value of "Enalbed".

 

12. TDSSNIClient initialization failed with error <xxx>, status code 0x16

This probably due to your TCP protocol setting problem, especially when you enabled server listening on individual IP. go to sql server configuratin manager, check properties of TCP/IP, then firt you should see "Listen All" in *Protocol* tab was set to 'no', then go to *IPAddress* tab, in *IPxx*(the individual IP section that you enabld) section,check whether you can see value of "Active".

 

13. TDSSNIClient initialization failed with error <xxx>, status code 0x19

This probably due to your TCP protocol setting problem, especially when you enabled server listening on individual IP. go to sql server configuratin manager, check properties of TCP/IP, then firt you should see "Listen All" in *Protocol* tab was set to 'no', then go to *IPAddress* tab, in *IPxx*(the individual IP section that you enabld) section,check whether the correctvalue of "TcpPort" or "TcpDynamicPort" was displayed,no space around the port value,etc. 

14. TDSSNIClient initialization failed with error <xxx>, status code 0x1d

This probably due to your TCP protocol setting problem, go to sql server configuratin manager, check properties of TCP/IP, then firt you should see "Listen All" in *Protocol* tab was set to 'no', then go to *IPAddress* tab, in *IPxx*(the individual IP section that you enabld) section,check whether the value of "IPAddress",no space around the value,etc.

 

15. TDSSNIClient initialization failed with error <xxx>, status code 0x1e

This probably due to you set duplicate IP Address, nomarlly, the windows error should give you error.  go to sql server configuratin manager, check properties of TCP/IP, then firt you should see "Listen All" in *Protocol* tab was set to 'no', then go to *IPAddress* tab, see whether there are two identical IP Address in different *IPXX" section and both of them was enabled.

 

16. TDSSNIClient initialization failed with error <xxx>, status code 0x22

This probably due to server fail to read DAC( Dedicated Admin Connection ) port.Check Books Online for topic "use a dedicated admin connection".

 

17. TDSSNIClient initialization failed with error <xxx>, status code 0x23

This probably due to server fail to read DAC( Dedicated Admin Connection ) port, there are might be no DAC port or multiple ports configured. Check Books Online for topic "use a dedicated admin connection".

 

18.TDSSNIClient initialization failed with error <xxx>, status code 0x35

This is typical error for NP Setting,go to sql server configuratin manager, check properties of Named Pipe, see whether the correct value of "Enabled" and "PipeName" was populated, any space around pipe name, etc.

 

19.TDSSNIClient initialization failed with error <xxx>, status code 0x36

This is typical error that server fail to read VIA setting if you enabled VIA.

However, this also could be hit even have VIA support and enabled.

Hence, to address the problem,

First, you need to know whether you want to use VIA and already installed VIA driver on your box,if so, go to sql server configuratin manager, check properties of VIA, see whether correct value of "Listen Info" , "Default Port", "Enabled" was displayed, any space around the value, etc.

Secondly, if you have no VIA driver installed on the machine, just simply disable VIA and restart SQL Server to take effect.

 

20. TDSSNIClient initialization failed with error <xxx>, status code 0x60

This is most common error if have VIA protocol enabled but no VIA support. And normally, there is a special error info in front of this status code, like:

Error: 26055, Severity: 16, State: 1.
2006-04-20 18:42:26.10 Server      The SQL Server failed to initialize VIA support library [QLVipl.dll]. This normally indicates the VIA support library does not exist or is corrupted. Please repair or disable the VIA network protocol. Error: 0x7e

So, it is much easier to figure out what was wrong, in such situation, just simply disable VIA or fix the corrupt library.

 

21. TDSSNIClient initialization failed with error <xxx>, status code 0x38

This is typical error that server fail to read server encryption setting. go to sql server configuratin manager, check properties of sql instance, see whether value "ForceEncryption" was populated.

 

22. TDSSNIClient initialization failed with error <xxx>, status code 0x50

0x5 is ERROR_ACCESS_DENIED, the windows error code for “Access is denied”. A typical SQL Server ERRORLOG looks like,
2012-03-06 10:48:27.99 Server      Server is listening on [ 'any' <ipv4> 1433].
2012-03-06 10:48:28.07 Server      Server local connection provider is ready to accept connection on [ \\.\pipe\SQLLocal\MSSQLSERVER ].
2012-03-06 10:48:28.07 Server      Error: 26029, Severity: 16, State: 1.
2012-03-06 10:48:28.07 Server      Server named pipe provider failed to listen on [ \\.\pipe\sql\query ]. Error: 0x5
2012-03-06 10:48:28.16 Server      Error: 17182, Severity: 16, State: 1.
2012-03-06 10:48:28.16 Server      TDSSNIClient initialization failed with error 0x5, status code 0x50.
2012-03-06 10:48:28.18 Server      Error: 17182, Severity: 16, State: 1.
2012-03-06 10:48:28.18 Server      TDSSNIClient initialization failed with error 0x5, status code 0x1.
2012-03-06 10:48:28.19 Server      Error: 17826, Severity: 18, State: 3.
2012-03-06 10:48:28.19 Server      Could not start the network library because of an internal error in the network library. To determine the cause, review the errors immediately preceding this one in the error log.
2012-03-06 10:48:28.22 spid8s      Starting up database 'tempdb'.
2012-03-06 10:48:28.22 Server      Error: 17120, Severity: 16, State: 1.
2012-03-06 10:48:28.22 Server      SQL Server could not spawn FRunCM thread. Check the SQL Server error log and the Windows event logs for information about possible related problems.

During service starting up, SQL Server needs to open listening named-pipes to accept client share memory or named-pipe connections. If the listening named-pipes are not closed properly during the last shutdown of SQL Server, there will be orphan named-pipe handles in the windows kernel file system. Since the listening pipes are opened ACLing to the current user, if you happen to switch SQL Server to run under different account, you will get error 0x05(ERROR_ACCESS_DENIED). These behavior is very similar to cases where you get denial when opening a file that is opened by another user process. One frequent case that makes SQL Server to switch running account is that user first runs it under console session for debugging purpose then switches back to run it as installed service. Normally, the service account is different from the current user account that is used for running the console session. There are few cases that can cause SQL Server fail to clean up the listening named pipes. One example is that SQL Server is shutdown by kill process.
The solution is to either switch back to previous account and make a clean shutdown of SQL Server, or reboot the machine. In most cases, I feel the later is faster.
Note that, status code 0x50 is for listening pipe of named pipe provider that was not closed properly, while status code 0x40 is for shared memory provider

 

23. TDSSNIClient initialization failed with error <xxx>, status code 0x3A

This is typical error that server load provider library fail, if you came across this issue, recommand reinstall sql server.

 

24. TDSSNIClient initialization failed with error <xxx>, status code 0x90

Check whether registry key "ProtocolList" under  HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\SuperSocketNetLib is still avaliable, suggest reinstall SQL server to fully address the issue.

 

25. TDSSNIClient initialization failed with error <xxx>, status code 0x57

This is typical error for server initialize VIA protocol listening fail, check VIA propery and make sure the setting match the configuration in your VIA driver utility.

 

Summary:

Most of above errors are due to registry key messed up or permission issue cause sql server fail to read them, but, those should rarely happen if you did successful installation of SQL Server and follow appropriate protocols configuration.

One suggestion:

After you installed SQL Server, backup following registry setting:

1) HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server
2) HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer

So, if you have problem, you can roll back to the default setting.

 

Troubleshoot Tips:

1) Follow part I to dig out the exact status code; then map the code to possible reason that described in part II.

2) Try to fix the issue by carefully checking protocol configuration.

3) Roll back to original configuration and retry or reinstall SQL Server.

Tags: -

Related entries:

You cannot comment on this entry