MYSQL5.7进阶之主从复制
主从复制是msql数据库的高可用 读写分离 容灾备份 等的基本要求
在这主从复制之前我们需要准备以下条件
- 保证master数据库和从数据库的mysql版本一致
- matser和从数据防火墙关闭 数据库端口开启
好了,开搞 奥利给 兄弟们 干就完了
首先我们要配置主数据库的信息
以楼主win系统下的数据库为主数据库为例子
找到mysql的配置文件 my.ini
在配置之前请将my.ini文件复制备份一份!
在配置之前请将my.ini文件复制备份一份!
在配置之前请将my.ini文件复制备份一份!
配置下列参数
(ctrl+f 快速查找相关参数 如果存在则修改,没有这个参数 则就加上就可以- -!)
# 这里是从数据库读取的主数据库的日志信息 注意Data后面的不是目录而是保存的文件名! log-bin="G:\mysql\Data\logbin" # 这里是从数据库读取的主数据库的异常信息 注意Data后面的不是目录而是保存的文件名! log-error="G:\mysql\Data\logerr" # 服务编号 默认为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;
出现下列信息 表示数据库配置完成!
记住这两个参数 后面会用
接下来要配置咱们的从数据库了
首先打开咱们的终端,进入咱们的数据配置文件vim my.cnf
添加箭头中的两个配置,添加完成后保存退出,接下来重启数据库
启动成功后接下来 我们完成最后一步就能连接啦!
在主数据库 创一个用户
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;