2 února, 2022

jak obnovit heslo SA na serveru Microsoft SQL Server?

v tomto článku se podíváme na to, jak obnovit heslo SA (správce systému) v Microsoft SQL Server 2019/2017/2014/2012 . Tato příručka vám pomůže obnovit přístup k databázi MSSQL, pokud nemůžete ověřit pomocí účtu sa (heslo sa bylo zapomenuto / ztraceno / účet byl deaktivován)nebo jako uživatel systému Windows (pokud nejsou uživatelé s oprávněními MS SQL sysadmin).

místní sa je známý administrativní účet v SQL Serveru. Ve většině případů je zakázán, ale můžete jej povolit, nastavit / obnovit heslo a obnovit přístup k serveru SQL.

Chcete-li obnovit přístup k databázi bez úplné přeinstalace instance MS SQL (a se ztrátou hlavní databáze), musíte spustit SQL Server v režimu pro jednoho uživatele. V tomto režimu se můžete přihlásit k serveru SQL pod libovolným účtem s oprávněními místního správce v počítači, na kterém je nainstalován server MS SQL Server. Poté můžete resetovat heslo účtu sa a / nebo udělit administrátorská oprávnění konkrétním účtům systému Windows.

Tip. Počínaje SQL Server 2008 není role sysadmin na serveru SQL ve výchozím nastavení přiřazena místní skupině správců systému Windows.

Chcete-li spustit MS SQL Server v režimu pro jednoho uživatele, přihlaste se k hostiteli MSSQL pod libovolným účtem s oprávněním místního správce v systému Windows.

  1. zastavte instanci serveru SQL (v našem příkladu je název instance MSSQL mssqlserver) z příkazového řádku net stop MSSQLSERVER nebo pomocí PowerShell: Get-Service MSSQLSERVER| Stop-Service zastavte MSSQLSERVER pomocí cli
  2. otevřete editor registru (regedit.exe) a přejděte na klíč registru služby SQL: HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001 \ Services\MSSQLSERVER;
  3. změňte hodnotu parametru ImagePath přidáním volby-m jako argumentu do sqlservr.exe. Například nastavte následující spouštěcí řetězec: "C:\Program Files\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQL\Binn\sqlservr.exe" -sMSSQLSERVER -m sql server spustit v režimu jednoho uživatele prostřednictvím registru
  4. spusťte SQL Server: net start MSSQLSERVER
  5. váš SQL Server je nyní spuštěn v režimu pro jednoho uživatele a umožňuje jakémukoli členovi skupiny místních správců (nebo vestavěnému správci systému Windows) připojit se k instanci serveru SQL Server s oprávněními sysadmin;
  6. otevřete SQL Server Management Studio (SSMS) a připojte se k databázovému nástroji SQL Server pomocí účtu, který je členem skupiny místních správců; připojte se k SQL serve v režimu pro jednoho uživatele pomocí SQL Server Management Studio
  7. přejděte do části Zabezpečení-> přihlaste se a najděte uživatele sa. Uživatel sa je ve výchozím nastavení zakázán; uživatel sa je v MS SQL Server ve výchozím nastavení zakázán
  8. otevřete jeho vlastnosti, přejděte na kartu Obecné a nastavte nové heslo SA. Poté povolte tento účet na kartě Stav (přihlášení – > povoleno); SQL Server: Reset hesla SA
  9. Chcete-li povolit připojení k MSSQL v rámci místních účtů SQL (včetně sa), musíte povolit režim ověřování serveru SQL Server a Windows ve vlastnostech serveru na kartě Zabezpečení. V opačném případě se při připojení pod místním účtem sa objeví chyba:
    Login failed for user 'sa'. (Microsoft SQL Server, Error: 18456)

    povolit autentizaci serveru a systému Windows v MSSQL

  10. také v sekci Přihlášení můžete přidat požadované uživatele systému Windows (místní nebo doménové) a přiřadit mu sysadmin tole (na kartě role serveru). Nebo můžete přidat roli uživateli z sqlcmd cli:
    EXEC sp_addsrvrolemember 'DOMAIN\Username', 'sysadmin';)
    GO

    udělit roli sysadmin serveru sql Serveru uživateli windows
  11. zbývá znovu zastavit službu MSSQL, vrátit počáteční hodnotu parametru registru ImagePart odstraněním přepínače “ – m(C:\Program Files\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQL\Binn\sqlservr.exe" -sMSSQLSERVER);
  12. spusťte službu SQL Server normálně;
  13. nyní se můžete připojit k serveru SQL pod účtem sa v režimu ověřování serveru SQL nebo pod Uživatelským účtem Windows, kterému jste v SQL Serveru udělili oprávnění sysadmin.
Tip. SQL Server můžete spustit v režimu pro jednoho uživatele pomocí Správce konfigurace serveru SQL Server. Chcete –li to provést, přejděte na kartu Parametry spuštění ve vlastnostech požadované instance SQL a přidejte možnost spuštění-m.

 konfigurace sql serveru přidat parametry stratup

můžete také použít nástroj příkazového řádku sqlcmd k resetování hesla SA a udělení přístupu k serveru SQL Server:

  1. spusťte SQL Server v režimu jednoho uživatele, jak je popsáno výše;
  2. otevřete příkazový řádek a připojte se k instanci serveru SQL Server: sqlcmd –S localhost
  3. Chcete-li změnit heslo uživatele SA a povolit jej, spusťte následující příkazy T-SQL:
    ALTER LOGIN sa enable
    GO
    ALTER LOGIN sa WITH PASSWORD = 'new_sa_pass331'
    GO
  4. Chcete-li udělit oprávnění sysadmin v MSSQL pro účet Windows (místní uživatel v tomto příkladu), použijte příkazy:
    CREATE LOGIN FROM WINDOWS
    GO
    ALTER SERVER ROLE sysadmin ADD MEMBER
    GO

v tomto článku jsme ukázali, jak obnovit přístup k serveru SQL Server v režimu pro jednoho uživatele. V tomto režimu můžete resetovat heslo sa (a dalších uživatelů SQL) nebo udělit oprávnění správce SQL uživatelským účtům systému Windows. Režim pro jednoho uživatele lze také použít k obnovení databáze temdb V serveru MSSQL.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.