2009-07-16 3 views
8

Ich habe auf einen neuen Rechner migriert und den Migrationsassistenten verwendet, um meine Dateien zu kopieren (anscheinend über die DBs), aber ich musste Macports verwenden Mysql zu installieren (während ich das letzte Mal aus der Quelle über Dan Benjamins Guide kompiliert habe). Aus irgendeinem Grund gibt mysql intermittierend den folgenden Fehler aus;Installation von MySQL auf Leopard: "Verbindung zum lokalen MySQL-Server über Socket nicht möglich"

Kann nicht an lokalen MySQL-Server über Socket-Verbindung ‚/opt/local/var/run/mysql5/mysqld.sock‘ (2)

Es tut dies, egal, was ich versuchen, die Einstellung aufgenommen hat, das Socket in /opt/local/etc/mysql5/my.cnf. Zuvor habe ich es geschafft, dies vorübergehend zu beheben, indem ich den Computer neu starte, aber im Moment will es einfach nicht wissen, obwohl Grep mysql mir sagt, dass ich eine Pid habe;

0 46  1 0 0:00.01 ??   0:00.01 /opt/local/bin/daemondo --label=mysql5 --start-cmd /opt/local/etc/LaunchDaemons/org.macports.mysql5/mysql5.wrapper start ; --stop-cmd /opt/local/etc/LaunchDaemons/org.macports.mysql5/mysql5.wrapper stop ; --restart-cmd /opt/local/etc/LaunchDaemons/org.macports.mysql5/mysql5.wrapper restart ; --pid=none 
    0 70  1 0 0:00.01 ??   0:00.01 /bin/sh /opt/local/lib/mysql5/bin/mysqld_safe --datadir=/opt/local/var/db/mysql5 --pid-file=/opt/local/var/db/mysql5/localhost.pid 
74 100 70 0 0:09.22 ??   1:02.68 /opt/local/libexec/mysqld --basedir=/opt/local --datadir=/opt/local/var/db/mysql5 --user=mysql --pid-file=/opt/local/var/db/mysql5/localhost.pid --socket=/tmp/mysql.sock 
501 66217 65266 0 0:00.00 ttys001 0:00.00 grep mysql 

Wie kann ich das beheben? Gibt es irgendwelche Schritte, die ich als nächstes machen kann? Ich versuche es jetzt seit ein paar Wochen und habe alle relevanten Blog-Posts gelesen, also habe ich keine Ideen mehr.

Antwort

15

Dies ist Art und Weise nach der Tat, aber hier ist, was ich tat:

touch /opt/local/var/run/mysql5/mysqld.sock 
vi /opt/local/etc/mysql5/my.cnf 

Fügen Sie die folgenden Zeilen zu my.cnf:

[mysqld_safe] 
socket = /opt/local/var/run/mysql5/mysqld.sock 

[client] 
socket = /opt/local/var/run/mysql5/mysqld.sock 

Dies sollte Ihnen ermöglichen, zu verbinden. Dies funktionierte bei Leopard und Snow Leopard.

+0

für mich gearbeitet, nachdem viele andere Versuche. Einziger Unterschied war, dass ich 'sudo vim' benutzte, um die Datei zu modifizieren. Vielen Dank. –

2

Rob ist korrekt. Siehe diesen Link für ausführlichere Erklärung: https://discussions.apple.com/docs/DOC-3082

Hinweis besonders diesen Kommentar, die auf Ihre Frage betrifft:

Der Standardpfad für den MySQL-Socket nicht geeignet für MacOS X wird, bis es geändert wird, wird MySQL nicht in der Lage zu kommunizieren ...

Also, was Rob sagt (obwohl es für Lion verschieden sein können), und starten sie Ihre MySQL:

sudo launchctl load -w /Library/LaunchDaemons/com.mysql.mysql.plist 

EDIT: Auch diesen Link sehen: http://dev.mysql.com/doc/refman/4.1/en/problems-with-mysql-sock.html

EDIT: Sehen Sie diese Frage: MySQL Server does not start on Raspberry Pi