Multiples instalaciones de MySQL en tu PC

Seroquel Without Prescription Prednisone No Prescription VPXL For Sale Stromectol Generic Buy Hoodia Online Elavil Without Prescription Synthroid No Prescription Prozac For Sale Toprol XL Generic Buy Cialis Soft Tabs Online

En algunos casos resulta muy práctico disponer de varias instalaciones de MySQL en tu ordenador. Disponer de varias versiones nos permite comprobar y asegurar la compatibilidad de nuestros programas.

Disponer de varias instalaciones de MySQL en un mismo ordenador puede resultar de gran utilidad. Por ejemplo, si estas desarrollando cierta aplicación que hace uso de MySQL y quieres estar seguro de que funciona correctamente con todas las versiones de MySQL, lo único que puedes hacer para asegurarte de ello es probar tu aplicación con todas y cada una de las versiones de MySQL.

Es obvio que podrías instalar y posteriormente desinstalar tantas versiones de MySQL como quieras comprobar. Pero esto no resulta elegante ni práctico, ya que tendrías que repetir el proceso de instalaciones y desinstalaciones cada vez que quisieras comprobar la compatibilidad de una aplicación. Por lo tanto, la única solución viable es que varias versiones de MySQL coexistan en el mismo ordenador.

Antes de exponer posibles soluciones al problema, debemos tener en cuenta los distintos métodos de configurar el servidor MySQL. La primera de ellas consiste en indicar las variables en la línea de comandos al iniciar el servidor MySQL, los demás métodos se basan en los distintos ficheros de configuración que el servidor MySQL busca cada vez que se inicia.

Para poder ejecutar varios demonios de MySQL simultáneamente cada instalación debe tener ciertos parámetros de configuración especificas. Estos parámetros los especificaremos en lo ficheros de configuración my.cnf situados en el directorio de datos (donde MySQL guarda las bases de datos) de cada instalación de MySQL. Este fichero es uno de los que MySQL busca cada vez que se inicia.

En sistemas Unix, dos demonios no pueden compartir el mismo "PID file" por lo que hay que especificar la variable "pid-file" con un valor distinto en cada instalación.

Supongamos que el directorio base de datos de la instalación A de MySQL es /var/lib/mysql_A (esto se debe definir a la hora de compilar o instalar MySQL), por lo tant0, el fichero /var/lib/mysql_A/my.cnf debería incluir lo siguiente:

[mysqld]
pid-file=/var/run/mysql_408.pid

En caso de la instalación B, el fichero my.cnf, situado en /var/lib/mysql_B/my.cnf, incluiría lo siguiente:

[mysqld]
pid-file=/var/run/mysqld_32354.pid

En sistemas Unix, si usamos sockets como método de conexión local con el servidor MySQL, también tendremos que especificar un socket distinto para cada demonio.

La configuración de la instalación A debería ser similar a lo siguiente:

[mysqld]
pid-file=/var/run/mysqld-A.pid
socket=/var/lib/mysql-A/mysql.sock

Mientras que en la instalación B tendríamos

[mysqld]
pid-file=/var/run/mysqld-B.pid
socket=/var/lib/mysql-B/mysql.sock

En el caso de que usemos TCP (y así permitir la conexión desde hosts remotos) los demonios que se ejecuten simultáneamente tampoco pueden usar el mismo puerto, por lo que debemos especificar un puerto diferente para cada instalación. Para la primera instalación podríamos utilizar el puerto estándar usado por MySQL, el 3306, y para el segundo el puerto 3307.

Añadimos la variable "port" en el fichero de configuración de la instalación A e indicamos el uso del puerto 3306:

[mysqld]
pid-file=/var/run/mysql-A.pid
port=3306

Mientras que en la instalación B usamos el puerto 3307:

[mysqld]
pid-file=/var/run/mysql-B.pid
port=3307

Resulta obvio que dos instalaciones diferentes tampoco pueden usar los mismos ficheros de log, por lo que en caso de que queramos usarlos, tendremos que especificar distintos valores para las siguientes variables:

  • log=path
  • log-bin=path
  • log-update=path
  • log-isam=path
  • bdb-logdir=path

En definitiva, el fichero de configuración de las instalación A podría ser algo así:

[mysqld]
pid-file=/var/run/mysqld-A.pid
socket=/var/lib/mysql-A/mysql.sock
log=/var/lib/mysql-A/log
log-bin=/var/lib/mysql-A/log-bin
log-update=/var/lib/mysql-A/log-update
log-isam=/var/lib/mysql-A/log-isam
bdb-logdir=/var/lib/mysql-A/bdb

Mientras que el de la instalación B sería:

[mysqld]
pid-file=/var/run/mysqld-B.pid
socket=/var/lib/mysql-B/mysql.sock
log=/var/lib/mysql-B/log
log-bin=/var/lib/mysql-B/log-bin
log-update=/var/lib/mysql-B/log-update
log-isam=/var/lib/mysql-B/log-isam
bdb-logdir=/var/lib/mysql-B/bdb

Recordar, que a parte de los ficheros de configuración específicos de cada instalación, ambos servidores buscaran el fichero de configuración principal cada vez que se inician. El fichero de configuración general suele estar situado en /etc/my.cnf es sistemas Unix y en c:/WINDOWS/php.ini sistemas Windows. En este fichero debes incluir los parámetros de configuración que desees que afecten a todas las instalación MySQL del ordenador.

Bueno, por el momento esto es todo y suerte!

Leave a Reply