Ubicación de my.cnf en Windows y Linux

Introducción

No es muy común tener un servidor de MySQL en producción con Windows, sin embargo en esta ocasión tuve que cambiar algunos parámetros de su configuración y no encontraba el archivo my.cnf por lo que veremos cuál es la ubicación de my.cnf en Windows y Linux.

Ubicación de my.cnf en Windows y Linux

En Linux (Debian, Ubuntu y sus derivados)

El archivo está en:

/etc/mysql/my.cnf

Para abrirlo y editarlo podemos ejecutar el comando:

O en lugar da nano usar nuestro editor favorito. Da igual, pero ahí está el archivo de configuración de MySQL.

En Windows con Workbench

Si instalamos MySQL con MySQL WorkBench, el archivo my.cnf está en:

C:\ProgramData\MySQL\MySQL Server [VERSIÓN_AQUÍ]\my.ini

Cambiará dependiendo de tu versión de MySQL. Puede llamarse MySQL Server 5.7 por ejemplo.

Podemos editarlo con cualquier editor de texto plano. Bloc de notas, notepad++, Sublime Text, VSCode, etcétera.

En Windows con XAMPP

Actualización: el archivo para configurar MySQL está en mysql\bin\my.ini. Por ejemplo, si instalamos todo con XAMPP está en C:\xampp\mysql\bin\my.ini. Hay que hacer los cambios ahí, si no funciona entonces sigue leyendo.

Cuando instalamos MySQL con XAMPP (como en este tutorial) el archivo my.cnf no existe, debemos crearlo. Y MySQL sólo nos dice en dónde va a buscarlo.

De hecho el objetivo del post es ese: saber en dónde está el archivo de configuración de MySQL en XAMPP.

Como lo dije, no existe. Pero si ejecutamos MySQL desde la terminal y le pasamos la opción –help (mira el link que dejé arriba para saber cómo agregarlo a la variable PATH) nos dirá en dónde busca los archivos:

Mostrar ubicación de my.cnf en XAMPP
Mostrar ubicación de my.cnf en XAMPP

La salida difiere para cada usuario, por ello es que hay que ejecutar el comando en nuestra PC. A mí me marca la ruta de D:\desarrollo_php porque he puesto ahí XAMPP, en lugar de C:\xampp.

Pero bueno, recomiendo crearlo en la carpeta mysql. Es decir, si instalamos XAMPP entonces va en:

C:\xampp\mysql\my.cnf

Igualmente podemos editarlo con Sublime Text, VSCode, Notepad++ o lo que sea. Eso sí, hay que ejecutar el editor como administrador en caso de que Windows lo tenga protegido.

Por otro lado podemos ponerlo en C:\WINDOWS\my.cnf

Conclusiones

Siempre debemos reiniciar el servidor para que los cambios se reflejen en el mismo.

En XAMPP simplemente abrimos el panel de control del mismo y al servicio de MySQL le damos click a Stop y luego a Start.

En Linux es con el comando:

sudo service mysql restart

 

Referencias

Alguna información que aparece aquí la he tomado de:

https://stackoverflow.com/questions/39822702/location-of-mysql-configuration-file-ie-my-cnf-not-specified

https://stackoverflow.com/questions/4292769/what-is-the-location-of-mysql-client-my-cnf-in-xampp-for-windows

Créditos a los respectivos autores o dueños.

Encantado de ayudarte


Estoy disponible para trabajar en tu proyecto, modificar el programa del post o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.

No te pierdas ninguno de mis posts

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

3 comentarios en “Ubicación de my.cnf en Windows y Linux”

  1. Waldo Christian González

    Hola, estoy intentando hacer una conexión remota desde la PC a una base de datos (servidor MariaDB) ubicada en el mi hosting pero no he podido dar con el archivo mysqld.cnf para editarlo. Definitivamente necesito tu asesoría para aprender. Por supuesto, que te pagaría tus servicios. Desde ya muchas gracias si me puedes ayudar. Saludos cordiales desde Chile. Waldo….

  2. Pingback: Replicación bidireccional de base de datos en MySQL sobre Windows y Linux - Parzibyte's blog

Dejar un comentario