Hay situaciones en las que necesitamos tener mas de una versión ´viva´ de MySQL funcionando. En mi trabajo por ejemplo tengo que mantener la 4 y la 5 simultáneamente. ¿Como puede hacerse esto?
Solo hay que tener en cuenta dos cosas: El nombre del Servicio MySQL y el Puerto TCP de escucha del mismo. Mientras ambos sean distintos podemos tener tantos servidores MySQL en el mismo Windows como queramos.
Desde la versión 5 el configurador MySQLInstanceConfig.exe nos permite elegir ambos parámetros, realizar dos instalaciones sucesivas seleccionando los dos distintos es la forma mas fácil de conseguir lo que deseamos. Hacerlo con una instalación ya realizada anteriormente es algo mas complicado pero también se puede.
El más facil de establecer es el Puerto TCP de escucha ya que solo hay que detener el servicio, cambiar una línea en el fichero mysql.ini e iniciar de nuevo el servicio.
Para eso entramos en Herramientas Administrativas de Windows y en la opción Servicios. Alli buscamos el servicio, que se llamará MySQL (ó MySQL4 ó MySQL51 o algo así pero siempre empezando el nombre por MySQL-lo-que-sea). Con él seleccionado pulsamos sobre Detener y el servicio dejará de funcionar.
Si conocemos el nombre del servicio MySQL podemos tambien detenerlo mediante una linea de comandos, para ello abrimos una sesión de consola (Inicio / Ejecutar / cmd) y escribimos:
C:\MySQL5\Server\bin\>net stop MySQLxxx Esto es hacer lo mismo pero de otra forma. Una vez detenido el servicio podemos modificar el Puerto TCP de escucha.
Así si queremos que un servidor concreto escuche el puerto 3307, en lugar del habitual 3306, tendremos que modificar esta línea del fichero mysql.ini :
[client]port=3307 Arrancamos de nuevo el servicio desde Herramientas Administrativas / Servicios pulsando sobre Iniciar y ya tenemos a nuestro MySQL escuchando el nuevo puerto.
O bien, de igual forma que antes y solo si conocemos el nombre del servicio MySQL, podemos tambien iniciarlo mediante una linea de comandos, para eso abrimos una sesión de consola (Inicio / Ejecutar / cmd) y escribimos:
C:\MySQL5\Server\bin\>net start MySQLxxx Podemos ya instalar otro MySQL y utilizar para éste el puerto estándar 3306 o reasignarlo a otro distinto tal como hemos descrito.
Cambiar el nombre del Servicio es algo mas complejo ya que tenemos que des-registrar el Servicio del Windows y volver a registrarlo pero con el nuevo nombre que queremos.
Para poder des-registrar el Servicio del Windows primero tenemos que detenerlo como hemos visto mas arriba.
Una vez detenido abrimos una sesión de consola y nos situamos en el directorio CD C:/MySQL/bin (o el correspondiente /bin según vuestro directorio de instalación).
Y ahora escribimos la orden para des-registrar el Servicio:
C:\MySQL5\Server\bin\mysqld --remove MySQLxxx Con esto le hemos dicho a Windows que se "olvide" del Servicio de MySQL, y ahora no tenemos mas que volver a registrarlo pero dándole un nuevo nombre (e indicándole donde se encuentra el fichero mysql.ini que debe utilizar):
C:\MySQL5\Server\bin\mysqld --install MySQLyyy --defaults-file="C:\MySQL5\Server\my.ini" Y ya está, ahora solo tenemos que iniciar de nuevo el servicio y tendremos cambiados tanto el nombre como el puerto del mismo:
C:\MySQL5\Server\bin\>net start MySQLyyy O hacerlo vía Herramientas Administrativas / Servicios que es lo mismo.
Haciendo esto con cada instalación sucesiva de MySQL tenemos todos los servidores que necesitemos.
A partir de ahí ya sabéis: El Host puede ser 192.168.1.150:3306 ó 192.168.1.150:3307 para conectar con un MySQL o con el otro. (192.168.1.150 es por ejemplo la IP de mi Servidor)
Volver