1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

MySQL ist so sicher, dass selbst ich nicht mehr reinkomme!

Dieses Thema im Forum "macOS & OS X" wurde erstellt von Wombat, 16.10.06.

  1. Wombat

    Wombat Gast

    Hallo an alle!

    Ich versuche eine Testumgebung mit MySQL 4.1.21 Standard, PHP und Perl einzurichten. Das lief zuerst auch ohne Probleme. Ich installierte das Paket von MySQL, das StartUpItem und den PrefPane, danach aktivierte ich in der httpd.conf PHP und Perl und testete das Ganze anschliessend. Es lief. Über die Konsole habe ich mich mit mysql, ohne einen Benutzer bzw. ein Passwort anzugeben, angemeldet. Anfangs existieren ja nur zwei Konten: eins für root, eins ohne Benutzername und alle ohne Passwort.

    Hätte ich das mal so gelassen, dann würde ich diesen Beitrag jetzt nicht schreiben ...
    :mad: :mad: :mad:

    Genau wie im Handbuch unter dem Kapitel Securing the initial MySQL Accounts beschrieben, habe ich mit folgendem Befehl das Konto ohne Benutzernamen gelöscht:
    Fantastisch, ein Konto weniger. Danach habe ich gleich noch dem Benutzer root ein Passwort verpasst - hätte ich das mal lieber gelassen ...
    MySQL gab überraschenderweise die Nachricht zurück, dass keine einzige Zeile von meinem Kommando betoffen wären (0 rows affected ...)

    Gut. Dann habe ich es mit folgendem Befehl versucht, der ebenfalls im MySQL Handbuch steht:
    Prima, nichts passierte, aber dafür lässt MySQL mich jetzt nicht mehr mit dem Befehl mysql einloggen. Daraus könnte man ja schlussfolgern, dass er nun doch ein Passwort gesetzt hat. Also habe ich das gleich mal ausprobiert:
    Als Belohnung erhalte ich ein
    Jede andere Variation wie 'mysql -uroot -p' etc. schlagen selbstverständlich auch fehl. Nun gut, dachte ich, setze ich das Passwort wieder zurück ... Ich bin also wieder nach dem Handbuch vorgegangen, um das Passwort von root zurückzusetzen und wieder mit dem selben Erfolg. Nichts.

    Gut, habe ich also die MySQL Installation mit sudo rm -Rv /usr/local/mysql ins Jenseits befördert. Das gleiche Schicksal ereilte dem StartUpItem.

    Wenn ich nun MySQL erneut installiere, dann steht auf dem Button nicht mehr Installieren zum Bestätigen, sondern es steht da jetzt Aktualisieren, was die Vermutung zulässt, dass nicht alles restlos entfernt worden ist und noch irgendwo Dateileichen herumliegen müssen, die dem Paket sagen, dass ich MySQL schon mal installiert hatte.

    Wenn die neue Installation dann vollbracht ist, habe ich das gleiche Problem wie vorher: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES).

    Ich muss ganz ehrlich sagen, dass ich mir keiner Schuld bewusst bin und hier so vor mich hindampfe vor Wut. Unter Linux war eine lokale Testumgebung innerhalb weniger Minuten installiert. Ich hätte jetzt ums Verrecken gerne dieses blöde MySQL installiert und würde mich wirklich glücklich schätzen, wenn wir mal ohne Socket-Probleme oder Passwort-Geschichten auskommen könnten.

    Zeigt mir mal jemand den güldenen Weg zum Erfolg?

    Vielen Dank im voraus an den/die holden Retter,
    Wombat
     
  2. wolfsbein

    wolfsbein Jerseymac

    Dabei seit:
    29.06.05
    Beiträge:
    448
    Ich kann dein Problem nicht nachvollziehen, da ich die Sicherung genau so gemacht habe. Es kann aber sein, dass du irgendwo eine .mysql Datei hast, die sich das gemerkt hat. Bei mir gibt es mehrere .mysql Dateien und dann noch ein paar Sachen in der Library. Hast du das alles auch geloescht?
     
  3. Wombat

    Wombat Gast

    Ich habe schon nach Dateien gesucht wie eine Verückte, aber ich durchforste ohnehin gerade meine Festplatte und werde sehen, ob ich noch etwas finden kann ...

    Danke jedenfalls. Mal zu hören, dass es bei einem geklappt hat, macht mir wieder Mut.

    Viele Grüsse,
    Wombat
     
  4. Hilarious

    Hilarious Gelbe Schleswiger Reinette

    Dabei seit:
    10.08.05
    Beiträge:
    1.759
    Wombat, keine Panik :D

    Auch dafür hat MySQL einen Ausweg vorgesehen. Du musst den Server dazu stoppen und mit dem Zusatz "--skip-grant-tables" starten.

    Wie das geht, habe ich mal eben ergoogelt, allerdings läuft das auf einem Mac ein wenig anders (dies hier ist der Weg auf einem RedHat-Linux):
    http://www.linuxquestions.org/linux/answers/Security/MySQL_root_password_recovey

    Dies müsste der Weg auf Mac OS X sein, vorausgesetzt, Du hast die Standard-Distribution von MySQL.com verwendet und keine andere:
    Code:
    $ su -
    Password:
    Mac:~ root# /Library/StartupItems/MySQLCOM/MySQLCOM stop
    Stopping MySQL database server
    Mac:~ root# /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/usr/local/mysql/data --skip-grant-tables
    ...
    
    So müsste es gehen ;) Anschließend Server wieder beenden und regulär neu starten, wenn Du die Benutzertabellen wieder im Griff hast.
     
  5. Wombat

    Wombat Gast

    Vielen Dank Hilarious. Ich weiss, Du kennst Dich mit MySQL aus. Ich hatte das auch schon in der Dokumentation gelesen und ausprobiert bevor ich meinen Beitrag geschrieben habe. Die MySQL-Mailingliste habe ich dazu auch befragt, aber wie gesagt, es hat nicht hingehauen. Ich muss irgendeinen Fehler gemacht haben. Es ist einfach nicht vorstellbar, dass MySQL (Standard, von mysql.com heruntergeladen) auf Mac OS X nicht so läuft wie sonst. Andere haben es ja auch und bei mir lief es auch schon mal.

    Da aber leider die Zeit drängte und ich nicht länger warten wollte/konnte, habe ich mein iBook einfach komplett neu aufgesetzt. Ich hatte vorher schon mehrmals versucht, MySQL zu deinstallieren, indem ich alle Dateien gelöscht habe, aber es funktionierte nicht. Der Installierer erkannte jedes Mal, dass ich das Programm schon mal installiert hatte (wenn man die Packages aus /Libraries/Receipts löscht erkennt er es nicht mehr, aber mein Problem blieb bestehen), bzw. übernahm irgendwelche Einstellungen von was-weiss-ich-woher. Ich hatte jedesmal wieder das selbe Problem. Also habe ich alles neu installiert und jetzt läuft alles wie es soll. Es hat mich etwas mehr als 1 Stunde gekostet sowohl das Betriebsystem als auch alle Programme zu installieren, inklusive Preferences.

    Es ärgert mich nur wahnsinnig, dass ich nicht mehr herausbekommen habe, was die Ursache für das Problem war. :-c Ich habe meine MySQL Installation jetzt ganz jungfräulich auf dem System laufen - ohne Passwort. Vielleicht fasse ich in den nächsten Tagen den Mut, ein Passwort zu vergeben. :eek:

    Vielen Dank für Eure Hilfe und viele Grüsse aus Madrid,
    Wombat
     
  6. Schau dir einmal MAMPP (ich verwende nur MAMP ohne Perl, habe fuer MAMPP jetzt auch kein Downloadlink aber es gibt es) oder XAMPP an. MAMP finde ich persoenlich sehr komfortabel (ja auch wenn die Haelfte an Software schon mit dem OS X kommt).
     
  7. Wombat

    Wombat Gast

    Hallo Soul Monkey!

    Ich bin generell jemand, der es lieber mit den 'Bordmitteln' versucht - soweit vorhanden - als noch zusätzlich etwas zu installieren. Es ist an sich sehr einfach, sich auf dem Mac eine Testumgebung einzurichten.

    Aber für alle, die es interessiert: MAMP und XAMPP für Mac OS X.

    Viele Grüsse und vielen Dank,
    Wombat
     
  8. tjp

    tjp Baldwins roter Pepping

    Dabei seit:
    07.07.04
    Beiträge:
    3.250
    Ohje, hält jetzt das typische Windows-Problemlösungverfahren auch auf Macs Einzug?

    Wenn Du Probleme mit der Datenbank hast, kannst Du das lösen in dem Du die DB Dateien löschst und sie mit dem Admin-Programm wieder anlegst. Wenn die DB Files auch der Platte verblieben sind, brauchst Du Dich nicht darüber zu wundern, daß deine "ich lösche einfach irgend was ohne zu wissen ob das sinnvoll ist" Aktion fehlschlug. Mit dem Befehl "ps alx" kannst Du auf dem Terminal sehen mit welchen Optionen, die Programme im Hintergrund gestartet wurden (nicht nur die). Zum Beispiel sieht man bei mir folgende Zeile
    Code:
      UID   PID  PPID CPU PRI NI      VSZ    RSS WCHAN  STAT  TT       TIME COMMAND
      401   174     1   0  31  0    34156    296 -      S     ??    0:00.74 /Library/PostgreSQL8/bin/postmaster -D /Library/PostgreSQL8/data -i
    
    in der Ausgabe. Ich benutze PostgreSQL und hier sieht man sehr schön, daß das Programm mit der Option "-D /Library/PostgreSQL8/data" gestartet wurde. Hat man so ein Problem wie Du es beschreibst, Server anhalten, Dateien löschen, DB Cluster neuanlegen und Server wieder starten.

    P.S. Hilfreich ist es in so Situationen die Nerven zu behalten und die Doku in Ruhe durchzulesen. Egal wieviel Streß gerade herrscht.
     
    1 Person gefällt das.
  9. Hilarious

    Hilarious Gelbe Schleswiger Reinette

    Dabei seit:
    10.08.05
    Beiträge:
    1.759
    Kurz: MAMP oder XAMPP sind unnötig, denn MySQL AB (mysql.com) gibt es Doppelklick-und-Glücklich-PKGs für jeden Mac. Manchmal sind Fremddistributionen sogar problematisch.

    Lang: Steht hier.

    Viel Erfolg weiterhin, wombat!
     
  10. Wombat

    Wombat Gast

    Ja, das ist wohl immer die Lösung, wenn man es nicht besser weiss.

    Danke für diese ausführliche Hilfe. Sehr brauchbar.

    Habe ich. Was ich gemacht habe, beschrieb ich glaube ich schon (Passwort zurücksetzen).

    Vielen Dank! Jetzt geht es ja wieder. Und sollte noch mal was schief gehen, dann habe ich ja schon ein paar Tipps bekommen ...

    Viele Grüsse,
    Wombat

    PS. Ich hatte leider nicht so viel Zeit und habe deshalb erst jetzt geantwortet.
     

Diese Seite empfehlen