Mysql配置主从复制---一主一从
------------恢复内容开始------------
环境说明
主机:Win10系统,Mysql8版本
从机:Centos7系统,Mysql8版本
主机ip:192.168.132.99
从机ip:192.168.132.88
开始配置
配置注意事项
主从都配置在[mysqld]节点下,都是小写
1.主机修改my.ini配置文件
- 添加主服务器唯一ID
server-id=1 #这里的ID不能和从服务器的ID一致 - 其用二进制日志
log-bin=数据库的存放目录/mysqlbin - 设置不要复制的数据库
binlog-ignore-db=mysql #mysql这个库一般是自带的所以一般不复制,如果有多可以再继续在下一行添加:binlog-ignore-db=xxx - 设置需要复制的数据库
binlog-do-db=需要复制的主数据库名字 #如果需要复制多个数据库则可以继续在下面添加:binlog-do-db=xxx
2.从机修改my.cnf配置文件
- 添加从服务器唯一ID
server-id=2 #这里的ID不能和从服务器的ID一致 - [不是必须]启用二进制日志
log-bin=mysql-bin
3.因修改过配置文件,请主机+从机都重启后台mysql服务
Linux:service mysql stop service mysql start
CREATE USER '用户名'@'主机IP' IDENTIFIED WITH mysql_native_password BY '密码';
GRANT REPLICATION SLAVE ON *.* TO '用户名'@'主机名';
FLUSH PRIVILEGES;
5.主机查询master的状态
show master status;
记录下File和position的值
6.在从机上配置需要复制的主机
注意下面SQL有没有加双引号(''),并且根据自己主计算机数据修改
CHANGE MASTER TO MASTER_HOST='主机IP',
MASTER_PORT=3306,
MASTER_USER='zhangsan',
MASTER_PASSWORD='123456'
MASTER_LOG_FILE='mysqlbin.具体数字(File具体值)',
MASTER_LOG_POS=Position具体值
7.启动从服务器复制功能
start slave;
8.检查从服务器复制功能状态
show slave status\G;
下面两个参数都是YES,则说明主从配置成功!
9.如何停止从服务复制功能
stop slave;