Я не могу подключиться к моему локальному SQL Server 2008?
Я только что установил SQL Server 2008 и не могу подключиться к нему с помощью SQL Server Management Studio. Я намерен просто позволить аутентификации моего локального пользователя Windows, но я не совсем уверен, как это сделать.
В диалоге подключения я пишу:
Server type: Database Engine
Server name: (local)
Authentication: Windows Authentication
Мой первый вопрос будет, если это то, к чему я должен подключиться? Когда я пытаюсь подключиться, я получаю это сообщение об ошибке:
TITLE: Connect to Server
------------------------------
Cannot connect to (local).
------------------------------
ADDITIONAL INFORMATION:
A network-related or instance-specific error occurred while establishing a connection
to SQL Server. 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: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)
(Microsoft SQL Server, Error: 2)
For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&EvtSrc=MSSQLServer&EvtID=2&LinkId=20476
------------------------------
BUTTONS:
OK
------------------------------
Я пошел по указанному там URL-адресу, и он просто говорит: "Убедитесь, что сервер SQL работает". Я думаю, что это так, но я не совсем уверен.
Я отключил брандмауэр Windows (это Windows 7 7100 x86). Я также изменил систему входа в систему в Диспетчере конфигурации SQL Server, но кажется, что это не проблема входа в систему, но я даже не смог открыть для нее сокет. На этом же инструменте я включил все протоколы в "Конфигурация сети SQL Server" -> "Протоколы для SQLEXPRESS", но не повезло. У меня заканчиваются идеи. Что еще я могу попробовать?
2 ответа
Хорошо, вы можете открыть консоль служб и прокрутить вниз до S для SQL Server. Теперь вы должны увидеть услуги. Убедитесь, что SQL Server (SQLEXPRESS) запущен, а затем попробуйте.\SQLEXPRESS вместо (локального).
Итак, согласно вашему примеру:
Server type: Database Engine
Server name: .\SQLEXPRESS
Authentication: Windows Authentication
Надеюсь это поможет
Обновление: эти инструкции, потому что я предполагаю, что вы используете Express Edition, а не Dev/Std/Ent версию SQL Server
Попробуйте убедиться, что включены соответствующие протоколы:
- Запустите Диспетчер конфигурации SQL (например: Пуск-> Программы->SQL Server-> Инструменты настройки)
- Разверните конфигурацию собственного клиента SQL
- Нажмите Клиентские протоколы (у вас может быть 32-разрядная и 64-разрядная версия, примените к обеим)
- Убедитесь, что общая память, TCP/IP, именованные каналы включены в указанном порядке.
- Развернуть Конфигурация сети SQL Server
- Убедитесь, что общая память для SQLEXPRESS и / или MSSQLSERVER включена
- Нажмите Службы SQL Server
- Перезапустите все работающие службы
Теперь вы должны иметь возможность войти в экземпляр
Если вы обнаружите, что не можете войти в систему вообще, вам может потребоваться следовать этим инструкциям, чтобы перевести SQL Server в однопользовательский режим. Смотрите здесь для получения полной инструкции от Microsoft.
По умолчанию файл sqlservr.exe находится по адресу C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Binn. Если установлен второй экземпляр SQL Server, вторая копия sqlservr.exe находится в каталоге, таком как
C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\binn.
Вы можете запустить один экземпляр SQL Server, используя sqlservr.exe из другого экземпляра, но SQL Server также запустит версию неправильного экземпляра, включая пакеты обновления, которые могут привести к неожиданным результатам.
Чтобы избежать этого, используйте команду MS-DOS change directory (cd), чтобы перейти в правильный каталог перед запуском sqlservr.exe, как показано в следующем примере.
cd \ Program Files \ Microsoft SQL Server \ MSSQL10_50.1 \ MSSQL \ Binn
Чтобы запустить экземпляр SQL Server по умолчанию в однопользовательском режиме из командной строки
В командной строке введите следующую команду:
sqlservr.exe -m
Однопользовательский режим может быть полезен для выполнения аварийного обслуживания, когда вы не хотите, чтобы другие пользователи подключались к SQL Server, но любой пользователь может стать однопользовательским, включая службу агента SQL Server.
Теперь вы сможете войти в экземпляр и добавить себя на вкладку безопасности и предоставить полный доступ.
Альтернативный метод:
Здесь есть скрипт, который утверждает, что добавляет текущего пользователя в роль системного администратора SQL Server. Это может работать в однопользовательском режиме, но я не проверял это
(локальный) разрешается до 127.0.0.1 и работает только по умолчанию. Экземплярам, как по умолчанию для SQL Server Express, требуется настоящее имя. Обратите внимание, что вы можете проверить журнал ошибок для SQL Server (папка установки SQL, а затем журнал), и одна из первых нескольких записей даст вам IP-адрес, порт и имя экземпляра.
Таким образом, вы могли бы использовать их вместо этого. Имена экземпляров удобны в использовании, так как они достаточно последовательны. Обратите внимание, что они также используют динамические порты, поэтому это может быть другой порт при каждом перезапуске. Диспетчер конфигурации SQL Server может установить определенный порт. не уверен насчет инструментов Express.