Mac OS X 10.10 mySQL 5.6.26 ist über die CLI zugänglich, jedoch nicht über Port 3306


7

Ich habe heute eine Neuinstallation von mySQL 5.6.26 auf meinem Mac durchgeführt. Ich konnte wie erwartet von Terminal.app aus auf mySQL zugreifen, konnte jedoch meine mySQL-Workbench nicht an den 127.0.0.1-Port 3306 anschließen. Was mich wirklich auslöste, war, dass ich nicht einmal lokal eine Verbindung zu diesem Port herstellen konnte (nc -z 127.0). 0,1 3306).

Kurz gesagt, im Einstellungsbereich des mySQL-Systems wurde ein Start-Daemon für mySQL auf Port 330 7 erstellt . /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist

Ich bin mir nicht sicher, warum dies so ist ... jede andere Installation, die ich durchgeführt habe, war auf 3306. Nur obwohl ich eine Notiz hinterlassen würde, um andere davon abzuhalten, unnötig zu untersuchen, warum die Firewall von OS X den Port "blockierte", wenn es wirklich so war war nicht. Es scheint auch, dass diese LD den Port in my.cnf überschreibt, selbst wenn sie fest auf 3306 codiert ist.

Hoffe das hilft!

bash-3.2# defaults read /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist 
{
    Disabled = 0;
    ExitTimeOut = 600;
    GroupName = "_mysql";
    KeepAlive = 1;
    Label = "com.oracle.oss.mysql.mysqld";
    LaunchOnlyOnce = 0;
    ProcessType = Interactive;
    Program = "/usr/local/mysql/bin/mysqld";
    ProgramArguments =     (
        "/usr/local/mysql/bin/mysqld",
        "--user=_mysql",
        "--basedir=/usr/local/mysql",
        "--datadir=/usr/local/mysql/data",
        "--plugin-dir=/usr/local/mysql/lib/plugin",
        "--log-error=/usr/local/mysql/data/mysqld.local.err",
        "--pid-file=/usr/local/mysql/data/mysqld.local.pid",
        "--port=**3307**"
    );
    RunAtLoad = 1;
    SessionCreate = 1;
    UserName = "_mysql";
    WorkingDirectory = "/usr/local/mysql";
}

Ja Ja Ja. Dies ist der einzige Beitrag, den ich finden konnte, der auf dasselbe Problem verweist, das ich hatte. Ich habe jetzt eine Idee, warum die Installation des MySQL Community Servers auf Yosemite standardmäßig 3307 über 3306 war, aber der unten stehende Vorschlag von @ user1527225 hat dies behoben.
Ternary

Antworten:


4

Ich hatte das gleiche Problem auch und das Ändern des Ports in /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plistbehebt das Problem, ohne Nebenwirkungen bis jetzt.

Das Ändern des Ports my.cnfhat nicht funktioniert. Dadurch wird im Einstellungsbereich angezeigt , dass MySQL nicht ausgeführt wird, und es ist unmöglich, vom Einstellungsbereich aus zu starten .


Ich hatte dieses Problem heute und habe '3307' in /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist auf den herkömmlichen Port '3306' geändert, und es hat anscheinend mein Problem behoben. So weit, ist es gut. Wenn jemand eine bessere Lösung oder etwas möglicherweise Schlechtes mit dieser Änderung kennt, melden Sie sich bitte!
Computist


0

Ich habe genau das gleiche Problem, wenn ich MySQL als Dienst ausführe. Mir ist auch aufgefallen, dass wenn ich den Server manuell im Terminal mit starte

sudo mysqld_safe &

MySQL läuft wie erwartet in Port 3306. Wenn es also wichtig ist, dass es in diesem Port ausgeführt wird, würde ich empfehlen, den Server so zu starten.

Ich habe immer noch keinen Grund gefunden, warum der Dienst diesen 3307 als Parameter verwendet und my.cnfvollständig ignoriert, aber ich stelle mir vor, dass dies aus einem bestimmten Grund geschieht.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.