手机版
你好,游客 登录 注册
背景:
阅读新闻

MySQL复制从库建立-mysqldump方式

[日期:2019-10-14] 来源:Linux社区  作者:shlc [字体: ]

环境准备:

master:192.168.0.106:3306
slave:192.168.0.105:3306

主和从都必须配置有唯一的ID(server_id:建议ip最后一组+MySQL端口号,例如:1063306,1053306)

采用gtid模式复制,需要配置mysqld开启以下两个参数

gtid_mode=ON
enforce-gtid-consistency=ON

操作步骤:

1、在master创建用于复制的账号

1 mysql> CREATE USER 'repl'@'192.168.0.%' IDENTIFIED BY 'repl';
2 mysql> GRANT REPLICATION SLAVE ON *.* TO 'repl'@'192.168.0.%';

2、mysqldump备份master数据库

1 mysqldump -S /tmp/mysql3306.sock -p --master-data=2 --single-transaction -A |gzip >3306-`date +%F`.tar.gz

3、slave上还原master的备份

gunzip < 3306-2019-10-13.sql.gz | mysql -S /tmp/mysql3306.sock -p
提示:ERROR 3546 (HY000) at line 26: @@GLOBAL.GTID_PURGED cannot be changed: the added gtid set must not overlap with @@GLOBAL.GTID_EXECUTED

  登录slave数据库,清除从站已有GTID_EXECUTED值,然后再执行还原

1 mysql> reset master;
2 mysql> exit;
3 gunzip < 3306-2019-10-13.sql.gz | mysql -S /tmp/mysql3306.sock -p

5、 登录slave数据库,执行主从配置连接命令

1 CHANGE MASTER TO
2  MASTER_HOST='192.168.0.106',
3  MASTER_USER='repl',
4  MASTER_PASSWORD='repl',
5  MASTER_PORT=3306,
6  MASTER_AUTO_POSITION=1;

MASTER_HOST: master主机ip
MASTER_USER:master复制连接账号
MASTER_PASSWORD:master复制连接密码
MASTER_PORT:master端口
MASTER_AUTO_POSITION:使用GTID模式

6、登录slave数据库,启动复制

start slave;

7、查看复制状态信息

show slave status\G

查看以下两个参数都为Yes代表复制启动成功

Slave_IO_Running: Yes
Slave_SQL_Running: Yes

Linux公社的RSS地址https://www.linuxidc.com/rssFeed.aspx

本文永久更新链接地址https://www.linuxidc.com/Linux/2019-10/161010.htm

linux
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款