准备两台虚拟机,安装好MySQL8.0.17。选好主从数据库。
master配置 修改主库my.cnf
注意:在该mysqld节点下配置 server-id主机一定要和从机不一样,
log-bin一定要开启后面的的mysql-bin为二进制文件的名
slave配置修改从库my.cnf
主机
1、新建一个可以让从机登录的用户并且给该用户授权
CREATE USER '用户名'@'从机ip' IDENTIFIED WITH mysql_native_password BY '登陆密码'; GRANT REPLICATION SLAVE ON *.* TO '用户名'@'从机ip'; flush privileges;
2、查看主机的状态这时可以看到log-bin文件的名还有position需要记录下来一会从机配置需要用
SHOW MASTER STATUS;
从机
在MySQL里输入手动的连接上主机
CHANGE MASTER TO
MASTER_HOST='主机ip',
MASTER_USER='用户名',
MASTER_PASSWORD='密码',
MASTER_LOG_FILE='记下的file',
MASTER_LOG_POS=记下的position;
show slave status\G;-- 查看状态一定要slave_sql_running和slave_io_running同时为yes
不成功的话可以多同步几次
stop slave; start slave;
如果重新启动MySQL主服务器,造成主从不同步,主从同步实效,查看主服务器
Slave_IO_Running: Yes
Slave_SQL_Running: NO
查看MySQL错误日志。根据报错信息改。此时有可能是user表损坏,登录MySQL修复user表。
mysql> use mysql
mysql> repair table user;
重新设置主从