SSMS
 sql >> Datenbank >  >> Database Tools >> SSMS

Wie gewähre ich mir Administratorzugriff auf eine lokale SQL Server-Instanz?

Öffnen Sie ein Eingabeaufforderungsfenster. Wenn Sie bereits eine Standardinstanz von SQL Server ausführen, führen Sie den folgenden Befehl an der Eingabeaufforderung aus, um den SQL Server-Dienst zu beenden:

net stop mssqlserver

Wechseln Sie nun in das Verzeichnis, in dem der SQL-Server installiert ist. Das Verzeichnis kann zum Beispiel eines der folgenden sein:

C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Binn
C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Binn

Finden Sie Ihr MSSQL-Verzeichnis und Ihre CD heraus hinein als solches:

CD C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Binn

Führen Sie nun den folgenden Befehl aus, um SQL Server im Einzelbenutzermodus zu starten. Als SQLCMD angegeben wird, nur ein SQLCMD Verbindung hergestellt werden kann (von einem anderen Eingabeaufforderungsfenster).

sqlservr -m"SQLCMD"

Öffnen Sie nun ein weiteres Eingabeaufforderungsfenster als derselbe Benutzer wie derjenige, der SQL Server oben im Einzelbenutzermodus gestartet hat, und führen Sie darin Folgendes aus:

sqlcmd

Und drücken Sie die Eingabetaste. Jetzt können Sie SQL-Anweisungen für die SQL Server-Instanz ausführen, die im Einzelbenutzermodus ausgeführt wird:

create login [<<DOMAIN\USERNAME>>] from windows;

-- For older versions of SQL Server:
EXEC sys.sp_addsrvrolemember @loginame = N'<<DOMAIN\USERNAME>>', @rolename = N'sysadmin';

-- For newer versions of SQL Server:
ALTER SERVER ROLE [sysadmin] ADD MEMBER [<<DOMAIN\USERNAME>>];

GO

Quelle .

AKTUALISIERT Vergessen Sie nicht ein Semikolon nach ALTER SERVER ROLE [sysadmin] ADD MEMBER [<<DOMAIN\USERNAME>>]; und fügen Sie nach GO kein zusätzliches Semikolon hinzu oder der Befehl wird nie ausgeführt.