Freigeben über


VSS: SQL Server does not exist or access denied

I recently worked on three customer issues. In all those cases, customers were not able to backup databases using Microsoft Volume Shadow Copy Service (VSS). MSDEWriter does not show up with “vssadmin list writers”. And VSS logs the following error message in event log:

Sqllib error: OLEDB Error encountered calling IDBInitialize::Initialize. hr = 0x80004005. SQLSTATE: 08001, Native Error: 17
Error state: 1, Severity: 16
Source: Microsoft OLE DB Provider for SQL Server
Error message: [DBNETLIB]SQL Server does not exist or access denied.

MSDEWriter uses MDAC SQLOLEDB to make connections to all SQL instances installed on a machine. VSS finds SQL server instances and the instance names by enumrating running SQL server services on the box. It uses the default protocol to connect the servers. In order for MSDEWriter to work correctly, it must be able to connect all SQL server instances of interests. That is, if you have 5 instances and fail to connect to only one of the instances, MSDEWriter will not work. MSDEWriter only works with local instances. We can ignore any possible firewall issue as this is local connection.

In the first case, client shared memory protocol is disabled by the customre unexpectedly. One of the SQL instances installed on the customer machine is WMSDE. As we know, WMSDE can only listen on shared memory protocol. Clients can only connect to a WMSDE instance using shared memory, which is disabled in the customer's box. Enabling the shared memory protocol using SQL Server Client Network Utility fixes this problem.

The second case was due to an outdated alias. The customer had an alias defined previously but forgot to remove it when configuration changes. This alias forces connections to one of the instances to use TCP protocol. However, at some point, the customer disabled TCP protocol for the SQL server instance. This is also an example which tells us that users should use alias with caution, although alias can provide convenience and could be a useful workaround when user faces some specific problems.

The third case is a surprise to us. We eventually found out that our sqloledb.dll is not loaded. A third party OLEDB provider took over the role of Microsoft SQLOLEDB provider. Like SQLOLEDB provider, the third party provider also calls DBNETLIB APIs. However, this provider does not behave the same way as Microsoft SQLOLEDB and passes different connection string to DBNETLIB. This breaks our product integrity and causes the problem. The problem is fixed by replacing the value of the following keys:

 

HKEY_LOCAL_MACHINESOFTWAREClassesCLSID{0C7FF16C-38E3-11d0-97AB-00C04FC2AD98}InprocServer32Default
to
C:Program FilesCommon FilesSystemOle DBsqloledb.dll.

So, if you recently installed any third party database product, you may also want to check this registry when you have similar connectivity issues. We don’t expect any third party product changes our registry value.

Xinwei Hong, SQL Server Protocols
Disclaimer: This posting is provided "AS IS" with no warranties, and confers no rights

Comments

  • Anonymous
    February 19, 2006
    I found you explenation very interesting although have some further question regarding this particular error message, I ran myself into issue where .net application on IIS 6 is talking to SQL2k by mean of connection string in web.config file user can authenticate, navigate read/write run reports from within application, but one feature does not work, when user request report export which should create report in word doc format in temp folder on iis connection is denied, user get exactly same error "sql does not exist or access denied" it's not code issue because this work on many sites besides one, it's not iis secirity issue, do you have any sugestion what to look for?

    TIA

  • Anonymous
    February 20, 2006
    My blog was talking about local connectivity issue for MDAC/SQL Server.
    The error, "sql does not exist or access denied", is very generic and our whole blog is trying to solve this or related problems.

    You can learn more by reading our blogs, especially this one:
    http://blogs.msdn.com/sql_protocols/archive/2005/12/22/506607.aspx

    Generally, if your code works well on machines but one specific machine, it's protocol/network configuration issue. You may want to check the follows:
    1) is the protocol you use enabled on the sql server?
    2) enable/disable firewall to see the difference if this is a remote connectivity issue.
    3) If sql server 2005 is also installed, you will want to check whether sql browser is running or not, especially for named sql instance.

    We'd like to look it in further if you can provide more info I have mentioned, as well as your connection string.

    Thanks,
    Xinwei

  • Anonymous
    February 24, 2006
    The comment has been removed

  • Anonymous
    February 25, 2006
    i am having exaltly the same problem for over two months now. does anybody have an answer that works

  • Anonymous
    February 26, 2006
    The comment has been removed

  • Anonymous
    March 09, 2006
    i am trying to connect to the database server

    and getting error SQL State 08001
    SLQ Server not found or access denied

  • Anonymous
    March 11, 2006
    Congratulations for your documentation. Help too much. Thank you!

  • Anonymous
    May 02, 2006
    The sporadic error reported by Mike (when using DTS package) seems to be universal. I too am getting it quite frequently!
    I believe the root cause is the error "The number of failing rows exceeds the maximum specified". Due to this error, the connection is being lost. Now why the above error? Don't ask me becoz i don't know!!

  • Anonymous
    May 03, 2006
    If you are using DTS and getting the "The number of failing rows exceeds the maximum specified" error please repost to the microsoft.public.sqlserver.dts newsgroup, this error is a DTS specific error message.  Most likely some fatal import or export error is occuring and this is causing the connection to be dropped, which in turn triggers the other SQL Server driver errors.

    Also look at this KB article that talks about error handling in DTS ->

    Error Handling in DTS:
    http://support.microsoft.com/support/kb/articles/Q240/2/21.ASP

  • Anonymous
    May 14, 2006
    "re: VSS: SQL Server does not exist or access denied"

    You guys don't make it simple for the novice!! Could you make a step by step explanation.

  • Anonymous
    May 15, 2006
    Sorry, but this blog does not intend to solve all VSS issues. It's just my experience which may be helpful for you when you troubleshoot your vss connectivity issues. If you want to see introduction for VSS, please check here:
    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vss/base/troubleshooting_vss_applications.asp

    Thanks,

  • Anonymous
    June 22, 2006
    i am getting the error

    [DBNETLIB][ConnectionOpen (Connect()).]SQL Server does not exist or acess denied

    when i am running my application after i installed MS sql server 2000 on the administrator machine with admin login..

    Please help..



  • Anonymous
    June 23, 2006
    ConnectionOpen(Connect) means that the client cannot open a socket to the SQL Server.  If this is a default instance of SQL Server running on port 1433, then most likely the root cause is port 1433 is blocked by your firewall.  The easiest way to unblock SQL Server from firewall is to go to the Windows Firewall utility in Control Panel and go to the Exceptions tab and click the "Add Program..." button and add sqlservr.exe.

    If you are connecting to a non-default instance, then it could be that you also need to add the SQL Browser service to the Windows Firewall exception list as well (sqlbrowser.exe).

    To verify if it is firewall issue, determine the port that SQL is listening on and from the remote machine try to telnet to this port:

      telnet mymachine 1433

    If this fails, then it is firewall issue.

  • Anonymous
    July 11, 2006
    The comment has been removed

  • Anonymous
    October 19, 2006
    Guys, Login remotely on your server and Change sql registration to (local) instead of server name or IP. Now you can do anything DTS cheers !!

  • Anonymous
    December 15, 2006
    I faced this kind of connection string problem. but when i disabled the windows xp firewall it connected. but i would like to know what port to enable if i'm using ISA

  • Anonymous
    December 18, 2006
    Great advice! I've been facing this issue for a month and couldn't backup the primary domain controller. After I've read your article, I found there is hidden MSDE installed. Enabling shared memory protocol for this instance made VSS to work. Thanks.

  • Anonymous
    February 15, 2007
    I have the same problem.I have server with server 2000 OS and SQL Server 2000 and want to access that with remote computer with VB Application. But i have to login server with Id and password. Then I can connect application with SQL otherwise get the same error,Plz Help me if anyone have the solution.

  • Anonymous
    February 15, 2007
    There are many reasons for "SQL Server does not exist or access denied".  First identify which SQL driver you are using, then review the following blogs: SNAC http://blogs.msdn.com/sql_protocols/archive/2005/10/22/483684.aspx MDAC http://blogs.msdn.com/sql_protocols/archive/2005/10/29/486861.aspx SQLClient http://blogs.msdn.com/sql_protocols/archive/2005/12/22/506607.aspx

  • Anonymous
    April 30, 2007
    thank you so much for publishing this information - the old system administrator had left an old alias - once i'd rectified the situation VSS and NTbackup worked again! Thanks

  • Anonymous
    August 09, 2007
    PingBack from http://www.r10.net/database/72577-mssql-serverda-problem-yasiyorum.html#post784317

  • Anonymous
    September 06, 2007
    The comment has been removed

  • Anonymous
    April 21, 2008
    [MICROSOFT][ODBC SQL SERVER DRIVER][TCP/IP SOCKET]CONNECTIONOPEN (CONNECT()).CONNECTION FAILED I'm facing this problem when I configure ODBC in Windows Vista for SQL Server from Windows Sever 2003, where the SQL Server 2000 is installed. Please resolve this problem. Thanks ViveK vivek@bsquareinternational.com vivek_l2k@yahoo.com

  • Anonymous
    December 13, 2008
    The comment has been removed

  • Anonymous
    December 14, 2008
    Please any body help.. I have installed SQL SERVER developer edition on my local PC.Then i try to connect it through VB.. But I get this error.. Below is my connection string.. STRDSN = "Provider=SQLOLEDB.1;Persist Security Info=True;User ID=sa ;Pwd=abc;Initial Catalog=CRS;Data Source=JPC-D-095-D;Network Library=DBMSSOCN". Thanks in advance

  • Anonymous
    December 15, 2008
    By default, TCP protocol is not enabled when you install SQL Server Developer edition. Can you make sure TCP is turned on since your connection string is trying to use TCP. Thanks. Xinwei

  • Anonymous
    December 15, 2008
    Madrox, Installing SQL Server 2005 should not have affected your old connection to SQL 2000. Can you follow this link to troubleshot it, http://social.msdn.microsoft.com/Forums/en-US/sqldataaccess/thread/e03993c0-a5f5-40c1-8124-c99b7866b933 and if you still see problem, please post an question in our forum. http://social.msdn.microsoft.com/forums/en-US/sqldataaccess/threads/ More people could help there. Thanks. Xinwei

  • Anonymous
    December 15, 2008
    Hi All,  I have installed SQL Server 2005.But I m unable to start it.I get (Microsoft SQL Server , Error: 10061). I am new to SQL Server..please tell the datail solution.. Expecting immediate Help

  • Anonymous
    December 15, 2008
    Xinwei,  Can you please tell me..How should i check TCP is on? I am novice in Networking.

  • Anonymous
    December 16, 2008
    Jhanvi. Please check this link to enable TCP. http://msdn.microsoft.com/en-us/library/bb909712.aspx error 10061 means the server is not listening on specific TCP port. Thanks. Xinwei

  • Anonymous
    December 16, 2008
    The comment has been removed

  • Anonymous
    December 16, 2008
    Xinwei,  Thanks so much.. Even my problem is solved.. I appreciate your work. Regards Sohail Ahmed

  • Anonymous
    December 27, 2008
    The comment has been removed

  • Anonymous
    December 29, 2008
    Jhanvi, The connection attempt succeed now, the remaining question is out of the scope of this blog. Can you post question under one of the forums under: http://social.msdn.microsoft.com/Forums/en-US/category/sqlserver/ Thanks. Xinwei

  • Anonymous
    February 27, 2009
    贴一篇翻译的FAQ(我要是能写出这种水平就好了。。。),对于最常见的SQL连接问题,该步骤几乎应该都能应付。 FAQ:检查SQL连接错误问题的步骤 Q:我遇到过很多SQL连接错误,是否有一个解决连...

  • Anonymous
    April 06, 2009
    Hi All I had same problem while registering Server in SQL Server Enterprise Manager in my client machine and also adding new ODBC DSN for my SQL Server 2000 but it got resolved by adding "Named pipes" in Client Network Utility and adding port 1433 in the Firewall exceptions. Regards Devendra Shinde

  • Anonymous
    May 20, 2009
    select Loacl and remote connection in surface area configuration manager Enable tcp/ip

  • Anonymous
    May 26, 2009
    I've reviewed all the suggestions in thisthread, yet cannot get NTBACKUP to function.  It fails with Event Source: VSS ID: 6013 Computer: SERVER This is the error: Sqllib error: OLEDB Error encountered calling IDBInitialize::Initialize. hr = 0x80004005. SQLSTATE: 08001, Native Error: 17 Error state: 1, Severity: 16 Source: Microsoft OLE DB Provider for SQL Server Error message: [DBNETLIB][ConnectionOpen (Connect()).]SQL Server does not exist or access denied. and this is the Data: 0000: 2d 20 43 6f 64 65 3a 20   - Code: 0008: 53 51 4c 43 4f 4e 4e 43   SQLCONNC 0010: 30 30 30 30 30 34 39 31   00000491 0018: 2d 20 43 61 6c 6c 3a 20   - Call: 0020: 53 51 4c 43 4f 4e 4e 43   SQLCONNC 0028: 30 30 30 30 30 33 39 37   00000397 0030: 2d 20 50 49 44 3a 20 20   - PID:   0038: 30 30 30 30 35 33 37 32   00005372 0040: 2d 20 54 49 44 3a 20 20   - TID:   0048: 30 30 30 30 35 34 38 34   00005484 0050: 2d 20 43 4d 44 3a 20 20   - CMD:   0058: 43 3a 5c 57 49 4e 44 4f   C:WINDO 0060: 57 53 5c 53 79 73 74 65   WSSyste 0068: 6d 33 32 5c 76 73 73 76   m32vssv 0070: 63 2e 65 78 65 20 20 20   c.exe   0078: 2d 20 55 73 65 72 3a 20   - User: 0080: 4e 54 20 41 55 54 48 4f   NT AUTHO 0088: 52 49 54 59 5c 53 59 53   RITYSYS 0090: 54 45 4d 20 20 20 20 20   TEM     0098: 2d 20 53 69 64 3a 20 20   - Sid:   00a0: 53 2d 31 2d 35 2d 31 38   S-1-5-18 Any suggestions?

  • Anonymous
    June 01, 2009
    Great advice! I've been facing this issue for a month and couldn't backup the primary domain controller. After I've read your article, I found there is hidden MSDE installed. Enabling shared memory protocol for this instance made VSS to work. Thanks.

  • Anonymous
    June 01, 2009
    PingBack from http://paidsurveyshub.info/story.php?id=61974

  • Anonymous
    June 04, 2009
    Thanks so much.. Even my problem is solved..

  • Anonymous
    June 17, 2009
    I have a program written by VB 6.0 and use MS SQL 2000 databasse.I connected the program with SQL by the code: Dim Cn As New ADODB.Connection Cn.Open "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;User ID=sa;Initial Catalog=Database_name;Data Source=Server_name". In the first run,everything is okay.But then,there's an error message like: "Runtime error: -2147467259(80004005): [DBNETLIB][ConnectionOpen (Connect()).]SQL Server does not exist or access denied." I try to connect again,check my code,reset SQL server,check access(both SQL authentication and Windows Authentication),etc.But .... I do not know what the problem here?Who can help me? Thanks!

  • Anonymous
    August 30, 2009
    Great advice! I've been facing this issue for a month and couldn't backup the primary domain controller. After I've read your article, I found there is hidden MSDE installed. Enabling shared memory protocol for this instance made VSS to work http://www.paylasimalemi.net

  • Anonymous
    September 01, 2009
    I do not know what the problem here?Who can help me? Thanks!

  • Anonymous
    January 06, 2010
    very good article.. thank u sharing..

  • Anonymous
    January 08, 2010
    Same "Rob CJ" problem. After first VB6 app run I get the error. only in vb6 ide. Compiled exe alwais works. PLS HLP!

  • Anonymous
    January 10, 2010
    very good.Thanks for information

  • Anonymous
    January 10, 2010
    graweb <a href="http://www.grawebtasarim.com/">Graweb, Grafik ve Web Tasarım</a> Graweb, dijital ve basılı medyada tasarım çözümleri.

  • Anonymous
    January 10, 2010
    hi thanxs

  • Anonymous
    February 07, 2010
    Dears, All the comments and answers helped me a lot , Thanks a lot Saneem Hassan

  • Anonymous
    March 23, 2010
    I had this problem.  I fixed it by using a more recent SQL driver.

  • Anonymous
    May 25, 2010
    The mightsoft of Chinese.

  • Anonymous
    November 07, 2010
    Guys, I do get these errors intermittently. I have sql server named instances in a single cluster hosted on active/active nodes. I have ssis packages which retrieves data from one sqlserver to another sql server. Suddenly one night the ETL would start failing stating [dbnetlib].Sql Server Does not exists or access denied. And when I check the error log of the databases I can see a login failure with state 8 which is a password mismtach. Though crendentials or password never changed i keep getting these errors. Simple workaround is rerun the ETL's without changing anything and will run perfectly without any issues. Can you shed some light on this. I already logged this in MSDN forums but of no luck.

  • Anonymous
    August 02, 2011
    Hi,in a office network, i have a virtual machine  win 2003, and install sql server 2005 on it, but i can not access to this sql from other client (ip or name not differ), and i receive message as "sql server dose not exist or access denied"   please help me, thanks.

  • Anonymous
    January 31, 2012
    I fixed it by using a more recent SQL driver too. For anyone who needs help... on http://www.avideolar.com check it out.

  • Anonymous
    October 13, 2013
    PingBack from www.kachaftalikhamileyim.com

  • Anonymous
    October 30, 2013
    thank you so much

  • Anonymous
    November 02, 2013
    merhaba sizce yeterlimidir ? http://www.sincantasarim.com sincan web tasarım sitesi hata yahut web sitesi için tavsiyelerinizi bekliyorum teşekkürler

  • Anonymous
    November 07, 2013
    <a href="http://www.ureticy.com"> thanks very good , wonderfull </a>

  • Anonymous
    November 11, 2013
    Thanks for the solution www.v-ktunnel.tr.gg

  • Anonymous
    November 25, 2013
    By default, TCP protocol is not enabled when you install SQL Server Developer edition. Can you make sure TCP is turned on since your connection string is trying to use TCP. Thanks. Xinwei <a href="http://www.gorsel.org">Gorsel</a> buyrun davet edelim.

  • Anonymous
    November 25, 2013
    http://www.gorsel.org Buyrun buradanda takip edebilirsiniz.

  • Anonymous
    November 28, 2013
    http://www.webinyo.com/ istediğiniz bilgilere sahip olabilirsiniz.

  • Anonymous
    December 08, 2013
    i am getting the error http://www.kvc-tunnel.tr.gg

  • Anonymous
    February 10, 2014
    evdeneveildenilenakliyat.com

  • Anonymous
    February 10, 2014
    evdeneveildenilenakliyat.com

  • Anonymous
    February 14, 2014
    I fixed it by using a more recent SQL driver too. For anyone who needs help... Webmaste tool, seo optimization, wordpress tema, inceleme http://www.weblozi.com

  • Anonymous
    February 18, 2014
    http://propaylas.com/ genel blog paylaşımı yapan bir sitedir.

  • Anonymous
    March 21, 2014
    www.arrowizle.com Arrow Dizisi Resmi Sitesi , Arrow İzle Buyrun

  • Anonymous
    April 13, 2014
    Merhaba arkadaşlar sitelerinizi yoruma eklediğinizi görüyorum sitenize biliçli bir şekilde seo çalışması istiyorsanız bize ulaşın www.ankaraseohizmeti.com

  • Anonymous
    March 04, 2015
    very good article.. http://sinanyazici.com

  • Anonymous
    May 31, 2015
    I found good information from your site. Thank you so much. http://www.gestaltestetik.com

  • Anonymous
    September 06, 2015
    Güncel bilgilere ve haberlere buradan ulaşabilirsiniz. http://nettrend.net/

  • Anonymous
    September 06, 2015
    ı found many usefull information to use on http://www.blogokur.com/