Multi-instancias en MySQL
La motivación principal por la que tener multi instancia es conseguir con tres servidores una infraestructura que soporte la caida de uno de los nodos pudiendo recuperarse sin downtime alguno, para ello montaremos dos servers en modo MASTER - MATER/SLAVE y el tercero como SLAVE/SLAVE con dos instancias, caiga el server que caiga siempre tendremos un dataset con el que restaurar y enganchar, el escenario es el siguiente:
Creamos el directorio de ficheros de cada instancia:
INSTANCIA="00" mkdir /var/lib/mysql_$INSTANCIA mkdir /var/lib/mysql_$INSTANCIA/tmp chown -R mysql:mysql /var/lib/mysql_$INSTANCIA/
Instalamos los ficheros iniciales:
cd /usr/share/mysql/ ./scripts/mysql_install_db --user=mysql --basedir=/usr/ --datadir=/var/lib/mysql_$INSTANCIA/
Estos pasos se deben repetir para la segunda instancia: 01
Generamos el script de arranque para cada instancia, este sabrá que fichero de config leer en base al nombre del script de arranque.
cp /etc/init.d/mysql /etc/init.d/mysql_00 chmod 755 /etc/init.d/mysql_00 cp /etc/init.d/mysql /etc/init.d/mysql_01 chmod 755 /etc/init.d/mysql_01
Creamos los ficheros de config con las rutas adecuadas para cada instancia, obviamente no podremos utilizar el mismo puerto para ambas instancias.
mkdir /etc/mysql_$INSTANCIA/ vi /etc/mysql_$INSTANCIA/my.cnf port = 3306 port = 3307
Arrancamos y comprobamos que ambas instancias están arrancadas y a la escucha:
/etc/init.d/mysql_00 start /etc/init.d/mysql_01 start netstat -nputa|grep 3306 netstat -nputa|grep 3307
Cambiamos el password de root:
mysqladmin --socket=/var/run/mysqld/mysqld_00.sock -u root password 'PASSWORD' mysqladmin --socket=/var/run/mysqld/mysqld_01.sock -u root password 'PASSWORD'
Conectamos y borramos la base de datos de test:
mysql --socket=/var/run/mysqld/mysqld_00.sock -u root -p mysql> drop database test; mysql --socket=/var/run/mysqld/mysqld_01.sock -u root -p mysql> drop database test;
Con esto ya tendriamos las dos instancias, tan solo debemos enganchar una de ellas al servidor MASTER y la otra al MASTER/SLAVE y ya tendremos el sistema perfecto MySQL-HA.
Multi-instancias en MySQL
Reviewed by PDFREEBOOK
on
10:49
Rating:
Post a Comment