MySQL se une al puerto 3307, no al puerto 3306

9

Estoy ejecutando OS X Yosemite 10.10.5 en una Mac Mini de finales de 2014. Es mi servidor de desarrollo. Acabo de instalar MySQL en esta máquina: 'mysql --version' informa que la versión es 'mysql Ver 14.14 Distrib 5.6.26, para osx10.8 (x86_64) usando el envoltorio EditLine'. Sin embargo, definitivamente descargué e instalé la versión "OS X 10.9" (solo volví a verificar el archivo DMG).

De todos modos, estoy tratando de hacer que el producto escuche en el puerto 3306 de forma normal y tengo algunas dificultades para que lo haga. Por defecto, parece estar vinculado al puerto 3307, incluso cuando my.cnf se ve así:

[mysqld]
bind-address = 0.0.0.0
port         = 3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

(la última línea ya estaba en la predeterminada en / usr / local / mysql /)

mirando el proceso en ejecución puedo ver que la línea de comando (ps ax | grep mysql) se ha dado como 3307:

40958   ??  Ss     0:00.38 /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

(Estoy comenzando y deteniéndolo actualmente con el panel de preferencias del sistema MySQL que no está directamente fuera de la línea de comandos)

Para acceder desde el cliente, debo configurar explícitamente el puerto en la línea de comando

$ mysql -u smcphee -h 192.168.x.x -P 3307 -p

Para las patadas, edité my.cnf para especificar algún otro puerto aleatorio. El servidor todavía está vinculado al puerto 3307. No puedo encontrar ningún otro my.cnf en el disco en ningún lugar que pueda anularlo.

¿Que esta pasando aqui?

escocés
fuente

Respuestas:

10

¿Puede intentar verificar si el siguiente archivo existe en su máquina?

/Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist

Compruebe si el puerto está definido en 3307, si esto es cierto, cambie a 3306 y reinicie el servicio.

Victor Marroquin
fuente
Si, si lo hace. Y tiene esta línea: <string> --port = 3307 </string> ¿Por qué haría eso por defecto?
scot
1
Supongo que esto sucede porque este archivo inicia el servicio, no estoy seguro, pero tal vez si eliminas la línea, el servicio toma el puerto en el my.cnfarchivo.
Victor Marroquin
Oh si por supuesto. por "por qué" quise decir por qué instalaría el archivo con ese valor en lugar del esperado, sensible y predeterminado. (Supongo, por supuesto, que el paquete de instalación ha instalado el demonio de lanzamiento ... porque ¿qué más tendría?)
scot
1

Esto debe tener algo que ver con el panel de preferencias del sistema MySQL y la forma en que inicia el servidor. Deshabilité y eliminé el panel de preferencias. Cuando inicio / detengo el servidor usando 'mysqld_safe' en la línea de comando, usa el puerto especificado en my.cnf.

escocés
fuente