当前位置:   article > 正文

mysql主从复制

mysql主从复制

库配置开启binglog

log-bin=/mysql/mysql-bin/mysql-bin
binlog-format=ROW
server_id=1
  • 1
  • 2
  • 3

从库配置

查询主库的server_id,从库配置不要重复就行

show variables like '%server_id%';
  • 1

在这里插入图片描述
编辑从库的my.cnf文件
在文件中增加如下配置

server-id               =  123456789              //服务 ID,主从实例 server-id 需不同。
log_bin                 =  /var/log/mysql/mysql-bin.log
expire_logs_days        =  10;
max_binlog_size         =  100M
replicate-do-db         =  exampledb                //需要同步的数据库
replicate-ignore-db     =  mysql                  //不需要同步的数据库
replicate-ignore-db     =  information_schema     //不需要同步的数据库
replicate-ignore-db     =  performance_schema     //不需要同步的数据库
# GTID
gtid_mode=on
enforce_gtid_consistency=on
binlog_format=row                             //设置 binlog 为 row
log-slave-updates=1
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

设置同步选项

change master to master_host='rm-xxx.mysql.rds.aliyuncs.com', master_user='xxx', master_password='xxxx', master_port=3306, master_log_file='mysql-bin.000637', master_log_pos= 6433378, master_connect_retry=30;
  • 1

其中的master_log_filemaster_log_file通过在master上执行show master status;获得
在这里插入图片描述
但是需要注意如果主库数据有变更,这两个值可能会一直有变动,可以先执行如下命令锁表

# 锁表
flush tables with read lock;
# 解锁
unlock tables
  • 1
  • 2
  • 3
  • 4

启动从实例

start slave;
  • 1

检查同步结果

show slave status\G
  • 1

查看系统返回信息中 Slave_IO_Running 和 Slave_SQL_Running 的状态是否为 Yes,如下所示。
在这里插入图片描述

其他

同步阿里云的RDS至自建数据库也是可以的,阿里云rds默认开启了binglog,所以我们无需对主库进行配置,直接配置从库即可

参考

https://developer.aliyun.com/article/66087

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/215583
推荐阅读
相关标签
  

闽ICP备14008679号