开发者社区> megachen> 正文

MySQL复制

简介: MySQL复制 MySQL传统的主从复制 master节点的配置 server_id=1 sync_binlog=1 log_bin=master-bin mysql> create user 'repl'@'192.
+关注继续查看

MySQL复制

MySQL传统的主从复制

master节点的配置

  • server_id=1
  • sync_binlog=1
  • log_bin=master-bin
  • mysql> create user 'repl'@'192.168.1.%' identified by 'password';
  • mysql> grant replication slave on . to 'repl'@'192.168.1.%';

slave节点的配置

  • server_id=2
  • relay_log=slave-bin
  • skip-slave-start=on # 默认MySQL启动就会自动start slave, 设置为on则需要手动start slave(推荐)
  • read_only=on # slave节点应该是只读的, 对super用户和relay log的repaly无效
  • mysql> change master to ...
  • mysql> start slave # 并不是连接到master节点, 而是设置连接到master节点的参数, 生成配置文件master.info在datadir项指定的目录中
  • mysql> stop slave

查看slave节点的状态

  • show slave status\G;

查看master节点的状态

  • show master status\G:

将master节点的数据备份恢复到slave节点上

  • mysqldump -uroot -proot -q -c --lock-all-tables --master-data=2 --no-autocommit --flush-logs --databases mydb > backup.sql
  • scp backup.sql root@node2:~
  • mysql -uroot -proot < backup.sql

MySQL传统的主从复制之辅助master

主要对充当master节点的slave节点进行配置

  • log_slave_updates=on # 默认情况下在replay中继日志时不会记录到binlog中, 开启该选项才可以
  • log_bin=on # 要记录二进制日志这个是必须的, log_slave_updates和log_bin是要同时设置的
  • 一个slave2是以slave为master的slave节点, 因为都是slave节点, 所以可以将他们都停下来进行快速的冷备份
    • 将slave中的数据文件拷贝到slave2中
    • 在slave2节点中, 删除拷贝过来的文件中的master.info, relay_log,info, 所有的二进制日志
  • 为slave节点添加具有复制权限的日志
    • create user 'repl'@'192.168.1.%' identified by 'password';
    • grant replication slave on . to 'repl'@'192.168.1.%';
  • 在slave2节点中配置连接slave的参数
    • mysql> change master to...
    • read_only=on
    • skip_slave_start=on

在master节点查看已经使用start slave连接的slave节点

  • show slave hosts;

slave转为master

  • 该slave必须是一个开启了log_slave_updates和log_bin的辅助master节点
  • mysql> stop slave;
  • systemctl stop mariadb
  • 删除master.info, relay_log.info 和 中继日志
  • systemctl start mariadb
  • 剩余的slave节点的master都指向该转为master的slave节点即可

MySQL主从复制(基于GTID)

master节点

  • 配置文件中相对于传统复制添加 gtid_mode=on 和 enforce_gtid_consistency=on
  • 创建具有复制权限的用户
  • show master status; 获取当前的gtid

slave节点

  • 配置文件中相对于传统复制添加 gtid_mode=on 和 enfoce_gtid_consistency=on
  • reset master
  • show global variables like '%gtid%'; 找到 gtid_executed 和 gtid_purged, 这两个变量是与gtid有关的
  • set @@gobal.gtid_purged=从master节点得到的gtid号, 这样再第一次同步时就可以跳过重复和一些不必要的操作减少错误和提高效率

MySQL半复制

与传统复制唯一的不同就是需要在配置文件中添加关于加载插件的信息

在master节点

  • plugin-load='rpl_semi_sync_master=semisync_master.so'
  • rpl_semi_sync_master_enabled=1

在slave节点

  • plugin-load='rpl_semi_sync_slave=semisync_slave.so'
  • rpl_semi_sync_slave_enabled=1

辅助master节点

  • plugin-load='rpl_semi_sync_master=semisync_master.so;rpl_semi_sync_slave=semisync_slave.so'
  • rpl_semi_sync_slave_enabled=1
  • rpl_semi_sync_master_enabled=1

查看相关信息

  • show plugins;
  • show status like '%semi%';
  • show global variables like '%semi%';

在mysql shell中加载插件和启动插件而不是通过编写配置文件

  • help install;
    • master节点
      • install plugin rpl_semi_sync_master soname 'semisync_master.so';
      • set @@global.rpl_semi_sync_master_enabled=0;
    • slave节点
      • install plugin rpl_semi_sync_slave soname 'semisync_slave.so';
      • set @@global.rpl_semi_sync_slave_enabled=0;

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
【MySQL】主从复制(重点:主从复制原理)
本文重点介绍MySQL的主从复制概述,作用,原理,同步数据一致性问题。
41 0
什么是MySQL的复制表?
什么是MySQL的复制表?
40 0
什么是MySQL的复制表?
如果我们需要完全的复制MySQL的数据表,包括表的结构,索引,默认值等。 如果仅仅使用CREATE TABLE ... SELECT命令,是无法实现的。
50 0
Mysql组复制-简单集群搭建
Mysql组复制-简单集群搭建
96 0
MySQL 基于 GTID 的组复制(MGR)
MySQL 基于 GTID 的组复制(MGR)
54 0
MySQL如何快速禁用账户登入 & 如何复制/复用账户密码
如何快速临时禁止某账户登入 角色ROLES管理需要先激活 关于授权的其他几点补充 如何复制/复用账户密码
205 0
【数据库】mysql主从复制原理、搭建
文章目录 前言 一、工作原理 1.1 示意图 1.2 文字解释
56 0
【笔记11】uniapp点击复制;mysql数据库存储emoji表情;Java 二维码生成;uniapp引入自定义图标
做公司的项目,给微信小程序体验版添加了新的页面,提交测试的时候没有任何效果。上网搜索了解后,知道:若 pages.json 文件发生了变化,尤其是首页路径发生了变化。代码上传成功后,需要在后台手动设置一下首页路径,或者取消体验版,重新生成体验版二维码。
239 0
Mysql主从复制的搭建及原理
Mysql主从复制的搭建及原理
93 0
+关注
megachen
Just for fun
文章
问答
视频
相关电子书
更多
高效MySQL的N个习惯
立即下载
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
相关镜像