Назад | Перейти на главную страницу

Ошибка подключения к MS SQL с одного сервера, но не с другого.

У нас есть сервер MS SQL и два сервера веб-сайтов. Я в процессе переноса всех сайтов с одного из серверов веб-сайтов на новый.

Мои сайты asp.net не могут подключаться к внешнему серверу ms sql после того, как я переместил их на новый сервер. Я могу пинговать сервер MS SQL и получить к нему доступ по telnet, используя порт 1433 с сервера веб-сайта.

Он отлично работает со старым сервером веб-сайта, так что я предполагаю, что есть какое-то отношение к новому серверу. Я пытался отключить брандмауэр, но это тоже не помогло.

Помощь будет очень признательна!

Я получаю следующие ошибки на двух разных сайтах (один работает .net 2, а другой .net 4):

Произошла ошибка, связанная с сетью или конкретным экземпляром, при установке соединения с SQL Server. Сервер не найден или не был доступен. Убедитесь, что имя экземпляра правильное и что SQL Server настроен на разрешение удаленных подключений. (поставщик: поставщик именованных каналов, ошибка: 40 - не удалось открыть соединение с SQL Server)

Сведения об исключении: System.Data.SqlClient.SqlException: ошибка, связанная с сетью или конкретным экземпляром, произошла при установлении соединения с SQL Server. Сервер не найден или не был доступен. Убедитесь, что имя экземпляра правильное и что SQL Server настроен на разрешение удаленных подключений. (поставщик: поставщик именованных каналов, ошибка: 40 - не удалось открыть соединение с SQL Server)

[SqlException (0x80131904): при установке соединения с SQL Server произошла ошибка, связанная с сетью или конкретным экземпляром. Сервер не найден или не был доступен. Убедитесь, что имя экземпляра правильное и что SQL Server настроен на разрешение удаленных подключений. (поставщик: поставщик именованных каналов, ошибка: 40 - не удалось открыть соединение с SQL Server)]
DataAccessManager.ExecuteNonQuery (команда DbCommand) в C: \ Websites * \ App_Code \ DataAccessManager.vb: 31
InsiteError.Save () в C: \ Websites * \ App_Code \ System \ InsiteError.vb: 89

И

Сетевой путь не найден

Сведения об исключении: System.ComponentModel.Win32Exception: сетевой путь не найден

[Win32Exception (0x80004005): попытка подключения не удалась, потому что подключенная сторона не ответила должным образом по прошествии определенного периода времени, или установление соединения не удалось из-за того, что подключенный хост не ответил]

[SqlException (0x80131904): при установке соединения с SQL Server произошла ошибка, связанная с сетью или конкретным экземпляром. Сервер не найден или не был доступен. Убедитесь, что имя экземпляра правильное и что SQL Server настроен на разрешение удаленных подключений. (поставщик: поставщик TCP, ошибка: 0 - попытка подключения не удалась, поскольку подключенная сторона не ответила должным образом по прошествии определенного периода времени, или установление соединения не удалось из-за того, что подключенный хост не ответил.)]
DataAccessManager.ExecuteSelectCommand (команда DbCommand) в C: \ Websites * \ App_Code \ DataAccessManager.vb: 18
InsitePage..ctor (String file_name, PageResult & Result) в C: \ Websites * \ App_Code \ InsitePage \ InsitePage.vb: 68
_Default.Page_PreInit (отправитель объекта, EventArgs e) в C: \ Websites * \ default.aspx.vb: 298
BasePage.OnPreInit (EventArgs e) в C: \ Websites * \ App_Code \ System \ BasePages \ BasePage.vb: 249 System.Web.UI.Page.PerformPreInit () +49
System.Web.UI.Page.ProcessRequestMain (логическое includeStagesBeforeAsyncPoint, логическое includeStagesAfterAsyncPoint) +1844

- Обновление - при попытке подключиться к ms sql management studio с нового сервера появляется следующая ошибка:

НАЗВАНИЕ: Подключиться к серверу

Не удается подключиться к *.

------------------------------ ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ:

Произошла ошибка, связанная с сетью или конкретным экземпляром, при установке соединения с SQL Server. Сервер не найден или не был доступен. Убедитесь, что имя экземпляра правильное и что SQL Server настроен на разрешение удаленных подключений. (поставщик: поставщик именованных каналов, ошибка: 40 - не удалось открыть соединение с SQL Server) (Microsoft SQL Server, ошибка: 53)

Для получения справки щелкните: http://go.microsoft.com/fwlink?ProdName=Microsoft%20SQL%20Server&EvtSrc=MSSQLServer&EvtID=53&LinkId=20476


Сетевой путь не найден

Наша хостинговая компания ограничила подключение к серверу SQL только с IP-адресов из локальной сети. Старый сервер веб-сайта находился в этой локальной сети, но новый веб-сайт находился в другой сети. Наша хостинговая компания решила проблему после нескольких обходов.

Что меня сбило с толку, так это то, что когда я удаленно входил в систему на новом веб-сервере, я мог пинговать и получать доступ к серверу через telnet, используя порт, который использует MS SQL. Я установил Management Studio на веб-сервер, и мне не удалось подключиться к серверу MS SQL с его помощью. Каким-то образом ограничению удавалось отличаться от типа соединения и ограничивать его только тем, чтобы не разрешать соединения SQL.

Это был довольно конкретный случай, но надеюсь, что люди могут извлечь из него то, как отлаживать и определять, в чем заключается проблема.