Topics from the Microsoft SQL Server Protocols team - Netlibs, TDS, SQL Browser, etc.
With SQL Server 2005, a server-side protocol error will generally prevent the instance from starting. To fascilitate the identification of the source of the problem, the server will write an entry into the errorlog with the following format:
TDSSNIClient initialization failed with error <x>, status code <y>
Where <x> is the error code returned by the underlying communication or security subsystem
<y> is an internal SQL Server protocol error state
The underlying error code, <x>, is typically an error code returned by the Windows network layer or by an SSPI call. For Windows network error codes, the "net helpmsg" command may be able to assist in interpreting the code. SSPI error codes are not as easy to decipher and require searching in the Microsoft knowledge base or looking through the WinError.h file if the platform SDK is installed. However, in many cases, the root of the problem may be determined just from inspecting the error state (more details below).
An example of an error that may be logged is:
TDSSNIClient initialization failed with error 0x80092004, status code 0x38.
The 0x80092004 is an SSPI error code that translates to CRYPT_E_NOT_FOUND and 0x38 is the SQL Server protocol error state that indicates that SSL support could not be started. This error was generated because the SSL layer was unable to load the specified SSL certificate.
The general categories of the SQL Server protocol error states are summarized in the following table:
ERROR STATES
PROTOCOL AREA
3 (0x03), 64-79 (0x40-0x4F)
Shared Memory
6-30 (0x09-0x1E)
TCP/IP
31-35 (0x1F-0x23)
DAC
53 (0x35), 80-95 (0x50-0x5F)
Named Pipes
54 (0x36), 96-111 (0x60-0x6F)
VIA
112-127 (0x70-0x7F)
HTTP
56 (0x38), 128-143 (0x80-0x8F)
SSL
144-159 (0x90-0x9F)
General
The next table describes some commonly encountered error states:
ERROR STATE
DESCRIPTION
0x03
Error starting shared memory support
0x04
All protocols disabled
0x0A
Unable to initialize the TCP/IP listener
0x1C
Server configured to listen on a specific IP address in a cluster environment
0x1E
Duplicate IP address detected in network
0x35
Error starting named pipe support
0x36
Error starting VIA support
0x38
Error obtaining or using the Certificate for SSL
0x3A
Unable to initialize the communication listeners
0x40
Unable to initialize the Shared Memory listener
0x50
Unable to initialize the Named Pipe listener
0x60
Unable to initialize the VIA listener
0x70
Unable to initialize the HTTP listener
0x80
Unable to initialize SSL support
Other error states are generally indicative of a system error and may require assistance from CSS.
Il-Sung LeeProgram Manager, SQL Server Protocols
Disclaimer: This posting is provided "AS IS" with no warranties, and confers no rights
I really believe that if one could explain the
above error code terminology, in simple to understand laymans english, it could be a real winner. I get quite a few error code pop-ups on my PC. So if I were able to make some sense out of them, it may be something I could be
deal with myself.
Then again..If what you have explained, on the above error state boxes, could be for PC techs
and administrators only. If that is the case... I'll have to apologize for wasting your
time.
Cheers Carl
Hi Carl,
The above information is primarily targetted for the DB and OS administrators.
Il-Sung.
First check if the firewall or antivirus blocks port number ( default ) 1433 under which SQL Server 2005 runs
go to command prompt
type command:
telnet <Ip address> 1433
It will connect and a blank screen is visible then you can close the window..
Then Under SQL Server 2005 configuration manager
1) The Protocol name VIA must me disabled
2) Click on TCP/IP protocol name
set the IP address as follows
IP1
Active : Yes
Enabled: No
IP address: <Ip address of your machine>
TCP Dynamic ports:0
TCP Port: 0
IP2
Active: Yes
Enabled : No
IP address: 127.0.0.1
IN All:
TCP Dynamic ports:1360
After a DTS run , the SQL Server services from remote is disabled with this message:
[Microsoft][ODBC SQL Server Driver][DBNETLIB] SSL Security Error
I'm getting the following in my log. No one seems to have an answer to this. It's SQL 2005 express on a vista machine
Starting up database 'model'.
2008-10-01 14:14:55.51 Server Error: 17182, Severity: 16, State: 1.
2008-10-01 14:14:55.51 Server TDSSNIClient initialization failed with error 0x2, status code 0x80.
2008-10-01 14:14:55.51 Server TDSSNIClient initialization failed with error 0x2, status code 0x1.
2008-10-01 14:14:55.51 Server Error: 17826, Severity: 18, State: 3.
2008-10-01 14:14:55.51 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.
PingBack from http://www.hilpers.fr/374934-hs-sql-serveur-2005-a
PingBack from http://patiochairsite.info/story.php?id=30038
Hi!
Could someone help me understand what following logs mean?
2009-11-18 00:18:50.70 spid7s Starting up database 'model'.
2009-11-18 00:18:50.70 Server Error: 17182, Severity: 16, State: 1.
2009-11-18 00:18:50.70 Server TDSSNIClient initialization failed with error 0x2, status code 0x80.
2009-11-18 00:18:50.70 spid4s Server name is 'TRAINING\SQLEXPRESS'. This is an informational message only. No user action is required.
2009-11-18 00:18:50.70 Server TDSSNIClient initialization failed with error 0x2, status code 0x1.
2009-11-18 00:18:50.70 spid4s Starting up database 'msdb'.
2009-11-18 00:18:50.70 Server Error: 17826, Severity: 18, State: 3.
2009-11-18 00:18:50.70 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.
2009-11-18 00:18:50.70 Server Error: 17120, Severity: 16, State: 1.
2009-11-18 00:18:50.70 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.
In table above I could not see what 0x2 error code could mean...
following advise - net helpmsg 2 shows cannot find the file specified - but which file or folder? Our suspicion is related to customer who altered default right access for 'network service' account.
For questions like this, please post it to the MSDN SQL Server Data Access Forum, which is much more suited to answering questions than are the MSDN blogs:
http://social.msdn.microsoft.com/Forums/en-US/sqldataaccess/
As you mentioned, error 0x2 is File Not Found. The state 0x80 points to an SSL initialization failure.
Given your mention of access problems, can you confirm that the SQL Server service account has access to the registry keys governing network protocols (including SSL)? For SQL Server 2005 or higher versions, those would be at (replacing !INSTANCEID! with the appropriate value for your instance):
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\!INSTANCEID!\MSSQLServer\SuperSocketNetLib
I think that a permissions problem would give you error 0x5, Access Denied, though, not 0x2, File Not Found. I believe you could hit this error/state if some of the registry entries at that same location were accidentally deleted. Running "Repair" on the SQL Server instance from Add/Remove Programs should resolve that problem, if any are missing.
The user that is running setup is not using Administrator account, but account in use belong to Administrators group. When it comes to SQL Service account we have been trying both installing with default accounts (NT Authority\Network Service) and to get rid of potential lack of privileges for this account we have been using NT Authority\Local System account. I guess that it is hard to imagine that Local System account has limited access to registry (if that is a problem with access to registry) or to a resource on disk (if we can access registry which tells about where to look for some dll file and than access to dll is denided).
If that would help I can provide full logs from few installation attempts. Unfortunately since this situation does happen on board of the vessel (no internet means no remote access) grabbing some files or asking unexperienced user to do perform some action is the only thing we can do. Recently we asked to export full registry from the system so soon I will know more about the case.
And of course BIG THANKS for helping me!