Sample docker test mysql replication

DenMaSeno ed9bb9fa2f dev преди 8 години
master ed9bb9fa2f dev преди 8 години
slave ed9bb9fa2f dev преди 8 години
clean.sh 89b985f310 dev преди 8 години
docker-compose.yml ed9bb9fa2f dev преди 8 години
readme.md 097041b77a dev преди 8 години
run.sh 89b985f310 dev преди 8 години
status-master.sh 889835748e dev преди 8 години
status-slave.sh 889835748e dev преди 8 години
test.sql 1e3e3c34dc init version преди 8 години

readme.md

MYSQL REPLICATION TEST

BUILD:

docker-compose build

RUN DOCKER:

docker-compose up

Check master status:

./status-master.sh

result:

+------------------+----------+--------------+------------------+-------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000003 |      154 | xbrlgen      |                  |                   |
+------------------+----------+--------------+------------------+-------------------+

make sure File is "mysql-bin.000003" IF NOT RUN SQL ON SLAVE:

CHANGE MASTER TO MASTER_HOST='mysql-master', MASTER_USER='replica', MASTER_PASSWORD='duren123', MASTER_LOG_FILE='mysql-bin.000003', MASTER_LOG_POS=0;

Then restart slave

docker restart mysql-slave

Check slave status:

./status-slave.sh

make sure no error (Last_IO_Error and Last_SQL_Error)

Check master data:

docker exec -ti mysql-master mysql -u root --password=dodol123 xbrlgen

run sql:

SHOW TABLES;

make sure no table exists

Check slave data:

docker exec -ti mysql-slave mysql -u root --password=dodol123 xbrlgen

Run sql:

SHOW TABLES;

make sure no table exists

Run test sql on master:

docker exec -i mysql-master mysql -u root --password=dodol123 xbrlgen < test.sql

Check slave data:

docker exec -ti mysql-slave mysql -u root --password=dodol123 xbrlgen

Run sql:

SHOW TABLES;

make sure table DATA1 exists

SELECT * FROM DATA1;

make sure table DATA1 is not empty

Check replication status:

./status-master.sh

check the Position

./status-slave.sh

check Exec_Master_Log_Pos equal with

Switch master/slave

On slave:

STOP SLAVE;
RESET SLAVE ALL;

On master:

xxxx TODO xxxx

CLEAN-UP:

docker-compose rm -f