У меня проблема с подключением к моему SQL Server Express пример. Я могу подключиться к sa
учетной записи с локального компьютера, но как только я пытаюсь подключиться с отдельной рабочей станции, соединение не выполняется со следующей ошибкой.
НАЗВАНИЕ: Подключиться к серверу
Не удается подключиться к SERVER1 \ SQLEXPRESS.
ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ:
Произошла ошибка, связанная с сетью или конкретным экземпляром, при установке соединения с SQL Server. Сервер не найден или не был доступен. Убедитесь, что имя экземпляра правильное и что SQL Server настроен на разрешение удаленных подключений. (поставщик: поставщик именованных каналов, ошибка: 40 - не удалось открыть соединение с SQL Server) (Microsoft SQL Server, ошибка: 1311)
Для получения справки щелкните: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&EvtSrc=MSSQLServer&EvtID=1311&LinkId=20476
КНОПКИ:
хорошо
Раньше мне удавалось подключиться без проблем, но в сервер были внесены некоторые изменения (он был превращен в контроллер домена), и теперь он отказывается работать так, как я предполагал.
Я попытался перезапустить экземпляр браузера SQL Server и уже проверил настройки брандмауэра. Однако не исключаю, что что-то упустил.
Я в тупике, и база данных должна быть запущена 20 минут назад.
Как исправить эту проблему?
Вам необходимо включить прослушиватель порта 1433 в панели управления диспетчера конфигурации SQL Server.
Включите пользователя "sa". По умолчанию после установки он отключен.
Установите пароль для пользователя "sa".
Включите режим аутентификации SQL + NT.
Убедитесь, что брандмауэр Windows не блокирует порт 1433.
Попробуйте использовать имя экземпляра по умолчанию вместо SQLEXPRESS.
Убедитесь, что удаленное соединение использует TCP / 1433.
Когда SQL Server был установлен, он, скорее всего, был настроен для работы в качестве сетевой службы или учетной записи локальной службы, которая не будет работать должным образом на контроллере домена. Хотя SQL Server может работать на контроллере домена (не рекомендуется по соображениям безопасности), его следует устанавливать только после того, как он был повышен. Точно так же понижение уровня машины приведет к аналогичным проблемам с предварительно установленным SQL Server. Я предлагаю сделать резервную копию ваших баз данных, затем полностью удалить SQL Server, установить новую копию SQL Server и, наконец, восстановить ваши базы данных. Таким образом, при установке SQL Server на этот раз он обнаружит другую среду пользователя / безопасности и предложит только те параметры безопасности, которые действительно будут работать на контроллере домена.
Вот ссылка на официальные инструкции по установке SQL Server 2008 на контроллере домена.
Я просто хотел помочь кому-то, кто может быть готов выдернуть волосы из-за этой ошибки в верхней части этой страницы и других подобных. Если вы выполнили и выполнили все вышеперечисленные шаги и просмотрели другие веб-сайты, но по-прежнему получаете эту ошибку, и вы проверили, перепроверили и снова и снова проверяли свою установку и настройки, будьте готовы, вот ответ, вероятно 90% из вас:
Тянуть вверх SQL Server Management Studio еще раз (я знаю, я знаю, на этот раз это сработает, я обещаю) в поле Имя сервера: вероятно, написано SQLEXPRESS, и все, но на этот раз введите имя вашего компьютера, а затем обратную косую черту впереди SQLEXPRESS, чтобы он читал что-то вроде JOHNDOEPC \ SQLEXPRESS, затем, когда все остальное заполнено, нажмите Подключить, и вуаля!
Я не знаю, почему Microsoft не сделала это более очевидным для своих конечных пользователей, но они должны были это сделать. Мне потребовалось много времени, чтобы понять это, после того, как я просмотрел более десятка веб-сайтов, предлагающих средства правовой защиты, ни один из которых не помог ...
Ну что ж, наслаждайтесь!
Если ничего из вышеперечисленного не работает для вас, и вы уверены, что у вас есть правильные учетные данные, возможно, служба SQL Server остановлена. Так что вам, возможно, придется запустить его вручную:
Нажмите Пуск -> в поле поиска введите services -> в появившемся окне служб дважды щелкните соответствующий элемент SQL Server, например SQL Server (MSSQLSERVER) -> Установите для типа запуска значение «Автоматический», затем нажмите Применить, -> Нажмите «Пуск», чтобы начать процесс. Тогда с тобой все будет в порядке.
Цзяюнь Хан
Если вы войдете в конфигурацию контактной зоны для служб и подключений, убедитесь, что удаленные подключения разрешены, и что они не вернулись назад, чтобы разрешить только локальные подключения.
Брандмауэр Windows может быть не настроен для разрешения подключений к SQL Server. Обязательно проверьте наличие соответствующих портов (1433 для TCP / IP).
Также компонент "provider: Named> Pipes Provider" указывает, что он пытается использовать именованные каналы для подключения, я считаю, что лучше всего подключаться через TCP / IP с отдельной рабочей станции.
Указывают ли журналы ошибок SQL Server, что он правильно прослушивает порт TCP? Когда вы запускаете netstat -ano, видите ли вы, что порт TCP открыт и находится в состоянии прослушивания? Соответствует ли PID sqlservr.exe?
Поскольку это именованный экземпляр, службе браузера SQL необходимо будет взаимодействовать с сетью. Это означает, что udp / 1434 должен быть открыт на брандмауэре, если он заблокирован. Если вы видите, что экземпляр SQL Server Express прослушивает порт, попробуйте подключиться через имя сервера, порт TCP. Например, если экземпляр прослушивает 2601, попробуйте Server1,2601. Если это сработает, вероятно, служба браузера SQL заблокирована. В этой заметке убедитесь, что порт SQL Server является прослушивание разрешено в брандмауэре. И вы, вероятно, захотите сделать это статическим портом, если он в настоящее время настроен на динамический.