THE BELL

Є ті, хто прочитали цю новину раніше вас.
Підпишіться, щоб отримувати статті свіжими.
Email
ім'я
Прізвище
Як ви хочете читати The Bell
без спаму

Прочитано: 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\u003e net user ekzorchik [Email protected] / add

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

The command completed successfully.

C: \\ Windows \\ system32\u003e exit

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

This account:. \\ Ekzorchik

Password: [Email protected]

Confirm password: [Email protected]

Слідом піде вікно з текстом:

The account. \\ Ekzorchik has been granted the Log On As a Service right.

The new logon name will not take effect until you stop and restart the service

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

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

C: \\ Windows \\ system32\u003e net stop SQLSERVERAGENT

The SQL Server Agent (MSSQLSERVER) service is stopping ..

The SQL Server Agent (MSSQLSERVER) service was stopped successfully.

C: \\ Windows \\ system32\u003e net stop MSSQLSERVER

C: \\ Windows \\ system32\u003e net start SQLSERVERAGENT

The SQL Server Agent (MSSQLSERVER) service is starting.

The SQL Server Agent (MSSQLSERVER) service was started successfully.

потім роблю 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\u003e sqlcmd

1\u003e create login recovery with password \u003d " [Email protected]"

2\u003e go

1\u003e sp_addsrvrolemember "recovery", "sysadmin"

2\u003e go

1\u003e 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\u003e net stop mssqlserver

The SQL Server (MSSQLSERVER) service is stopping.

The SQL Server (MSSQLSERVER) service was stopped successfully.

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

The SQL Server (MSSQLSERVER) service is starting.

The SQL Server (MSSQLSERVER) service was started successfully.

C: \\ Windows \\ system32\u003e sqlcmd

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

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

Навігація по публікаціям

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

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

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

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

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

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

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

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

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

І останній рубіж
ALTER LOGIN SA WITH PASSWORD \u003d "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, як вбудованими методами так і сторонніми.

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

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

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

Єдина вимога, ви всюди повинні бути локальним адміністратором

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

Начнемс, відкрийте пуск і йдіть по шляху Всі програми\u003e Microsoft SQL Server 2012 R2\u003e П'ятниця 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, що підключення до сервера успішно встановлено, але потім сталася помилка при вході, то зробіть наступне.

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

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

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

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

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

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

Якщо вилізе повідомлення Password validation failed. The password does not meet 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 \u003d '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.

THE BELL

Є ті, хто прочитали цю новину раніше вас.
Підпишіться, щоб отримувати статті свіжими.
Email
ім'я
Прізвище
Як ви хочете читати The Bell
без спаму