-
Notifications
You must be signed in to change notification settings - Fork 7
Todo
Nicola Strappazzon Carotenuto edited this page Mar 24, 2019
·
1 revision
- Asegurarse que cada host tenga los mismos datos.
- El master y candidato a co-master debe tener configurado:
- CHANGE MASTER TO MASTER_USER = 'repl', MASTER_PASSWORD = 'repl';
- CO-Master1:
- SET GLOBAL auto_increment_increment = 2;
- CO-Master2:
- SET GLOBAL auto_increment_increment = 2;
- SET GLOBAL auto_increment_offset = 2;
- SET GLOBAL read_only = OFF;
- Establecer la replicacion.
- Revisar la configuracion de cada CO-Master.
- Revisar en el ProxySQL que esta en el grupo de write y que esta llegando trafico y no hay errores. SELECT * FROM main.mysql_servers; SELECT * FROM stats_mysql_connection_pool;
- Desactivar en el ProxySQL el host deseado, uno de los co-master.
UPDATE main.mysql_servers SET
status
= 'OFFLINE_SOFT' WHERE hostname = '172.16.238.2'; LOAD MYSQL SERVERS TO RUNTIME; - Consultar en el ProxySQL que ya no hay trafico entrante en el host marcado como OFFLINE_SOFT. SELECT * FROM stats_mysql_connection_pool;
- Retirar la instancia.
make up
make load_schema
docker exec -it mysqlsandbox_mysql_1 mysql -e "
CHANGE MASTER TO MASTER_USER = 'repl', MASTER_PASSWORD = 'repl';
SET GLOBAL auto_increment_increment = 2;"
make scale numbers=2
docker exec -it mysqlsandbox_mysql_2 mysql -e "
SET GLOBAL auto_increment_increment = 2;
SET GLOBAL auto_increment_offset = 2;
SET GLOBAL read_only = OFF;
"
docker exec -it mysqlsandbox_mysql_1 mysql -e "SHOW VARIABLES LIKE 'auto_increment_%';"
docker exec -it mysqlsandbox_mysql_2 mysql -e "SHOW VARIABLES LIKE 'auto_increment_%';"
# le decimos al orchestator que cree el co-master y le definimos permiso de
# escritura al segundo co-master
docker exec -it mysqlsandbox_proxysql_1 /bin/mysql -h 127.0.0.1 -u admin -padmin -P 6032 -e "SELECT * FROM main.mysql_servers;"
docker exec -it mysqlsandbox_proxysql_1 /bin/mysql -h 127.0.0.1 -u admin -padmin -P 6032 -e "SELECT * FROM stats_mysql_connection_pool;"
make scale numbers=5
make stresstest
docker exec -it mysqlsandbox_proxysql_1 /bin/mysql -h 127.0.0.1 -u admin -padmin -P 6032 -e "
UPDATE main.mysql_servers SET status = 'OFFLINE_SOFT' WHERE hostname = '172.16.238.2';
LOAD MYSQL SERVERS TO RUNTIME;
"
docker stop mysqlsandbox_mysql_1
docker stop mysqlsandbox_mysql_2