Ms sql sa пароль за замовчуванням. Змінюємо пароль sa у MS SQL. Зміна пароля системного адміністратора

25.01.2021 Програми

Прочитано: 367

Будь-яке буває і всяке не буває, але краще мати опрацювання на майбутнє, щоб не метатися потім, із запитанням — А як? Так от зараз я розберу питання, що давно хвилювало мене, що робити якщо на сервері бази даних MS SQL Server 2008 R2який дістався Мені у спадок від попереднього системного адміністраторане залишив взагалі ніяких паролів для підключення в оснастку управління іменовану як SQL Management Studio. Звичайно воно все працює до певного часу, але ось цей час завжди припадає на такий парадокс:

Все зазвичай падає у п'ятницю, а у понеділок, що не впало у п'ятницю.

Я ж цього всіляко уникаю і опрацьовую постійно сценки та кроки по відновленню та резервуванню якщо щось піде не так.

Що можна дізнатися із розгорнутого?

Start - Control Panel - Administrative Tools - Services, служба, що відноситься до сервісу MSSQL - SQL Server (MSSQLSERVER)при відкритті її властивостей ( Properties) та переходу на вкладку Log Onпрацює від імені системного облікового запису. Це добре. Тепер у будь-який час, коли у Вас заплановані регламентні роботиробимо так, перевизначаємо запуск даної служби від імені облікового запису з правами (обов'язково) адміністратора на цій системі, але спочатку звичайно створюємо користувача:

Запускаємо Command Promptз правами адміністратора та створюємо користувачі та даємо йому права локального адміністратора:

C:\Windows\system32>net user ekzorchik [email protected]/add

C:\Windows\system32>net localgroup Administrators ekzorchik /add

Команда здійснена успішно.

C:\Windows\system32>exit

Тепер у вкладці Log Onвластивостей служби SQL Serverзмінюємо від імені кого відбуватиметься запуск служби як показано на представленому скріншоті нижче:

Цей облік: .\ekzorchik

Password: [email protected]

Confirm password: [email protected]

Після цього піде вікно з текстом:

Обліковий запис .\ekzorchik має бути затверджено Log On As a Service right.

The New logon name не буде робити ефект until you stop and restart the service

За таким же принципом робимо і для служби SQL Server Agentвід імені когось запускати цю службу.

Ну всі правильно зміни використовуються коли служба буде зупинена, а після запущена.

C:\Windows\system32>net stop SQLSERVERAGENT

The SQL Server Agent (MSSQLSERVER) Service is stopping.

У SQL Server Agent (MSSQLSERVER) служба була спрощена успішно.

C:\Windows\system32>net stop MSSQLSERVER

C:\Windows\system32>net start SQLSERVERAGENT

SQL Server Agent (MSSQLSERVER) Service is starting.

У SQL Server Agent (MSSQLSERVER) служба була здійснена успішно.

Потім роблю Logoff, а потім Logonу систему під уже створеним локальним обліковим записом ekzorchik. Відкриваю оснастку S QL Management Studio:

Start - All Programs - Microsoft SQL Server 2008 R2 - SQL Server Management Studioта авторизуюся з використанням Windows Authentication

Натискаю Connect, але у відповідь замість успішно входу отримую помилку:

Роблю висновок, що не прокотить такий фокус, згадуючи що ще можна зробити, ось у Ubuntuна обліковий запис суперкористувача rootв mysqlя заходжу в однокористувацький режим, цікаво, а тут таке є.

Повертаю все як було, тобто запуск служби від імені системи

Читання документації на офіційному сайті Microsoftпризвело мене до таких дій зі скидання пароля на обліковий запис SA:

Запускаю оснастку SQL Server Configuration Manager:

Start - All Programs - Microsoft SQL Server 2008 R2 - Configuration Tools - SQL Server Configuration Manager, потім зупиняю сервіс SQL Server (MSSQLSERVER)

Після цього зупиненого сервісу відкриваю через правий клік його характеристики ( Properties), тут перемикаюся на вкладку Advanced (Розширені)та у рядку:

Startup Parameters після:-dC:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\master.mdf;-eC:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Log\ERRORLOG;-lC:\Program Files \Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\mastlog.ldf

вказую ключ -mSQLCMD . У результаті має вийти таке:

Тепер запускаю службу для налаштувань. Якщо за службами SQLв оснастці управління все добре, служба запустилася, то переходимо до наступного етапу.

Відкриваю консоль командного рядка з правами адміністратора:

Start - All Programs - Accessories- запускаємо Command Promptз правами адміністратора

C:\Windows\system32>sqlcmd

1> create login recovery with password=" [email protected]"

2> go

1> sp_addsrvrolemember "відновлення", "sysadmin"

2> go

1> quit

Знову зупиняю сервіс SQL Server (MSSQLServer), запускаю властивості, переходжу на вкладку Advancedта прибираю доданий параметр у запуску та запускаю сервіс знову.

Натискаю Connect

Що тепер? А просто змінюємо пароль sqlоблікового запису saяк і планувалося, а поточна залишиться про всяк випадок:

(local) (SQL Server 10.50.1600 - recovery) - Security - Logins- виділяю обліковий запис saі через правий клік Propertiesвводжу Новий пароль:

Password: [email protected]@

Confirm password: [email protected]@

І натискаю OK. Розлогінююсь та перевіряю що можу підключитися під обліковий запис SQL:

File - Disconnect Object Explorer

File - Connect Object Explorer…

Натискаю Connectі вуаля все вийшло, як і було задумано.

На замітку: Але все можна зробити і з командного рядка:

C:\Windows\system32>net stop mssqlserver

SQL Server (MSSQLSERVER) Service is stopping.

SQL Server (MSSQLSERVER) сервіс був схвалений успішно.

C:\Windows\system32>net start mssqlserver /mSQLCMD

SQL Server (MSSQLSERVER) Service is starting.

В SQL Server (MSSQLSERVER) служба була здійснена успішно.

C:\Windows\system32>sqlcmd

1> <я_подключился>

Тепер я ще більше знаю з SQL Server 2008 R2про всяк непередбачений випадок, раптом у нас у відділі хтось візьме і навмисне все змінить, не попередивши ні кого. Завдання поставлене на початку цієї нотатки виконано. На цьому я прощаюся, з повагою автор блогу Олло Олександр aka ekzorchik.

Навігація за записами

з'являтимуться частіше:)

Карта МКЛ: 4432-7300-2472-8059
Yandex-гроші: 41001520055047

«sa» - це логін користувача в MS SQL, що має за умовчанням найвищі привілеї, саме обліку локальне, часто навіть вимкнене, але часто використовується. Якщо ви втратили або забули пароль від цього облікового запису «sa», то у вас не буде доступу до управління вашими БД.

Пароль sa за замовчуванням

Нагадаю пароль sa за умовчанням як не дивно sa

Єдина вимога, ви скрізь маєте бути локальним адміністратором

Змінити пароль sa в SQL через графічний інтерфейс

Почнемо, відкрийте пуск і йдіть по дорозі Всі програми > Microsoft SQL Server 2012 R2 > Середовище SQL Server Management Studio

Або ви можете відкрити командний рядок та ввести там ssms.

У вас відкриється SQL Server Management Studio.

За замовчуванням стоїть автентифікація Windows, що означає, що ви зможете увійти тільки з локальної облікової записом Windowsабо доменної, головне щоб мали рацію.

Обліковий запис sa за замовчуванням вимкнено, але це не завадить вам змінити пароль.

ms sql дозволяє скинути пароль sa через її властивості, для цього клацаєте правим кліком та вибираєте властивості з контекстного меню.

На вкладці загальні ви побачите поле для введення нового пароля, єдине врахуйте, що якщо стоїть галка Вимагати використання політики паролів, вам доведеться придумати стійкий пароль, що відповідає вимогам безпеки, а саме

  • Повинна бути велика літерау паролі
  • Має бути маленька літера в паролі
  • Має бути спецсимвол або цифра в паролі

Якщо зняти галку, то можна задати новий пароль і зберегти. Пароль на користувача sa в SQL змінено.

Єдине, якщо ви хочете використовувати обліковий запис sa, то його потрібно увімкнути, для цього перейдіть у пункт стан і вкажіть Ім'я ввійшовши Увімкнено.

Ще нюанс, ви ж пам'ятаєте, що у вас стоїть автентифікація Windows, а це означає, що нам це не підходить для sa. Клацніть правим кліком за назвою сервера, вгорі ієрархії та виберемо властивості.

На вкладці Безпека, виберемо варіант Перевірка автентичності SQL Server та Windows. Тепер ви можете заходити за допомогою користувача sa у sql.

Якщо при спробі увійти Management Studio видає помилку 233, що підключення до сервера успішно встановлено, але потім виникла помилка під час входу, зробіть таке.

Відкрийте Пуск > Панель керування > Адміністрація > Служби та перезапустіть SQL Server.

Тоді підключення відбувається успішно і без помилок.

Змінити пароль sa в SQL через командний рядок

Щоб sql скинути пароль sa через командний рядок скористайтеся командами.

Даною командою ви побачите всі доступні сервери MS SQL їх SPN

sp_password NULL,<вставьте_новый_пароль_тут>, 'sa'

Якщо вилізе повідомлення "Password validation failed". password не може бути Windows policy requirements because it is too short. То задайте більш суворий пароль.

Все після цього ви скинете пароль sa в SQL.

Ще варіант використання osql це так

cd C:\Program Files\Microsoft SQL Server\110\Tools\Binnпотім ми намагаємося підключитися під довіреною облікових записівОС

osql.exe» -S (local)\ім'я вашого сервера -E

І останній рубіж
ALTER LOGIN SA WITH PASSWORD= ‘new_password’
вона замінить пароль на new_password

За допомогою програми Asunsoft SQL Password Geeker

Є утиліта Asunsoft SQL Password Geeker, вона платна, але здатна виконати поставлене завдання. Запускаємо її тиснемо Browse далі йдемо по дорозі C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA і відкриваємо master.mdf

тепер, щоб скинути пароль sa в sql, виберіть його та натисніть Reset.

Змінити пароль sa у монопольному режимі

Є ще четвертий спосіб змінити пароль від sa, і полягає він у запуску MS SQL в режимі одного користувача (single-user mode).

Перше це зупиняємо MS SQL Server, можна через служби, а можна і з командного рядка

net stop MSSQLSERVER

HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\ MSSQLSERVER

Тепер вам потрібно задати параметр у рядку ImagePath-m якраз і буде говорити про однокористувацький режим. У мене вийшло ось так

"C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Binn\sqlservr.exe" -m -s MSSQLSERVER

Тепер запускаєте MS SQL командою

net start MSSQLSERVER

Тепер SQL запущено в режимі одного користувача і дозволяє будь-якому члену локальної групи адміністраторів комп'ютера приєднуватися до екземпляра SQL Server з правами sysadmin, але потрібно SQL про це сказати. Переглянути режим роботи можна у властивостях служби.

У командному рядкупишемо

cd C:\Program Files\Microsoft SQL Server\110\Tools\Binnsqlcmd.exe: EXEC sp_addsrvrolemember "ім'я сервера\ім'я користувача", "sysadmin"

Перезапускаємо службу, не забудьте потім прибрати параметр -m у реєстрі. Пароль скинутий на користувача sa в SQL.

Всім привіт, сьогодні розповім як змінити чи скинути пароль sa SQL сервера. Нагадаю sa це логін користувача в MS SQL, що має за замовчуванням найвищі привілеї, саме обліку локальне, часто навіть вимкнене, але часто використовується. Може вийти така ситуація, що ви забули від неї пароль і цим втратили доступ до баз даних, сьогодні ви навчитеся це обходити і відновлювати доступ до ваших БД.

sp_password NULL,<вставьте_новый_пароль_тут>, 'sa'

Якщо вилізе повідомлення "Password validation failed". password не може бути Windows policy requirements because it is too short. То задайте більш суворий пароль.

Все після цього ви скинете пароль sa в SQL.

Ще варіант використання osql це так

потім ми намагаємося підключитися під довіреним обліковим записом ОС

osql.exe" -S (local)\ім'я вашого сервера -E

І останній рубіж
ALTER LOGIN SA WITH PASSWORD="new_password"
вона замінить пароль на new_password

За допомогою програми Asunsoft SQL Password Geeker

Є утиліта Asunsoft SQL Password Geeker, на жаль, платна, але здатна виконати поставлене завдання. Запускаємо її тиснемо Browse далі йдемо по дорозі C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA і відкриваємо master.mdf

тепер, щоб скинути пароль sa в sql, виберіть його та натисніть Reset.

Змінити пароль sa у монопольному режимі

Є ще четвертий спосіб змінити пароль від sa, і полягає він у запуску MS SQL в режимі одного користувача (single-user mode). Що нам потрібно.

Перше це зупиняємо MS SQL Server, можна через служби, а можна і з командного рядка

net stop MSSQLSERVER

HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\ MSSQLSERVER

Тепер вам потрібно задати параметр у рядку ImagePath-m якраз і буде говорити про однокористувацький режим. У мене вийшло ось так

"C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Binn\sqlservr.exe" -m -s MSSQLSERVER

Тепер запускаєте MS SQL командою

net start MSSQLSERVER

Тепер SQL запущено в режимі одного користувача і дозволяє будь-якому члену локальної групи адміністраторів комп'ютера приєднуватися до екземпляра SQL Server з правами sysadmin, але потрібно SQL про це сказати. Переглянути режим роботи можна у властивостях служби.

У командному рядку пишемо

cd C:\Program Files\Microsoft SQL Server\110\Tools\Binn

sqlcmd.exe: EXEC sp_addsrvrolemember "ім'я сервера\ім'я користувача", "sysadmin"

Перезапускаємо службу і радіємо життю, не забудьте потім прибрати параметр -m у реєстрі. Ось так просто скинути пароль sa в sql, як вбудованими методами так і сторонніми.