mysql 异步复制
2021/6/12 19:25:59
本文主要是介绍mysql 异步复制,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
主从配置 1)主库和从库 创建复制用户并授权 异步复制 mysql -uroot -proot create user 'repuser'@'%' identified by 'repuser123'; grant replication slave on *.* to 'repuser'@'%'; flush privileges; select user,host from mysql.user; 2) 修改my.cnf 主库 改bin-address server-id 二进制日志打开 log_bin=/mysql/log/3306/binlog/mysqldb-binlog log_bin_index=/mysql/log/3306/binlog/mysqldb-binlog.index binlog_format=row binlog_rows_query_log_events=on expire_logs_days = 7 innodb_support_xa =1 binlog_cache_size = 1m max_binlog_size = 2048m log_bin_trust_function_creators = 1 innodb_flush_log_at_trx_commit =1 sync_binlog = 1 transaction-isolation = read-committed #slave parameter 等着切换的时候用 #relay_log = /mysql/log/3306/relaylog/mysqldb-relay.log #log-slave-updates = 1 #read_only=1 #slave-parallel-type=logical_clock #slave-parallel-workers=4 #master_info_repository=table #relay_log_info_repository=table #relay_log_recovery=1 #slave_skip_errors = ddl_exist_errors #slave_preserve_commit_order=1 备库 改bin-address server-id log_bin=/mysql/log/3306/binlog/mysqldb-binlog log_bin_index=/mysql/log/3306/binlog/mysqldb-binlog.index binlog_format=row binlog_rows_query_log_events=on skip_name_resolve = on expire_logs_days = 7 innodb_support_xa =1 binlog_cache_size = 1m max_binlog_size = 2048m log_bin_trust_function_creators = 1 innodb_flush_log_at_trx_commit =1 sync_binlog = 1 transaction-isolation = read-committed #slave parameter relay_log = /mysql/log/3306/relaylog/mysqldb-relay.log log-slave-updates = 1 read_only=1 slave-parallel-type=logical_clock slave-parallel-workers=4 master_info_repository=table relay_log_info_repository=table relay_log_recovery=1 slave_skip_errors = ddl_exist_errors slave_preserve_commit_order=1 3)重启 主备库 服务 4)主库查看binlog show master status ; 5)从库和master建立连接 stop slave; change master to master_host='172.17.0.2', master_user='repuser', master_password='repuser123', master_log_file='master-mysql-bin.000001', master_log_pos= 753; # 异步同步方式 ,在主库 log_file ,log_pos 填上去 start slave ; show slave status \G; 从库显示一个sql线程,和4个work线程 主库显示 dump线程 建好后,主库新建应用使用的用户 create user 'itpux01'@'%' identified by 'itpux01'; grant all privileges on deen.* to 'itpux01'@'%'; flush privileges;s change master 命令 改传输密码,从库执行 stop slave; change master to master_password='repuser123'; #这个密码改的是 传输用的密码,改掉的话, io线程报错 报no,连接不上,和登录用的用户没关系 start slave; 修改主库ip, stop slave ; change master to master_host='192.168.0.55', master_user='repuser', master_password='repuser123', master_log_file='', master_log_pos= ; start slave; 延迟复制:延迟60秒复制到备库,不想就改成0 stop slave ; change master to MASTER_DELAY=60; start slave; 故障恢复: 主库: reset master; # 最后再考虑这一步 从库: reset master ; reset slave ; #这两步会将Master_Info 滞空,备库相当于铲掉重来 change master to master_host='192.168.0.55', master_user='repuser', master_password='repuser123', master_log_file='', master_log_pos= ; start slave; 6)参数讲解 此时,主备机上同时输入:show processlist; 显示下面两张图是配置成功 图解:dump线程 图解:备机 sql线程和4个调度线程 显示下面三个是一样的,都是786,是说明同步,数据一致 备库: 主库: 图解:sql线程读取的中继日志的位置 图解:sql线程执行到了主库的哪个文件这篇关于mysql 异步复制的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-02MySQL集群项目实战:新手入门指南
- 2024-11-02初学者指南:部署MySQL集群资料
- 2024-11-01部署MySQL集群教程:新手入门指南
- 2024-11-01如何部署MySQL集群:新手入门教程
- 2024-11-01部署MySQL集群学习:新手入门教程
- 2024-11-01部署MySQL集群入门:新手必读指南
- 2024-10-23BinLog入门:新手必读的MySQL二进制日志指南
- 2024-10-23Binlog入门:MySQL数据库的日志管理指南
- 2024-10-22MySQL数据库入门教程:从安装到基本操作
- 2024-10-22MySQL读写分离入门教程:轻松实现数据库性能提升