Logo faq-o-matic.net
Logo faq-o-matic.net

SQL Server 2008: Admins haben keine sysadmin-Rechte

von veröffentlicht am21. Mai 2010, 14:05 Uhr Kurzlink http://faq-o-matic.net/?p=2356 Zitatlink
Kategorie Kategorie: Sicherheit, SQL Server   Translate with Microsoft Translator Translate EN
Zuletzt aktualisiert: 26. Dezember 2010

Mit SQL Server 2008 hat Microsoft das Sicherheitsmodell seines Datenbankservers geändert. Anders als zuvor, sind lokale Administratoren des Servers nun nicht mehr automatisch Mitglieder der Rolle “sysadmin”. Stattdessen muss man nun beim Setup des Servers einen SQL-Admin definieren. Das Problem dabei: Man kann diesen Punkt auch übergehen – und hat im Effekt keinen SQL-Admin …

Es gibt aber eine Lösung dafür, die ich hier gefunden habe:

[SQL Server 2008: Forgot to add an administrator account? - Chris Randall's SQL Blog - AmeriTeach Instructor Blogs]
http://blogs.ameriteach.com/chris-randall/2009/12/11/sql-server-2008-forgot-to-add-an-administrator-account.html?lastPage=true&postSubmitted=true

Weiteres Problem: Das Ganze funktionierte nicht mit einer Installation von SQL Server Express. Ich habe aber rausgefunden, warum, daher hier noch einmal die wesentlichen Schritte.

  • Anmelden am Server mit einem lokalen Administrator.
  • Aufrufen eines CMD-Fensters als Administrator (!).
  • Beenden des SQL-Server-Dienstes:
    net stop MSSQLServer
    Für SQL Express: net stop MSSQL$SQLEXPRESS
  • Wechseln in das BINN-Verzeichnis der Installation
    z.B.: cd C:\Program Files\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\Binn
  • Starten des SQL-Server-Binary mit der Option -m für den Einzelbenutzermodus – dort hat der lokale Admin dann Adminrechte …
    • Wichtig: In früheren Versionen konnte man auch den Dienst mit dem Schalter -m starten – das geht nun nicht mehr!
    • sqlserv.exe -m
    • Für SQL Express muss man die Instanz angeben, also: sqlserv.exe -m -sSQLEXPRESS
    • Nun gibt der SQL Server viele, viele Zeilen aus. Das ist okay.
    • Wichtig: Dieses CMD-Fenster nicht schließen! Stattdessen ein neues öffnen!
  • In dem neuen CMD-Fenster (als Administrator gestartet!) eingeben (nur den fetten Text):
    • osql -E -s SERVERNAME (mit Leerzeichen nach dem s!), also:
      osql -E -s MeinServer
      Für SQL Express: osql -E -s MeinServer\SQLEXPRESS
    • 1> CREATE LOGIN [DOM\Username] FROM WINDOWS
    • 2> go
    • 1> exec sp_addsrvrolemember 'DOM\Username', 'sysadmin'
    • 2> go
    • 1> exec sp_helpsrvrolemember 'sysadmin'
    • 2> go
    • (nun sollte in der Ausgabe der eben zugewiesene Windows-Account erscheinen)
    • 1> quit
  • Nun in dem anderen CMD-Fenster Strg-C drücken und die Nachfrage mit “y” beantworten.
  • Den SQL Server neu starten:
    net start MSSQLServer
    bzw. net start MSSQL$SQLEXPRESS
  • Fertig. Nun sollte ein Login mit diesem Account glücken und über SQL-Adminrechte verfügen.

Verwandte Beiträge:

  1. SQL Server Express: Authentisierungsmodus umschalten
    SQL Server kennt seit jeher zwei Authentisierungsmodi: “Windows-Authentifizierungsmodus” und “SQL Server- und Windows-Authentifizierungsmodus”. Während der erste nur Verbindungen mit bestehenden...
  2. Windows Server 2008 R2: Keine Vertrauensstellung zu NT4 möglich
    In Domänen, die unter Windows Server 2008 R2 laufen, ist keine Vertrauensstellung zu Windows NT 4.0 möglich. Das bedeutet, dass...
  3. Warum kann ein Benutzer Dateien ändern, für die er keine Rechte hat?
    Benutzer können Dateien löschen, auf die sie keinen Zugriff haben. Das ist das, was als Feature (!) dokumentiert ist, sich...
  4. Wie Hauptbenutzer zu Admins werden
    Frage: Kann der Hauptbenutzer das Konto des Administrators löschen oder sein Kennwort ändern? Oder das Konto eines anderen mit Admin-Rechten angelegten Kontos? Antwort:...
  5. DHCP-Server autorisieren ohne Organisations-Admin-Rechte
    Um in einer Active-Directory-Umgebung einen auf Windows 2000/2003 basierenden DHCP-Server zu integrieren, muss man Organisationsadministratorrechte besitzen. Gerade in größeren Netzwerken...

© 2005-2012 bei faq-o-matic.net. Alle Rechte an den Texten liegen bei deren Autorinnen und Autoren.

Jede Wiederveröffentlichung der Texte oder von Auszügen daraus - egal ob kommerziell oder nicht - bedarf der ausdrücklichen Genehmigung durch die jeweiligen Urheberinnen oder Urheber.

Das Impressum findet sich unter: http://www.faq-o-matic.net/impressum/

Danke, dass du faq-o-matic.net nutzt. Du hast ein einfaches Blog sehr glücklich gemacht!