Забыли пароль SQL Server - PullRequest
16 голосов
/ 26 октября 2008

Я установил SQL Server 2005 некоторое время назад и забыл пароль администратора, который я установил во время установки. Как я могу подключиться к серверу SQL сейчас?

РЕДАКТИРОВАТЬ: Я думаю, что я разрешил только проверку подлинности сервера SQL. Вход с интегрированной безопасностью также не работает.

Ответы [ 6 ]

31 голосов
/ 26 октября 2008

Попробуйте выполнить следующие команды в командной строке (при условии, что ваше имя сервера SQLEXPRESS ):

osql -E -S .\SQLEXPRESS
exec sp_password @new='changeme', @loginame='sa'
go
alter login sa enable
go
exit

После того, как вы выполнили эти шаги, попробуйте войти с именем пользователя sa и паролем changeme .

9 голосов
/ 02 июня 2010

Вам не нужно платить за любые инструменты сброса, чтобы сделать это. Запустите экземпляр в однопользовательском режиме, и вы сможете создать новый логин с разрешениями sysadmin /

См. Пинал Дэйв, ссылка .

4 голосов
/ 25 марта 2009

Большое спасибо cowgod

Работает отлично. Я вошел в SQL Server с режимом проверки подлинности Windows. Затем открылось новое окно запроса. Там я набрал эти две команды, набрав F5.

Первый запуск exec sp_password @ new = 'changeme', @ loginame = 'sa'

Тогда alter login sa enable

3 голосов
/ 06 февраля 2014

Если нет другого пользователя с привилегиями sysadmin, кроме sa, SQL Server следует перезапустить с параметром -m для однопользовательского режима. Затем вы можете подключиться к этому экземпляру SQL Server и добавить других пользователей с ролью sysadmin или выполнить exec sp_password.

Пинал Дейв объясняет здесь - http://blog.sqlauthority.com/2009/02/10/sql-server-start-sql-server-instance-in-single-user-mode/ - как добавить -m с помощью Диспетчер конфигурации SQL Server : щелкните правой кнопкой мыши службу сервера, перейдите на вкладку «Дополнительно» и добавьте -m; (уведомление точка с запятой) в параметрах запуска.

Другой способ - остановить экземпляр SQL Server в службах и запустить его вручную из командной строки , например:

"C: \ Program Files \ Microsoft SQL Server \ MSSQL10.SQLEXPRESS \ MSSQL \ Binn \ sqlservr.exe" -m -sSQLEXPRESS

Я должен был сделать это для SQL Server 2008, поскольку он не появился в SQL Server 2008 R2 Configuration Manager. Командную строку Exect можно найти в свойствах службы.

0 голосов
/ 23 сентября 2017

Чтобы эти шаги работали, вы должны быть администратором на компьютере, где установлен SQL Server.

  • Остановить SQL Server из диспетчера конфигурации
  • Запустить SQL Server в однопользовательском режиме
  • Добавьте эту команду -mSQLCMD в качестве одного из параметров запуска, щелкнув правой кнопкой мыши службу и перейдя в раздел параметров запуска, как показано на скриншоте ниже, и запустите SQL Server

    enter image description here

  • Теперь подключитесь к SQLSERVER из SQLCMD (откройте командную строку от имени администратора), как показано ниже:

    sqlcmd -s servername\instancename
    

    И запустить команду ниже:

    USE [master]
    GO
    CREATE LOGIN [BUILTIN\Administrators] FROM WINDOWS WITH DEFAULT_DATABASE=[master]
    GO
    EXEC master..sp_addsrvrolemember @loginame = N'BUILTIN\Administrators', @rolename = N'sysadmin'
    GO
    

    Команда выше добавляет всех локальных пользователей в качестве системных администраторов. Вы можете изменить это и добавить пользователя как, или вы можете сделать другого пользователя sysadmin и удалить BUILTIN\Administrators

  • После этого вам нужно остановить SQL Server, удалить параметр -mSQLCMD и перезапустить SQL Server

Ссылка:
Help: Я потерял пароль sa, и никто не имеет разрешения системного администратора (SysAdmin). Что мне делать?

0 голосов
/ 26 октября 2008

Если вы не настроите его на прием только аутентификации SQL Server, вы можете войти в систему с интегрированной защитой, используя пользователя-администратора домена и / или компьютера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...