У нас есть сервер 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.
Это был довольно конкретный случай, но надеюсь, что люди могут извлечь из него то, как отлаживать и определять, в чем заключается проблема.