千家信息网

如何进行MySQL双主补充

发表于:2025-02-23 作者:千家信息网编辑
千家信息网最后更新 2025年02月23日,今天就跟大家聊聊有关如何进行MySQL双主补充,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。环境:主机名 主机IP 操作系统 mysql
千家信息网最后更新 2025年02月23日如何进行MySQL双主补充

今天就跟大家聊聊有关如何进行MySQL双主补充,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

环境:
主机名 主机IP 操作系统

    mysqlA    172.18.252.221     CentOS 6.5                                                                                                        2.6.32-431.el6.x86_64mysqlB    172.18.252.222    MySQL版本    mysql-community-server-5.7.5-0.6.m15.el6.x86_64        MySQL双主+半同步架构搭建参考上一篇博文:https://blog.51cto.com/12947626/2125165            本文做一点补充说明:如果mysqlA已经运行了一段时间,要添加一台新的mysqlB, 与mysqlA实现主主复制,就要先复制mysqlA上的数据导入到mysqlB,  使数据保持一致;记录mysqlA上binlog的文件名和Position,在mysqlB上执行CHANGE  MASTER TO ...;再记录mysqlB上的binlog的文件名和Position,在mysqlA上执行CHANGE  MASTER.(导入到B的数据应该是使用mysqlA的全量备份+binlog)             下面有两种实现方法:        方法一、        1)对mysqlA数据库锁表操作,不让数据再进行写入动作         > flush tables with  read lock;         > 不要退出连接,另开一个终端执行备份操作.   2)备份mysqlA的数据库                     mysqldump  --uroot  -p  --single-transaction  --opt  --events  --triggers    --routines  --flush-logs  --master-data=2   --databases db1  db2  >db.sql    --flush-logs  :选项用以生成新的二进制日志文件(滚动二进制文件使其起始位置完全)    --mater-data :选项值等于2 ,备份后的sql文件里CHANGE MASTER语句被注释。        --single-transaction  :InnoDB表在备份时,通常启用选项  --single-transaction来保证备份的一致性,实际上它的工作原理是设定本次会话的隔离级别为: REPEATABLE  READ,以确保本次会话(mysqldump)时,不会看到其他会话提交了的数据。    3)看mysqlA数据库的状态,记录File和Position项的值后解锁;      show   master  status;        unlock   tables;4)在mysqlB上导入mysqlA的数据:                >  mysql   -uroot  -p 'repl'  < db.sql    5)生成CHANGE  MASTER 语句,然后在mysqlB上执行                >  STOP  SLAVE;                >  CHANGE  MASTER  TO MASTER_HOST='172.18.252.221' , MASTER_USER='repl_user',MASTER_PASSWORD='repl' , MASTER_LOG_FIEL='mysql-bin.000002', MASTER_LOG_POS='120';           > START   SLAVE;           > SHOW  SLAVE  STATUS\G Slave_IO_Running和Slave_SQL_Running的状态,如果都为Yes,从库mysqlB配置成功。 6)记录mysqlB的binlogFile和Position项的值,生成CHANGE  MASTER语句,然后在mysqlA上执行如上操作(先stop  slave;...),最后启动slave.

方法二、
1)备份A的数据库(不用锁表)
mysqldump -uroot -p --single-transaction --opt --flush-logs --events --triggers --routines --master-data=2 --databases db1 db2 > db.sql

    2)使用grep  -i  "change  master "  db.sql

-- CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000002' , MASTER_LOG_POS=120;

OK,结果所示二进制日志文件为mysql-bin.000002,位置为120
然后执行方法一的4)、5)、6)即可

看完上述内容,你们对如何进行MySQL双主补充有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。

数据 备份 文件 数据库 方法 二进制 内容 一致 主机 位置 文件名 日志 状态 语句 生成 成功 操作系统 一致性 不用 动作 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 假如三国时候有网络技术 深圳家政软件开发常见问题 共享单车和网络技术关系 ob10 数据库工具 津科软件开发公司怎么样 带网络安全模式正常启动区别 淮南工程管理软件开发要多少钱 南通移动网络技术 常德市网络安全宣传周活动报道 数据库原理五大关系范式 王者荣耀各地区服务器一样吗 怎么能让服务器页面显示到笔记本 ff14豆豆柴服务器开服时间 利用现代科学技术和网络技术 串口服务器中tcp存活时间 gccli连接数据库后怎么关闭 南宫软件开发哪里的好 安徽常见软件开发均价 任我行服务器 目前软件开发的问题 商业性软件开发项目需求文档 辽宁网络技术开发概况 数据库的建立命令语句是啥 数据库删除的备份文件去哪找 笔记本高级启动网络安全模式 网络技术是否促进人类发展 武汉软件开发驻场代理公司 宝山区网络技术咨询业务流程 怎么玩好花雨庭服务器 驻马店软件开发分类
0