mysql中怎么实现同步备份

65次阅读
没有评论

共计 1487 个字符,预计需要花费 4 分钟才能阅读完成。

自动写代码机器人,免费开通

本篇文章为大家展示了 mysql 中怎么实现同步备份,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

不同服务器上 mysql 如何实现同步备份

1. 服务器状态:

服务器 A:192.168.1.1

服务器 B:192.168.1.2

2. 创建同步用户:

主机域 A:192.168.1.2 用户名 A:sync_a 密码 A:aaa

主机域 B:192.168.1.1 用户名 B:sync_b 密码 B:bbb

至少分配以下权限 grantreplicationslave。

3. 执行 flushprivileges。

4. 停止 MySQL。

5. 配置 my.cnf(my.ini)。

服务器 A 服务器 B

user=mysqllog-bin=mysql-binserver-id=1binlog-do-db=testbinlog-ignore-db=mysqlreplicate-do-db=testreplicate-ignore-db=mysqllog-slave-updatesslave-skip-errors=allsync_binlog=1user=mysqllog-bin=mysql-binserver-id=2binlog-do-db=testbinlog-ignore-db=mysqlreplicate-do-db=testreplicate-ignore-db=mysqllog-slave-updatesslave-skip-errors=allsync_binlog=1

注意:

server-id 必须唯一。

binlog-do-db 和 replicate-do-db 表示需要同步的数据库。

binlog-ignore-db 和 replicate-ignore-db 表示不需要同步的数据库。

请不要加入以下命令,该命令并不会解决 uid 跳号的问题,恰恰相反以下两行命令才是导致 uid 跳号的罪魁祸首:

auto_increment_increment=2auto_increment_offset=1

不同服务器上 mysql 如何实现同步备份

6. 重新启动 MySQL。

7. 进入 MySQL 控制台:

服务器 A:

showmasterstatusGflushtableswithreadlock

服务器 B:

showmasterstatusGflushtableswithreadlock;

同时记录下两台服务器的 File 和 Position,此处假设:

A:File:mysql-bin.000001

Position:001

B:File:mysql-bin.000002

Position:002

服务器 A:

changemasterto- master_host= 192.168.1.2 ,- master_user= sync_b ,- master_password= bbb ,- master_log_file= mysql-bin.000002 ,- master_log_pos=002;

服务器 B:

changemasterto- master_host= 192.168.1.1 ,- master_user= sync_a ,- master_password= aaa ,- master_log_file= mysql-bin.000001 ,- master_log_pos=001;

此处填写的数据完全相反。

8. 执行 showprocesslistG 查看是否同步成功。

上述内容就是 mysql 中怎么实现同步备份,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注丸趣 TV 行业资讯频道。

向 AI 问一下细节

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-04发表,共计1487字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)