mysql 主从同步的配置
1、主库的配置
在mysql 的配置文件中增加如下配置,
我的mysql 使用docker 起来的,配置文件挂载在了
/usr/local/soft/mysql/conf/my.cnf 中,增加如下配置,
(ps : mysql 不知道怎么搭建的可以看上一篇文章docker环境下挂载的方式启动mysql)
#mysql服务唯一id,不同的mysql服务必须拥有全局唯一的id
server-id=1
#启动二进制日期
log-bin=mysql-bin
#设置不要复制的数据库
binlog-ignore-db=mysql
binlog-ignore-db=information-schema
#设置需要复制的数据库
binlog-do-db=orders
#设置binlog的格式
#可选值为statement、row、mix
# statement 会记录每条执行SQL
#row 记录什么数据被修改成什么样子
# mix以上两种模式的混合使用,
binlog_format=statement
2、从库的配置
修改另一个节点上mysql 的配置文件,增加如下配置:
#服务器唯一id
server-id=2
#启动中继日志
relay-log=mysql-relay
3、分别启动两台mysql服务
4、在主库上同意授权
使用如下命名
# 最后边的root 就是我的密码
grant replication slave on *.* to 'root'@'%' identified by 'root';
--在进行授权的时候,如果提示密码的问题,把密码验证取消
set global validate_password_policy=0;
set global validate_password_length=1;
查看主库状态
show master status

记住file 名称和position的值,后边从库同步要用到的
5、在从库上指明要同步哪台主机
CHANGE MASTER TO MASTER_HOST='192.168.25.13',MASTER_USER='root',MASTER_PASSWORD='root',MASTER_LOG_FILE='mysql-bin.000001',MASTER_LOG_POS=154;
# 要换成自己的ip 和用户名密码 mysql的file名称,position 的值

开始同步数据
start slave;

查看同步状态是否正确
show slave status\G

6、验证数据是否正确
在主库执行创建orders 数据库的命令

在从库中查看,已经存在了

接着在主库中的orders 中建表并插入数据试试

然后在从库中查看

数据可以同步,
至此mysql 主从同步完成
921

被折叠的 条评论
为什么被折叠?



