MySQL主从复制
借鉴博客:
1):https://blog.csdn.net/daicooper/article/details/79905660
2):https://blog.csdn.net/weixin_42416543/article/details/89867515
感谢!
注意:要进行主从复制的两个数据库必须是一个版本
数据库安装自己百度吧,要注意的就是上面这个,这个原因我看的第二位博主,记录在最后面,做到最后一步得重新做,手动哭
主库配置修改
1:修改my.ini(win系统)/my.cnf(linux系统)
log-bin = mysql-bin
server-id =1
innodb-file-per-table =ON
skip_name_resolve=ON
2:重启服务(重启后如果不能访问,改回去,将MySQL库user表,root用户的HOST列改为'%'全匹配,如果没有遇到可以跳过)
3:进入MySQL命令行,进行下列操作
#1查看二进制是否开启
SHOW GLOBAL VARIABLES LIKE '%log%'
#2查看主节点二进制日志列表
SHOW MASTER LOGS;
#3查看主节点的server id
SHOW GLOBAL VARIABLES LIKE '%server%'
#4在主节点上创建有复制权限的用户。REPLIACTION SLAVE ,REOPLIATION CLIENT,下面iP为从表ip
GRANT REPLICATION SLAVE,REPLICATION CLIENT ON *.* TO 'root'@'192.168.31.129' IDENTIFIED BY 'root';
#5刷新
FLUSH PRIVILEGES;
从库数据更改
1:修改my.ini(win系统)/my.cnf(linux系统)
relay-log=relay-log
relay-log-index=relay-log.index
server-id=2
innodb_file_per_table=ON
skip_name_resolve=ON
2:重启数据库
3:进入MySQL命令行,进行下列操作
#1查看二进制是否开启
SHOW GLOBAL VARIABLES LIKE '%log%'
#2查看主节点的server id
SHOW GLOBAL VARIABLES LIKE '%server%'
#3从节点添加访问主节点的参数信息,下面的配置信息取自主库,ip,刚配置的账号密码,和查出的日志列表的数据
stop slave;
CHANGE MASTER TO MASTER_HOST='10.187.58.71',MASTER_USER='root',MASTER_PASSWORD='root', MASTER_LOG_FILE='mysql-bin.000008',MASTER_LOG_POS=624;
start slave;
# 如果start slave; 失败,执行下面,没有失败,可以跳过进入查看配置信息
reset slave;
start slave IO_THREAD;
stop slave IO_THREAD;
reset slave;
start slave;
#查看配置信息
SHOW SLAVE STATUS;
从表第一步展示图片