Nach Umstieg auf 7.0: MySQL-Problem

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
Antworten
mod3

Nach Umstieg auf 7.0: MySQL-Problem

Beitrag von mod3 » 10.05.2013 16:15:59

Hallo!

Habe soeben einen Server auf Debian wheezy umgezogen (komplett neu installiert, amd64).
Nun wollte ich eine leere MySQL-Datenbank anlegen, dafür das selbe Skript wie vorher verwenden.
Allerdings schlägt das Anlegen des Benutzers scheinbar fehl.
Denn wenn ich mich mit diesem anschließend einloggen möchte, erhalte ich die typische Passwort-falsch-Fehlermeldung.
Habt ihr eine Erklärung?

Grüße,
mod3

Angelegt wird der Nutzer mit:

Code: Alles auswählen

GRANT SELECT, INSERT, UPDATE ON nutzer.* TO 'datenbank'@'%' IDENTIFIED BY 'geheimespasswort';
Und die Fehlermeldung nach

Code: Alles auswählen

mysql -u nutzer -p
lautet:

Code: Alles auswählen

ERROR 1045 (28000): Access denied for user 'nutzer'@'localhost' (using password: YES)

syssi
Beiträge: 2951
Registriert: 24.12.2010 16:50:59
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Rheinland

Re: Nach Umstieg auf 7.0: MySQL-Problem

Beitrag von syssi » 10.05.2013 16:27:19

AFAIK war das schon immer so und ein

Code: Alles auswählen

FLUSH PRIVILEGES;
ist nach dem Anlegen eines Benutzers seit Lebzeiten notwendig.

mod3

Re: Nach Umstieg auf 7.0: MySQL-Problem

Beitrag von mod3 » 10.05.2013 16:48:02

Hm, haut leider auch nicht hin.
Kann mich auch nicht entsinnen, das jemals gebraucht zu haben.
Denn auch MySQL-basierte Skripte laufen nun nicht mehr.
Und das haben sie früher, nachdem ich die Datenbank per Skript angelegt hatte.

DeletedUserReAsG

Re: Nach Umstieg auf 7.0: MySQL-Problem

Beitrag von DeletedUserReAsG » 10.05.2013 16:52:15

mod3 hat geschrieben:
Angelegt wird der Nutzer mit:

Code: Alles auswählen

GRANT SELECT, INSERT, UPDATE ON nutzer.* TO 'datenbank'@'%' IDENTIFIED BY 'geheimespasswort';
Und die Fehlermeldung nach

Code: Alles auswählen

mysql -u nutzer -p
lautet:

Code: Alles auswählen

ERROR 1045 (28000): Access denied for user 'nutzer'@'localhost' (using password: YES)
Mit dem Query bestimmst du, dass der Nutzer „datenbank“ SELECT, INSERT und UPDATE auf die Datenbank „nutzer“ anwenden darf. Dann meldest du dich mit „nutzer“ an … irgendwas hast du da vertauscht ;)

Edit: der zweite zu beachtende Punkt: du möchtest wahrscheinlich GRANT … on datenbank.* TO 'nutzer'@'localhost' … verwenden, wenn du dich von localhost anmelden willst.

cu,
niemand

mod3

Re: Nach Umstieg auf 7.0: MySQL-Problem

Beitrag von mod3 » 10.05.2013 16:56:39

Öhm ja :-D
Hab ich in der Tat, denn im Original heißen Nutzer und Datenbank gleich ;-)
Gut, einmal umdrehen:

Code: Alles auswählen

GRANT SELECT, INSERT, UPDATE ON datenbank.* TO 'nutzer'@'%' IDENTIFIED BY 'geheimespasswort';

DeletedUserReAsG

Re: Nach Umstieg auf 7.0: MySQL-Problem

Beitrag von DeletedUserReAsG » 10.05.2013 17:36:28

Bleibt immer noch der Punkt, dass du dem „benutzer@%“ die Rechte gibst, dich aber als „benutzer@localhost“ einloggen willst.

Hab‘s gerade getestet …

cu,
niemand

mod3

Re: Nach Umstieg auf 7.0: MySQL-Problem

Beitrag von mod3 » 10.05.2013 18:06:12

Hab's auch gerade getestet, aber auf einem squeeze-System und da funktioniert es einwandfrei?


DeletedUserReAsG

Re: Nach Umstieg auf 7.0: MySQL-Problem

Beitrag von DeletedUserReAsG » 11.05.2013 13:32:23

Gut, ich habe für dich in die Doku geschaut:
A very common error is to insert a new entry with Host='%' and User='some_user', thinking that this enables you to specify localhost to connect from the same machine. The reason that this does not work is that the default privileges include an entry with Host='localhost' and User=''. Because that entry has a Host value 'localhost' that is more specific than '%', it is used in preference to the new entry when connecting from localhost! The correct procedure is to insert a second entry with Host='localhost' and User='some_user', or to delete the entry with Host='localhost' and User=''.
Mit anderen Worten: Das ist das normale Verhalten, und Squeeze hatte möglicherweise den zuletzt genannten Eintrag aus irgendwelchen Gründen nicht per default in der Userdatenbank.

cu,
niemand

mod3

Re: Nach Umstieg auf 7.0: MySQL-Problem

Beitrag von mod3 » 11.05.2013 13:49:42

Ok, habe den User nun einfach für localhost angelegt und schon läuft das ;-)
Ich danke euch!

Antworten