5.7mysql的数据库主从复制部署

在这里插入图片描述
数据库B ip192.168.3.7为主数据库
数据库A ip 192.168.3.8为从数据库
A与B之间开启 slave 实现同步数据库,B的操作在A中都会自动操作一遍
msyql5.7的安装后
数据库的密码问题
A B中my.cnf 编辑 在最后加上
skip-grant-tables 保存退出重启数据库服务
然后 >mysql -u root 登录进入之后 mysql> set global validate_password_policy=0;
Query OK, 0 rows affected (0.00 sec)
validate_password_length(密码长度)参数默认为8,我们修改为1
mysql> set global validate_password_length=1;
Query OK, 0 rows affected (0.00 sec)
完成之后再次执行修改密码语句即可成功
mysql> alter user ‘root’@‘localhost’ identified by ‘123456’;
Query OK, 0 rows affected (0.00 sec)
然后退出 再次编辑my.cnf 删除skip-grant-tables一条 用-p代密码就可以登录数据库
数据库的ID和日志格式的改变
B中my.cnf中添加
log-bin=mysql-bin
server-id=7
A中my.cnf添加
server-id=8
保存退出重启mysqld服务
B中开放权限给A
grant replication slave on . to ‘rs’@‘192.168.3.%’ identified by ‘Rs123456.’; #密码设了几遍,复杂告终
show binlog events in ‘mysql-bin.000005’;
在这里插入图片描述
关键是获取 pos 1054 和日志名称 mysql-bin.000005
A中测试连接 #mysql -urs -p -h 192.168.3.7 连接成功后退出
登录自身数据库添加主从数据
change master to
change master to master_host=‘192.168.3.7’,master_user=‘rs’,master_password=‘Rs123456.’,master_log_file=‘mysql-bin.000005’,master_log_pos=1054;
start slave # 开启slave 模式
show slave status\G 查看slave状态
在这里插入图片描述
在这里插入图片描述
show databases; 看出B中创建的库会自动生成在A中
另外
master开启二进制日志后默认记录所有库所有表的操作,可以通过配置来指定只记录指定的数据库甚至指定的表的操作,具体在mysql配置文件my.cnf中的[mysqld]可添加修改如下选项:
复制代码
不同步哪些数据库
binlog-ignore-db = mysql
binlog-ignore-db = test
binlog-ignore-db = information_schema

只同步哪些数据库,除此之外,其他不同步
binlog-do-db = game

猜你喜欢

转载自blog.csdn.net/weixin_43945743/article/details/85056579