MYSQL5.7进阶之主从复制
主从复制是msql数据库的高可用 读写分离 容灾备份 等的基本要求
在这主从复制之前我们需要准备以下条件
- 保证master数据库和从数据库的mysql版本一致
- matser和从数据防火墙关闭 数据库端口开启
好了,开搞 奥利给 兄弟们 干就完了
首先我们要配置主数据库的信息
以楼主win系统下的数据库为主数据库为例子
找到mysql的配置文件 my.ini
在配置之前请将my.ini文件复制备份一份!
在配置之前请将my.ini文件复制备份一份!
在配置之前请将my.ini文件复制备份一份!
配置下列参数
(ctrl+f 快速操作相关参数 如果存在则修改,没有这个参数 则就加上就可以- -!)
# 这里是从数据库读取的主数据库的日志信息 注意Data后面的不是目录而是保存的文件名!
log-bin="G:mysqlDatalogbin"
# 这里是从数据库读取的主数据库的异常信息 注意Data后面的不是目录而是保存的文件名!
log-error="G:mysqlDatalogerr"
# 服务编号 默认为1
server-id=1
# 要复制的数据 这里填写你的数据库名
binlog-do-db=demo
# 不需要复制的数据库 这里填写系统库就可以
binlog-ignore-db=mysql
# 详情请看 https://www.cnblogs.com/langtianya/p/5504774.html 这里默认
binlog_format=STATEMENT
配置完成后 重启数据库
右键 -> 重新启动
如果重启失败 请检查你的配置是否正确 ! 备份很重要!!!
接下来咱们查看一下主数据库的状态
SHOW MASTER STATUS;
出现下列信息 表示数据库配置完成!
记住这两个参数 后面会用
接下来要配置咱们的从数据库了 首先打开咱们的终端
进入 etc
cd /etc
进入咱们的数据配置文件
vim my.cnf
添加箭头中的两个配置
添加完成后保存退出
接下来重启数据库
systemclt restart mysql
等待一会重启成功后
一抹翠绿代表启动成功!
好了接下来 我们完成最后一步就能连接啦!
首先操作主数据库 创一个用户
GRANT REPLICATION SLAVE ON *.* TO "定义你用户名"@"从数据库ip" IDENTIFIED BY "123456"
执行成功后
我们要用这个用户连接到咱们的主数据库
在从数据库中
# 这里填写你的主数据库ip
CHANGE MASTER TO MASTER_HOST="192.168.0.102",
# 连接的用户名
MASTER_USER="haoran",
# 用户名密码
MASTER_PASSWORD="123456",
# 这两个参数 读取的日志名称 和切入点
MASTER_LOG_FILE="logbin.000002",MASTER_LOG_POS=750
最后一项数据的应该咱们配置 就是我们之前的查出来的这两个数据!
配置完成后 别着急
还有一步
在从数据库执行
START SLAVE;
当执行成功后 代表主从复制已经搭建好了
测试一下
在主数据建库建表插数据 数据库名必须是之前的binlog_do_db 配置项的名称
主数据库
从数据库
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341