概述
一般生產環境都需要定期去做一次mysql數據庫主備切換演練,這里簡單記錄一下,后面再演示一下備份恢復的一些演練工作。
1、查看主庫狀態
show processlist;
Master has sent all binlog to slave; waiting for binlog to be updated
show master status \G

2、查看從庫狀態
show processlist;
show slave status \G

3、從庫停止 IO_THREAD 線程
stop slave IO_THREAD;
show processlist;
show slave status \G

4、從庫切換為主庫
stop slave;
reset master;
reset slave all;
show master status \G

5、激活帳戶
SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%' IDENTIFIED BY 'xxx;
FLUSH PRIVILEGES;

6、切換原有主庫為從庫(原有主庫執行)
reset master;
reset slave all;
CHANGE MASTER TO
MASTER_HOST='1xxx',
MASTER_USER='repl',
MASTER_PASSWORD='xxx,
MASTER_PORT=3306,
MASTER_LOG_FILE='mysql-bin.000001',
MASTER_LOG_POS=589;

7、檢查主庫
SHOW PROCESSLIST;
show master status \G

8、啟動從庫
SHOW PROCESSLIST;
start slave;
show slave status \G

9、MySQL主從測試
9.1插入數據
9.1.1創建測試表並插入數據
mysql> create table test123(id int(4));
Query OK, 0 rows affected (0.01 sec)
mysql> insert into test123 values(1);
Query OK, 1 row affected (0.00 sec)
mysql> insert into test123 values(2);
Query OK, 1 row affected (0.00 sec)
mysql> insert into test123 values(3);
Query OK, 1 row affected (0.00 sec)
mysql> insert into test123 values(4);
Query OK, 1 row affected (0.00 sec)

9.1.2從庫查詢:

9.2 刪除數據
9.2.1主庫刪除表:
mysql> drop table test123;

9.2.2 從庫查詢:
