Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to solve Error 26: Error Locating Server/Instance Specified in production environment?

I have a strange error in production environment BUT not in develop environment. In my develop environment, with Visual studio 2010, i can connect without problem to Sql Server 2012. When i copy my Windows Form app to others PC in the same network, i get an "Error 26:Error Locating Server/Instance Specified".

The same application worked good with an old database instance with Sql Server 2008. I don't know what to check and where to start!

EDIT: Another strange behavior is that it works good if i use a code like this

conn.Open()

dr = cmd.ExecuteReader()

But stop to work if i open a form with a datagridview, a dataset and a BindingSource !

like image 513
stighy Avatar asked Nov 12 '12 08:11

stighy


People also ask

What does host Error 26 mean?

The server was. not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow. remote connections. ( provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified)


1 Answers

this blog post has detailed information about error 26.

From the post:

In a word, the reason that we get this error message is the client stack could not receive SSRP response UDP packet from SQL Browser. It's easy to isolate the issue. Here are the steps:

  1. Make sure your server name is correct, e.g., no typo on the name.
  2. Make sure your instance name is correct and there is actually such an instance on your target machine. [Update: Some application converts \ to . If you are not sure about your application, please try both Server\Instance and Server\\Instance in your connection string]
  3. Make sure the server machine is reachable, e.g, DNS can be resolve correctly, you are able to ping the server (not always true).
  4. Make sure SQL Browser service is running on the server.
  5. If firewall is enabled on the server, you need to put sqlbrowser.exe and/or UDP port 1434 into exception.

Once you are done the steps, you should not see this error message anymore. You may still fail to connect your SQL server, but error message should be different and you have a different issue now. [Update: If it still fails, you may replace server\instance with tcp:server\instance and/or np:server\instance and see if it succeeds with either TCP or NP protocol. That way, you can isolate the issue a little bit. ]

like image 81
Charles Lambert Avatar answered Dec 18 '22 07:12

Charles Lambert