travelfreak
03-07-2002, 21:49
Hi,
durch unglückliche Umstände bekomme ich beim start der db eine Fehlermeldung:
# Starting mysql daemon with databases from /var/lib/mysql failed
Hintergrund:
Irgendwie hab ich es geschafft, daß sich keine Benutzer mehr connecten konnten. Auch Root wurde der Zugriff verweigert, das ganze geschah mit dem phpmyadmin.
Hab dann mysql deinstalliert und wieder neu.
Jetzt diese Meldung beim starten.
Welche Möglichkeiten hab ich, das Ding wieder zum laufen zu bringen ??
Läuft unter SUSE 8.0.
Besten Dank
Marcus
Hmm. Gibt es denn in /var/lib/mysql die Datenbank "mysql" und enthält diese die Tabellen "db", "func", "host", "tables_priv" und "user"? Was sagt myisamchk (oder wie das hiess), wenn du es über diese Tabellen laufen lässt?
travelfreak
03-07-2002, 23:43
Hi,
ja, die gibt es alle unter /var/lib/mysql/mysql/
Gibts eine Möglichkeit der vollständigen de-installtion
und neu-installation. Waren alles nur Test-Datenbanken.
Gruß
Marcus
Vielleicht kann dir zur Deinstallation einer unserer Linux-Gurus weiterhelfen. Ich als mittelmässig Linux-Begabter hab mit diesem Biest schon viele viele Stunden verbraten (vor allem mit den scheiss-Privileges) :dontknow:
Du solltest aber nochmal in die Logs gucken, vielleicht ist das alles gar nicht nötig. Ist "Starting mysql daemon with databases from /var/lib/mysql failed" wirklich das einzige, was an Information rauskommt? Da müsste doch irgendwo noch genaueres stehen... Schau mal in die /var/log/mysqld.log, ob da nicht noch mehr drinsteht.
Dann: Gehören die Datenbanken (=Verzeichnisse) alle dem richtigen Benutzer (bei mir mysql)?
@pekka: hostname.err meinst Du wohl ... :D
rpm -e ... :) ... allerdings bau ich mir meine MySQL immer selber ... und da weiß ich dann welche Verzeichnisse weg müssen ... allerdings würde ich wirklich erstmal in die 'hostname.err' schauen ... wobei hostname natürlich der Name Deines Hosts ist ... :teach:
travelfreak
04-07-2002, 19:56
Hi,
die mysqld.log sieht folgendermaßen aus:
020702 21:48:09 mysqld started
020702 21:48:09 /usr/sbin/mysqld: Can't open file: 'user.MYD'. (errno: 13)
020702 21:48:09 /usr/sbin/mysqld: Normal shutdown
020702 21:48:09 mysqld ended
020702 21:57:03 mysqld started
020702 21:57:03 /usr/sbin/mysqld: Can't open file: 'user.MYD'. (errno: 13)
020702 21:57:03 /usr/sbin/mysqld: Normal shutdown
020702 21:57:03 mysqld ended
Eine hostname.err habe ich sonst nicht gefunden, wo soll denn die sein ??
Er kann das user.MYD nich öffnen. In einem anderen Forum wurde wir empfohlen, den Inhalt zu löschen, mysql wieder zu starten. Sie meinten, mysql legt dann wieder Default Werte fest.
Dem war wohl nicht so. Habe aber vorher ein Backup angelegt und alles wieder im nachhinein zurückkopiert. Geht aber immer noch nicht.
BEsten DAnk für eure hilfe,
gruß
marcus
Schwer nachzuvollziehen Deine unglücklichen Umstände und wie es dazu kam ... wie und was Du gemacht hast weißt Du ja in etwa und deshalb empfehle ich Dir ein wenig auf www.mysql.com rumzustöbern. Es fallen Dir sicher einige Suchbegriffe ein:
How to Reset a Forgotten Root Password (http://www.mysql.com/doc/R/e/Resetting_permissions.html)
How to Repair Tables (http://www.mysql.com/doc/R/e/Repair.html)
Hast Du geprüft ob die Datei vorhanden ist ...
Ob die Berechtigungen richtig gesetzt sind ...
Hast Du mal 'nen myisamchk -c user.MYI drüberlaufen lassen?
travelfreak
04-07-2002, 23:35
Hi,
tatsächlich waren die Rechte auch /mysql falsch,
owener war nicht mysql sondern root.
Kann die db also jetzt wieder starten.
Bleibt nur das mit dem Password und dem connecten.
Aber dazu werd ich mir morgen mal das TUT auf mysql.com
durchlesen.
Besten Dank
Marcus
Mit der Beschreibung How to Reset a Forgotten Root Password (http://www.mysql.com/doc/R/e/Resetting_permissions.html) sicher kein Problem.