SQL 2008 sysadmin Rechte für Administrator

“Der Administrator darf alles”

Diese Aussage trifft fast immer zu – aber eben nur fast. Wer schon einmal einen SQL Server 2008 installiert hat und dabei vergas, dem Windows-Administrator die “sysadmin” Rolle zu übertragen, der weiss wovon ich spreche. Die Folge sind zunächst unerklärliche Login Fehler mit dem Administrator im Management Studio. In früherern SQL Versionen war dies anders. Damals war der lokale Administrator automatisch Mitglied in der sysadmin Gruppe. Dies wurde mit SQL 2008 geändert.

Was tun?

Was kann man tun, wenn man bei der Installtion vergessen hatte, dem Administrator die sysadmin Rolle zu übertragen? Eine Neuinstallation des SQL-Servers scheidet in der Regel aus. Also braucht man einen Plan B, wie er schön in einem Blogartikel von Chris Randall aufgezeigt wurde. Er Beschreibt die Vorgehensweise für einen SQL Server 2008. Im Falle einer SQL-Server 2008 Express Installation ist der Vorgang leicht abgewandelt und weiter unten erklärt.

SQL-Server 2008

  • Administrative Konsole öffnen
net stop MSSQLServer
  • Wechsel in das SQL Programmverzeichnis
cd "c:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Binn"
  • Start SQL Server in Single User Mode
sqlserv.exe -m
  • Administrative Konsole geöffnet lassen
  • neue Administrative Konsole öffnen und ins Binn Verzeichnis wechseln
osql -E -s <myServer>
CREATE LOGIN [Domain\Username] FROM WINDOWS
go
exec sp_addsrvrolemember 'Domain\Username', 'sysadmin'
go
exec sp_helpsrvrolemember 'sysadmin'
go
quit
  • Wechseln zur ersten Administrativen Konsole
  • Ctrl-C
  • mit “y” bestätigen
net start MSSQLServer

 

SQL Server 2008 Express

  • Administrative Konsole
net stop MSSQL$SQLEXPRESS
  • Wechsel in BINN Verzeichnis
C:\Program Files\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\Binn
  • Start SQL Server in Single User Mode
sqlserv.exe -m -s SQLEXPRESS
  • Administrative Konsole geöffnet lassen
  • neue Administrative Konsole öffnen
osql -E -s <myServer>\SQLEXPRESS
CREATE LOGIN [Domain\Username] FROM WINDOWS
go
exec sp_addsrvrolemember 'Domain\Username', 'sysadmin'
go
exec sp_helpsrvrolemember 'sysadmin'
go
quit
  • Wechseln zur ersten Administrativen Konsole
  • Ctrl-C
  • mit “y” bestätigen
net start MSSQL$SQLEXPRESS

 Links