PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : mysql root passwor vergessen



jumanji
02.08.03, 01:37
Ich habe wohl einen Anfängerfehler mit mysql gemacht :( Ich habe einen neuen Benutzer mit allen Rechten angelegt und root eines neues Passwort gegeben, nur bekomme ich immer folgende Fehlermeldung:

DBI connect failed : Access denied for user: '@localhost' to database 'mysql'


Ich habe mysql deinstalliert und neu installiert, brachte nichts.
Weiter habe ich die Verzeichnisse unter /var/lib/mysql/ gelöscht, dann mysql_install_db eingegeben, danach den mysqld wieder gestartet und root Passwort neu gesetzt, kam immer noch obige Meldung.

Zuletzt habe ich dann mysqld --user=mysql --skip-networking --skip-grant-tables &
su - mysql -c "mysqladmin --user root password 'NeuesPW' eingetippt und brachte auch nichts :(

Hat jemand noch eine Idee und kann mir helfen?

Danke im Voraus,

jumanji

Minots
06.08.03, 06:03
Ich denke mal, dass es daran liegen könnte keinen Benutzer
bei der SQL-Anfrage deviniert zu haben.

DBI connect failed : Access denied for user: '@localhost' to database 'mysql'
Wäre ein Benutzer angegeben (z.B. root), müsste die Fehlermeldung ungefähr so aussehen.:


DBI connect failed : Access denied for user: 'root@localhost' to database 'mysql'

Viele Grüße,

jumanji
06.08.03, 10:03
HI,

ich bekomme diese Meldung immer, wenn ich dem root von Localhost ein Passwort vergeben habe. Wenn ich diesem kein Passwort vergebe, kann ich auf die DB zugreifen.

Gruß,

jumanji

Stanislaus
06.08.03, 10:32
jo kenn ich. Scheint ein Fehler o.ä. zu sein.
Wenn ich meine lokale MySQL über localhost anspreche komme ich nur drauf wenn ich kein Passwort angebe. Nehme ich stattdessen die LAN IP MUSS ich das Passwort wiederrum angeben.

Ist seltsam aber wahr.

jumanji
06.08.03, 10:36
Hi,

dann scheint das wirklich ein Bug zu sein. Ich kann root in der DB ja nicht ohne Passwort lassen. Was gibst Du dann ein, um die DB via IP zu erreichen. Ich beschäftige mich gerade neu mit mysql und sitze hier mit einer dicken Schwarte von Buch, welches etwas undurchsichtig ist ;(

Gruß,

jumanji

Stanislaus
06.08.03, 11:16
Was gibst Du dann ein, um die DB via IP zu erreichen.
Kann ich jetzt gerade nicht nachgucken es war AFAIK der Parameter --host oder -h.
Guck einfach mal was Dir mysqladmin --help ausgibt.

Oder habe ich Dich jetzt falsch verstanden?

jumanji
06.08.03, 11:34
Hi,

ist schon richtig verstanden.

Ich habe die Eingabe via ssh versucht:
mysqladmin -h IP -u username -p passwort db-name
Es wird dann zwar nach einem PW gefragt, dann kommt aber immer access denied for xxxx bzw. unbekannter Befehl db-name.

Anscheinend ist die Reihenfolge des Befehls nicht richtig.

Via Webmin, kann ich die DB editieren, aber das soll ja nicht die Regel sein.

Gruß,

jumanji

Stanislaus
06.08.03, 11:54
Also db-name ist kein gültiger Befehl für mysqladmin

mysqladmin -u username -h LAN-IP -p version

fragt mich nach einem pass und spuckt dann die MySQL Version aus.

Da Du den DB Namen übergibst gehe ich davon aus, daß Du die SQL-Kommadozeile starten willst.
Wenn dem so sein solllte ist nicht mysqladmin sondern einfach nur mysql das was Du suchst:

mysql -u username -p -h LAN-IP db-name

Viel Erfolg!

Minots
06.08.03, 14:10
Dann überprüft doch mal die Einträge in der Tabelle "user" aus der Datenbank "mysql".