mysql 读写分离配置
准备事项:
两台虚拟机 master:192.168.31.100 slave:192.168.31.111
并提前安装mysql8
1. 开启master服务器的binlog日志
1.1 编辑mysql的my.inf文件
```
vi /etc/my.cnf
```
log-bin=/var/lib/mysql/mysql-bin
server-id=1001
1.2 重启mysql
systemctl restart mysqld
启动成功后,可以在 /var/lib/mysql 目录下生成两个文件。
同时,我们还可以通过下面的语句看到bin-log开启情况
show variables like 'log_bin%';
1.3 在master库创建用户
-- 创建用户,其中slave_1表示用户名, 192.168.31.111表示slave库的ip地址,也就是只允许这个ip通
过slave_1用户访问master库
create user 'slave_1'@'192.168.31.111' identified with mysql_native_password by '123456';
1.4 在这里插入代码片
执行授权操作
-- replication slave 表示授权复制
-- *.* 表示所有的库和表
grant replication slave on *.* to 'slave_1'@'192.168.31.111';
1.5 令刷新权限信息
flush privileges;
2. slave 节点配置`
2.1 首先在master节点,通过下面的命令了解master节点的状态。
show master status
2.2 在slave节点执行如下命令。
change master to master_host='192.168.31.110' ,master_user='slave_1' , master_password='123456' , master_log_file='mysql-bin.000001', master_log_pos=1302;
master_log_file是第一步得到的file名称
master_log_pos是第一步得到的同步位置点
2.3 启动slave同步
start slave;
2.5 查看同步状态,如下图所示的状态,表示主从同步搭建成功。
show slave status\G