mysql8.0 主从复制

数据库版本要一致

主:my.ini

port=3306
#主为1,表示唯一性,这里不同盘文件夹里可以有可无;  
server-id = 1
#要同步的数据库   
binlog-do-db=test2
#要生成的二进制日记文件名称
log-bin=mysql-bin

从:my.ini

port=3307

server-id = 10
#要同步的数据库   
replicate-do-db=test2

 

---------------------

在主数据库上操作sql:

--创建主数据库用户,给从使用,8.0 要指定加密方式,8.0 的Java库也不一样。

 CREATE USER 'repl'@'127.0.0.1' IDENTIFIED WITH mysql_native_password BY 'root';
 
 GRANT REPLICATION SLAVE ON *.* TO 'repl'@'127.0.0.1';

 flush privileges;

--查看主状态

SHOW MASTER STATUS

记下 Position 的值 比如:1023

--在从数据库上操作:

CHANGE MASTER TO
MASTER_HOST='127.0.0.1',
master_port=3306,
MASTER_USER='repl',
MASTER_PASSWORD='root',
MASTER_LOG_FILE='binlog.000006',
MASTER_LOG_POS=1023;  --这是前面记录的position 值

start slave


show slave status

--如果 Slave_IO_Running和Slave_SQL_Running的状态都为YES才表示同步成功!!

mysql8.0 主从复制_第1张图片

 

如果不成功:

stop SLAVE
reset slave

停止,重置多刷新几遍

 

 

转载于:https://my.oschina.net/mellen/blog/3089954

你可能感兴趣的:(mysql8.0 主从复制)