Centos Mysql 主从备份
1、主库
设置 my.cnf
server_id = 2 必须唯一
binlog-do-db = abo-assist 备份的数据库
log-bin=mysql-bin 开启 binlog
创建同步账号并授权
CREATE USER 'repl'@'%' IDENTIFIED WITH 'mysql_native_password' BY '123456';
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%';
flush privileges;
2、备份主库数据库,一定要带上 master-data
mysqldump -uroot -p --insert-ignore --single-transaction --databases coin --master-data=1>/var/lib/mysql/XXX.sql
3、从库导入数据并记下 master_log_file 与 master_log_pos 的位置,参考下图
使用 rsync传输
rsync -avzP -e "ssh -p 2222" /local/path/ user@1.1.1.1:/remote/path/
从库导入:
mysql -uroot -p
//先去掉外键检查
SET FOREIGN_KEY_CHECKS = 0;
SET UNIQUE_CHECKS = 0;
mysql -u user -p database_name < file.sql
//启用外键检查
SET FOREIGN_KEY_CHECKS = 1;
SET UNIQUE_CHECKS = 1;
2、从库
server_id = 10 必须唯一
3、开启主从同步(从库上操作)
mysql> stop slave;
mysql>
CHANGE REPLICATION SOURCE TO SOURCE_HOST='x.x.x.x', SOURCE_USER='rep', SOURCE_PASSWORD='123456', SOURCE_PORT=3306, SOURCE_LOG_FILE='mysql-bin.00001', SOURCE_LOG_POS=11963618;
mysql> start slave;
备注
清除从库日志
mysql>show slave status\G (查看从库备份状态)
mysql>reset master
mysql 访问外部地址
myql -h192.168. -uroot -p -P3306
从库同步慢:
set global sync_binlog=20;
备份多个表
mysqldump -uroot -p --databases dbxx --tables table1 table2 > /var/lib/mysql/xxxx.sql

浙公网安备 33010602011771号