Mac OS X 10.10 mySQL 5.6.26 accessible depuis CLI mais pas le port 3306

7

J'ai fait une nouvelle installation de mySQL 5.6.26 sur mon Mac aujourd'hui. J'ai pu accéder à mySQL à partir de Terminal.app comme prévu, mais je n'ai pas pu attacher MySQL Workbench au port 127.0.0.1 3306. Ce qui m'a vraiment fait trébucher, c'est que je ne pouvais pas me connecter à ce port même localement (nc -z 127.0. 0,1 3306).

Pour faire court, le volet des préférences système mySQL a créé un démon de lancement pour mySQL sur le port 330 7 . /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist

Je ne sais pas pourquoi c'est ... toutes les autres installations que j'ai faites étaient sur 3306. Même si je laissais tomber une note pour empêcher les autres de creuser inutilement pourquoi le pare-feu d'OS X "bloquait" le port quand il vraiment n'était pas. En outre, il semble que ce LD remplace le port dans my.cnf, même s'il est codé en dur sur 3306.

J'espère que cela t'aides!

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";
}
Sonic84
la source
Oui oui oui. C'est le seul message que j'ai pu trouver qui fait référence au même problème que j'ai eu. J'ai maintenant une idée pourquoi l'installation du serveur de communauté MySQL sur Yosemite est passée par défaut à 3307 sur 3306 mais la suggestion de @ user1527225 ci-dessous l'a corrigé.
Ternary

Réponses:

4

J'ai eu ce même problème aussi, et le changement de port a /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plistrésolu le problème, sans effets secondaires jusqu'à présent.

Changer le port my.cnfn'a pas fonctionné. Il fait dire au volet Préférences que MySQL n'est pas en cours d'exécution et rend impossible le démarrage à partir du volet Préférences .

user1527225
la source
J'ai eu ce problème aujourd'hui et j'ai changé '3307' pour le port conventionnel '3306' dans /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist et cela a apparemment résolu mon problème. Jusqu'ici tout va bien. Si quelqu'un connaît une meilleure solution ou quelque chose de potentiellement mauvais avec ce changement, veuillez en parler!
Computist
0

Essayez ::1et localhostau lieu de 127.0.0.1.

Rick James
la source
0

J'ai exactement le même problème lors de l'exécution de MySQL en tant que service. J'ai également remarqué que si je démarre le serveur manuellement dans le terminal avec

sudo mysqld_safe &

MySQL s'exécute dans le port 3306 comme prévu. Donc, s'il est crucial de le faire fonctionner sur ce port, je recommanderais de démarrer le serveur comme ça.

Je n'ai toujours pas trouvé de raison pour que le service ait ce 3307 comme paramètre et l'ignore my.cnfcomplètement, mais j'imagine que cela se produit pour une raison.

MJV
la source