Kein Login Fehler 4064 Cannot open default database
hawkmaster
- datenbank
Hallo zusammen,
Ich habe einen SQL Server 2008 Express. Mit Windows Authentifizierung kann ich mich mit Management Studio anmelden.
Ich habe eine Datenbank "testdb". Dann habe ich unter Security--Logins einen Benutzer "MyTestUser" angelegt mit SQL Server Authentifizierung. Für diesen Benutzer habe ich ganz unten die Standard Datenbank "testdb" zugeordnert.
Wenn ich nun versuche mich an Management Studio nicht mit Windows Authentifizierung sondern mit SQL Server Authentifizierung und dem Benutzer
"MyTestUser" anzumelden, bekomme ich den Fehler.
SQL SERVER – Fix : Error: 4064 – Cannot open user default database. Login failed. Login failed for user
Es ist genau wie hier beschrieben.
Leider klappt es bei mir auch nicht mit dem Tipp im Reiter Connection Properties die Default Datenbank "testdb" auszuwählen.
Ich habe jetzt schon stundenlang gegoogelt und komme einfach nicht weiter.
Hat hier noch jemand eine Idee?
vielen Dank und viele Grüße
hawk
Hi,
Für diesen Benutzer habe ich ganz unten die Standard Datenbank "testdb" zugeordnert.
Wo bitte ist "ganz unten"? Du meinst "Default Database"?
Die Fehlermeldung besagt, dass das Login kein Recht hat, sich mit der angegebenen Datenbank zu verbinden. merke Login != User
Well, verbinde dich mittels SSMS oder sqlcmd mit der Instanz von SQL 2008 Express unter verwendung eines 'sa' accounts.
Wechsle die Datenbank zu testdb (e.g. in SSMS per Maus oder durch
use testdb;
Dann fuehre aus:
SELECT * FROM sys.database_principals
und schau nach, ob dein "MyTestUser" im Ergebnis enthalten istalternativ oder zusaetzlich kannst du auch ausfuehren:
2) EXEC sp_helpuser 'MyTestUser'
... dann ist MyTestUser zwar ein Login auf dem Server aber noch lange kein User in der entsprechenden DB
Also solltest du mit einem admin konto in der DB "testdb" das Login "MyTestUser" als User registrieren: CREATE USER [MyTestUser] FOR LOGIN [MyTestUser]
. Danach kannst du ihm dann die notwendigen Rechte und Rollen zuweisen.
Zu beachten ist noch:
Ciao, Frank