Интернет-конференция

Интернет-конференция (http://dnstechno.ru/index.php)
-   Руководства по microsoft windows (http://dnstechno.ru/forumdisplay.php?f=69)
-   -   Сброс пароля SA в Microsoft SQL Server 2012 (http://dnstechno.ru/showthread.php?t=976)

Eternity 13.05.2015 19:23

Сброс пароля SA в Microsoft SQL Server 2012
 
Вложений: 2
рассмотрим процедуру восстановления доступа к БД на MS SQL Server 2012 в том случае, если пароль SA был успешно забыт или отсутствуют пользователи с правами административного управления MS SQL 2012. Мы покажем, как сбросить пароль учетной записи sa, и, если необходимо, предоставить нужной учетной записи Windows права администратора MSSQL.

Ситуации, когда утерян / забыт пользователя SA на СУБД MS SQL случаются довольно часто. Как правило, вариант переустановки SQL и переподключения БД не рассматривается, т.к. в таком разе будут потеряны параметры конфигурации, хранящиеся в системной БД master. SQL Server предоставляет гораздо более удобный функционал восстановления доступа. Дело в том, что члены локальной группы администраторов системы, на которой установлен SQL Server, имеют полные полномочия на СУБД, запущенной в однопользовательском режиме (single-user mode). Запустив SQL Server в однопользовательском режиме, можно изменить пароль учетной записи SA, и/или предоставить административные права нужной ученой записи Windows.

Совет. Напомним, что начиная с SQL Server 2008 локальная группа администраторов системы, на которой установлен SQL Server, по-умолчанию не добавлена в роль sysadmin на SQL сервере.

Процедура запуска SQL Server 2012 в однопользовательском режиме и восстановления доступа такова (главное условие – необходимо обладать правами администратора системы, на которой установлен MSSQL):
Останавливаем службу необходимого инстанса SQL Server (в нашем случае имя инстанса MSSQL —EPOSERVER) : net stop MSSQL$EPOSERVER
Открываем редактор реестра (regedit.exe) и переходим в раздел параметров запуска сервиса SQL:HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Servic es\ MSSQL$EPOSERVER
Изменяем значение ImagePath, добавив в качестве аргумента sqlservr.exe ключ «-m». В нашем примере получилось такое значение: "C:\Program Files\Microsoft SQL Server\MSSQL11.EPOSERVER\MSSQL\Binn\sqlservr.exe” -m -s sEPOSERVER

Вложение 162

Запускаем службу SQL Server: net start MSSQL$EPOSERVER
Теперь SQL запущен в однопользовательском режиме и позволяет любому члену локальной группы администраторов компьютера подсоединяться к экземпляру SQL Server с правами sysadmin.
С помощью Management Studio измените пароль SA или предоставьте нужной учетной записи Windows роль sysadmin (Эту операцию можно выполнить из командной строки sqlcmd: EXEC sp_addsrvrolemember 'DOMAIN\Username', 'sysadmin';)
Осталось еще раз остановить службу SQL, изменить значение ключа ImagePart на оригинальное, убрав атрибут “-m” (“C:\Program Files\Microsoft SQL Server\MSSQLEPOSERVER\MSSQL\Binn\sqlservr.exe» -s sEPOSERVER”) и запустить SQL Server в обычном режиме
Совет. В момент написания статье обнаружил, что SQL Server 2012 можно запустить в однопользовательском режиме и из SQL Server Configuration Manager. Для этого в свойствах нужного инстанса на вкладке Advanced у параметра Startup Parameters добавить аргумент «-m;» .

Вложение 163


Текущее время: 19:34. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.9 Beta 1
Copyright ©2000 - 2024, vBulletin Solutions, Inc. Перевод: zCarot