1、先进入主库进行锁表,注意窗口不要关闭
mysql> flush table with read lock;
2、把数据进行备份
> mysqldump -uroot -p --opt -R 数据库 > /data/bakdb.sql
3、再新开个窗口,查看主数据库信息
mysql> show master status;
+------------------+----------+--------------+------------------+-------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000001 | 1112 | | | |
+------------------+----------+--------------+------------------+-------------------+
4、在从库上停止slave
mysql> stop slave;
5、导入备份的数据文件
mysql> source /data/bak.sql
6、重置同步
mysql> reset slave;
7、重新设置同步节点
mysql> CHANGE MASTER TO
MASTER_HOST='192.168.1.1',
MASTER_PORT=3306,
MASTER_USER='mysync',
MASTER_PASSWORD='123456',
MASTER_LOG_FILE='mysql-bin.000001',
MASTER_LOG_POS=1112;
host,port,user,password请根据你的主库设置相应修改,log_file和log_pos根据主库中master status相应修改。
8、开启slave
mysql> start slave;
9、查看slave状态
mysql> show slave status\G;
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
10、对主数据库解锁
mysql> unlock tables;
11、再次在主库中添加或修改数据,看从库数据是否同步。