В настоящее время мы переносим серверы (с 2005 по 2008 гг.), И наш хост сделал резервную копию базы данных SQL и перенес ее на новый сервер.
Я перенес файлы сайта и изменил IP-адрес в строке подключения и в файле global.asa.
Технически говоря, у нас есть зеркальное отображение на новом сервере, но когда я пытаюсь запустить страницу, которая соединяется с SQL, я получаю следующую ошибку.
Любая помощь будет оценена.
6 ответов
Сообщение об ошибке в этом случае, скорее всего, правильное. Сначала убедитесь, что сетевой путь от вас к новому серверу работает, и вы можете подключиться с указанным идентификатором пользователя / pwd.
1) Откройте Management Studio и попытайтесь подключиться к экземпляру SQL Server по IP-адресу. (Кстати, вам, вероятно, понадобится использовать идентификатор сервера SQL Server / pwd, если вы еще этого не сделали, поскольку находитесь на хосте в Интернете, и, скорее всего, нет контекста AD для аутентификации Windows.)
2) Если вы действительно можете подключиться к экземпляру и вашей базе данных с помощью Management Studio, то, возможно, вы где-то пропустили строку подключения. Попробуйте сохранить только 1 место для указанной строки подключения, обычно в файле конфигурации. Изучите строку ошибки, сообщенную подробно, чтобы выяснить, какая строка подключения используется, и убедиться, что она отражает новый ip сервера.
Эта же ошибка также возникает, когда IP-адрес клонированного сервера не настроен правильно в конфигурации SQL -> TCP / IP.
С неправильно настроенным IP-адресом в SQL Конфигурация TCP / IP позволяет:
- подключиться с клиентского компьютера, используя имя сервера с использованием подключения ODBC
- подключиться через TELNET с номером порта 1433 с именем сервера
Это происходит, когда сервер клонируется с другого сервера SQL, который переносит конфигурацию SQL IP с основного сервера в качестве остатка.
Но клиентские приложения не могут подключиться, используя строки подключения, хотя используют имя сервера со следующим сообщением:
Для проверки на сервере SQL выполните следующие действия:
- Обратите внимание на IP-адрес самого сервера (вероятно, администраторы обновили IP-адрес машины после клонирования блока), выполнив IPCONFIG.
- Откройте диспетчер конфигурации SQL Server
- Развернуть Конфигурация сети SQL Server
- Выберите протоколы для MSSQLSERVER
- Дважды щелкните TCP / IP справа
- Переключиться на вкладку IP-адреса
- Прокрутите вниз до раздела IPv4, чтобы проверить, совпадает ли он с IP-адресом самого аппарата. Исправьте IP, если это не так. Если это правильно, это не проблема.
Убедитесь, что ваш порт TCP / IP включен или нет
Чтобы проверить это:
– Откройте диспетчер конфигурации SQL Server из программы запуска.
– Раскройте конфигурацию сети SQL Server
– Нажмите на протоколы для XXXX
– Щелкните правой кнопкой мыши на TCP / IP и откройте свойства
– Включить TCP / IP
– На вкладке IP-адрес установите порт 1433 в последней опции (IPAll)
Я также столкнулся с этой проблемой при настройке установки на новый компьютер.
Проблема с подключением, с которой я столкнулся, была вызвана настройкой брандмауэра на сервере, на котором установлен MSSQL. Параметр предоставил доступ к отдельным IP-адресам, которые «работают» в нашей среде, поскольку наши администраторы описывают IP-адреса как «липкие». Когда брандмауэру был предоставлен доступ к IP-адресу моей новой машины, odbc_connect(. ) PHP odbc_connect(. ) я выполнял в локальной настройке WAMP, сразу же завершил работу.
Как и в случае со многими проблемами, возможно, существует более одного способа с ними столкнуться, но я хотел быть как можно более явным о том, как я это пережил.
Это, вероятно, было бы немного яснее, если бы у меня была собственная установка MSSQL management studio на моем ПК, но я этого не сделал.
Из входящих правил на сервере, в котором размещен MSSQL, я обнаружил правило, ссылающееся на экземпляр MSSQL, и определенно нашел IP-адрес моей старой машины на вкладке свойств «Область» как «Удаленный IP-адрес». Надеюсь, я помню это всякий раз, когда получаю свою следующую машину! (IP списанного ПК был удален)
@Darren, если бы вы могли оставить комментарий под принятым ответом, было бы неплохо узнать, какие из предложений @ Tahbaza привели вас к вашему решению.
Настроены ли учетные данные для вашей базы данных для использования пользователей и имен SQL вместо пользователей и имен Windows?
В этом случае вам может понадобиться переназначить пользователей SQL в базе данных на имена входа SQL на сервере. Чтобы проверить, есть ли у вас эта проблема, вы можете использовать EXEC sp_change_users_login ‘Report’ . Опция ‘Auto_Fix’ автоматически исправляет проблемы, найденные системой. Вы также можете запустить ALTER USER $User WITH LOGIN $Login чтобы вручную исправить каждое сопоставление по отдельности.
Проблема вызвана тем, что идентификаторы безопасности, сгенерированные для пользователя SQL в базе данных на старом сервере, не совпадают с идентификаторами безопасности для имен входа SQL в новой базе данных. Хранимая процедура исправляет несоответствие.
Я столкнулся с этой проблемой при подключении из Qt к Microsoft SQL Server 2014, работающему также на моем компьютере .
Я использовал следующую строку подключения QODBC:
Я только перенес 2 проблемы:
определить, что использовать для сервера, это должно быть имя сервера, настроенное для экземпляра сервера SQL, это можно найти, открыв «MicrosoftSql2014 management Studio», а затем, просмотрев свойства, я нашел имя ( DESKTOP-F6T7JPDsql_Instance_Name )
вторая проблема на самом деле заключается в том, что это имя необходимо изменить, добавив еще одну обратную косую черту между именем моего ПК и именем экземпляра, чтобы имя, найденное в Management Studio, было таким: PC_NameSql_Instance . Обратите внимание на "", . это должно быть Pc_Name\Sql_Instance как Pc_Name\Sql_Instance .
Обратите внимание на \ между именем компьютера и именем экземпляра!
В настоящее время мы переносим серверы (с 2005 по 2008 год), а наш хост поддерживает базу данных SQL и переносит ее на новый сервер.
Я перенес файлы сайта и изменил IP-адрес в строке подключения и файле global.asa.
Итак, технически говоря, у нас есть зеркальное изображение на новом сервере, но когда я пытаюсь запустить страницу, которая подключается к SQL, я получаю следующую ошибку.
Любая помощь будет оценена.
5 ответов
3 Решение Tahbaza [2011-01-11 16:14:00]
Сообщение об ошибке в этом случае очень вероятно правильно. Сначала убедитесь, что сетевой путь от вас к новому серверу работает, и вы можете подключиться к указанному идентификатору пользователя /pwd.
1) Откройте Management Studio и попытайтесь подключиться к экземпляру SQL Server по IP-адресу. (Кстати, вам, вероятно, понадобится использовать userid/pwd SQL Server, если вы еще этого не сделали с тех пор, как вы находитесь на интернет-хосте, и, скорее всего, нет контекста AD для Windows auth.)
2) Если вы действительно можете подключиться к экземпляру и вашей базе данных с помощью Management Studio, вы, вероятно, пропустили строку соединения где-нибудь. Попробуйте сохранить только 1 место для указанной строки соединения, как правило, в файле конфигурации. Изучите строку ошибки, подробно описанную, чтобы узнать, какая строка подключения используется, и проверить, что она отражает новый IP-адрес сервера.
Являются ли учетные данные для вашей базы данных настроены на использование пользователей и учетных записей SQL вместо пользователей и пользователей Windows?
Если это так, вам может потребоваться переназначить пользователей SQL в базе данных на логины SQL на сервере. Чтобы проверить, есть ли у вас эта проблема, вы можете использовать EXEC sp_change_users_login ‘Report’ . Опция ‘Auto_Fix’ автоматически исправляет проблемы, обнаруженные системой. Вы также можете запустить ALTER USER $User WITH LOGIN $Login , чтобы вручную вручную корректировать каждое отображение.
Проблема вызвана тем, что SID, сгенерированные для пользователя SQL в базе данных на старом сервере, не соответствуют идентификаторам SID для логинов SQL в новой базе данных. Хранимая процедура корректирует расхождение.
0 veeTrain [2013-09-24 18:16:00]
Я также столкнулся с этой проблемой при настройке установки на новый компьютер.
Проблема подключения, с которой я столкнулась, связана с настройкой брандмауэра на сервере, на котором размещается MSSQL. Этот параметр дал отдельным IP-адресам доступ к нему, который "работает" в нашей среде, так как IP-адреса описываются нашим администратором как "липкие". Когда доступ к брандмауэру был предоставлен моему новому IP-адресу компьютера, оператор PHP odbc_connect(. ) , который я запускал в локальной настройке WAMP, был немедленно завершен.
Как и во многих проблемах, есть, вероятно, более чем один способ столкнуться с ними, но я хотел быть максимально ясным, как я это испытал.
Возможно, было бы немного более ясно, если бы у меня была собственная установка студии управления MSSQL на моем ПК, но я этого не делаю.
Из входящих правил на сервере MSSQL, я нашел правило, ссылающееся на экземпляр MSSQL, и достаточно убедился, что IP-адрес моей старой машины находится под вкладкой свойств "Область" в качестве "Удаленного IP-адреса". Здесь, чтобы надеяться, я помню это всякий раз, когда я получаю свою следующую машину! (Выведенный из эксплуатации ПК-IP удален)
@Darren, если вы можете оставить комментарий в соответствии с полученным вами ответом, было бы неплохо узнать, какие из предложений @Tahbaza привели вас к вашей резолюции.
Эта же ошибка также возникает, когда клонированный IP-адрес сервера неправильно настроен в конфигурации SQL Config → TCP/IP.
С неверно сконфигурированным IP-адресом в конфигурации SQL TCP/IP вы можете:
- подключиться с клиентской машины, используя имя сервера, используя соединение ODBC
- подключиться с помощью TELNET с номером порта 1433 с именем термина
Это происходит, когда сервер клонируется с другого SQL-сервера, который имеет конфигурацию IP-адреса SQL с основного сервера в качестве остатка.
Но клиентские приложения не могут подключиться с использованием строк подключения, используя имя сервера со следующим сообщением:
Для проверки на SQL Server выполните следующие действия:
- Обратите внимание на IP самого сервера (возможно, администраторы обновили IP-адрес компьютера после клонирования окна), выполнив IPCONFIG
- Откройте диспетчер конфигурации SQL Server
- Разверните конфигурацию сети SQL Server
- Выберите протоколы для MSSQLSERVER
- Дважды щелкните TCP/IP справа
- Переключиться на вкладку IP-адреса
- Прокрутите вниз до раздела IPv4, чтобы проверить, совпадает ли он с IP-адресом самого аппарата. Исправьте IP, если это не так. Если это правильно, это не проблема.
У меня возникла эта проблема при подключении с Qt на Microsoft SQL Server 2014, который также работает на моем компьютере.
Я использовал следующую строку подключения QODBC:
У меня только 2 проблемы:
идентифицируя, что использовать для Сервера, это должно быть имя сервера, настроенное на экземпляре SQL-сервера, это можно найти, открыв "MicrosoftSql2014 Management Studio", затем, посмотрев на свойства, я нашел имя ( DESKTOP-F6T7JPDsql_Instance_Name )
Вторая проблема заключается в том, что это имя должно быть изменено путем добавления другой обратной косой черты между именем моего компьютера и именем экземпляра поэтому имя, найденное в студии управления, будет выглядеть следующим образом: PC_NameSql_Instance . Обратите внимание на "". это должно быть указано как Pc_Name\Sql_Instance .
Обратите внимание на \ между именем ПК и именем экземпляра!
Мы в настоящее время миграция серверов (2005 до 2008) и хозяин резервного копирования базы данных SQL и перенес его на новый сервер.
Я передал файлы сайта и изменил IP-адрес в строке подключения и файл global.asa.
Таким образом, с технической точки зрения у нас есть зеркальное изображение на новом сервере, но когда я пытаюсь запустить страницу, которая подключается к SQL я получаю следующее сообщение об ошибке.
Любая помощь будет оценена.
Сообщение об ошибке в этом случае весьма вероятно, правильно. Во-первых, убедитесь, что сетевой путь от вас на новый сервер работ, и вы можете связаться с указанным идента / PWD.
1) Open Management Studio и попытка подключения к экземпляру SQL Server с помощью IP-адреса. (Кстати, вы, вероятно, необходимо использовать идентификатор пользователя SQL Server / PWD, если вы уже не так как вы на интернет-хосте, и не очень вероятно, никакого контекста AD для Windows, авт.)
2) Если вы действительно можете подключиться к экземпляру и база данных с помощью Management Studio, то вы, вероятно, пропустили строку соединения где-то. Старайтесь поддерживать только 1 место для указанной строки соединения, как правило, в конфигурационном файле. Проверьте линию ошибки сообщается подробно выяснить, какой ConnectionString используются и для проверки того, что она отражает новый IP-адрес сервера.
Я испытал этот вопрос, а также при настройке установки на новом компьютере.
Проблема связи я испытал , была связана с настройкой брандмауэра на сервере , на котором размещена MSSQL. Установка дала отдельный IP – адрес доступ к нему , который «работает» в нашей среде , так как IP – адрес описывается нашим администратором как «липкие». После того , как брандмауэр был предоставлен доступ к IP – адрес моего нового аппарата, РНР odbc_connect(. ) заявление я бегала в моей локальной установки WAMP завершена немедленно.
Как и со многими проблемами, есть, вероятно, больше, чем один способ запустить в них, но я хотел бы быть столь же явным, как можно больше о том, как я испытал это.
Это, вероятно, было бы немного более ясным, если у меня был своя установка студии управления MSSQL на моем компьютере, но я этого не делаю.
Из входящих правил на жилье сервера MSSQL, я нашел правило со ссылкой на экземпляр MSSQL и конечно нашел IP-адрес моей старой машины там под свойство вкладки «Область», как «Удаленный IP-адрес». Вот в надежде я помню, это всякий раз, когда я получу свою следующую машину! (Выведенная из эксплуатации IP ПК было удалено)
@Darren, если вы можете оставить комментарий под ответ, который вы приняли, было бы хорошо, чтобы знать, какие из предложений @ Tahbaza привело вас к резолюции.
Эта же ошибка возникает также, когда IP клонированного сервера правильно не настроен в SQL Config -> TCP соединения / IP.
При неправильной конфигурации IP в SQL TCP / IP конфигурации действительно позволяет вам:
- подключения с клиентской машины, используя имя сервера, используя соединение ODBC
- Подключение с использованием TELNET с 1433 номером порта с сервером именем
Это происходит, когда сервер клонированы с другого сервера SQL, который несет SQL IP конфигурации с основного сервера в качестве остатка.
Но клиентские приложения не удается подключиться с помощью строки подключения, хотя, используя имя сервера со следующим сообщением:
Выполните следующие действия, чтобы проверить на SQL Server:
- Обратите внимание на IP-адрес самого сервера (возможно, администраторы обновленного IP машины после клонирования коробки), делая IPCONFIG
- Откройте диспетчер конфигурации SQL Server
- Разверните узел Конфигурация сетевого сервера SQL
- Выберите Протоколы для MSSQLSERVER
- Дважды щелкните TCP / IP на правой
- Переключить на IP-адрес вкладки
- Прокрутите вниз до раздела IPv4, чтобы проверить, если он такой же, как IP-адрес самого аппарата. Закрепить IP, если это не так. Если это правильно, это не проблема.
Являются ли учетные данные для базы данных настроены на использование пользователей SQL и логинов вместо пользователей Windows, и логины?
Если да, то вам , возможно , потребуется переназначить пользователей SQL в базе данных для логинов SQL на сервере. Для сканирования , чтобы увидеть , если у вас есть эта проблема, вы можете использовать EXEC sp_change_users_login ‘Report’ . ‘Auto_Fix’ Опция будет автоматически устранять проблемы , система находит. Кроме того, можно запустить ALTER USER $User WITH LOGIN $Login вручную исправить каждое отображение индивидуально.
Проблема вызвана тем, что SIDs генерируется для пользователя SQL в базе данных на старом сервере не совпадает с SIDs для логинов SQL на новой базе данных. Хранимая процедура корректирует расхождение.
Я испытал эту проблему при подключении с Qt для Microsoft SQL Server 2014 подряда и на моем компьютере .
Я использовал следующую строку соединения QODBC:
Я только перенес 2 вопроса:
определить , что использовать для сервера, это должно быть имя сервера в конфигурации на экземпляре SQL сервера, это можно найти, открыв «MicrosoftSql2014 Management Studio», а затем, посмотрев на свойства я нашел имя ( DESKTOP-F6T7JPDsql_Instance_Name )
второй вопрос на самом деле является то , что это имя должно быть изменено путем добавления другого обратного слеша между моим именем компьютера и именем экземпляра , так что имя находится на студии управления будет как: PC_NameSql_Instance . Обратите внимание на «», . это должно быть кладется как Pc_Name\Sql_Instance .
Обратите внимание , что \ между именем компьютера и именем экземпляра!