MySQL 8.0主从同步数据库配置

2019-08-13  本文已影响0人  天冷请穿衣

2019-08-13
MySQL 8.0主从同步数据库配置
一、主节点(Master)的配置

  1. 开启二进制日志和配置server-id
    vi /etc/my.cnf
    在my.cnf文件中加入如下配置内容

[mysqld]
log-bin=mysql-bin
server-id=1


2.创建用于主从同步的用户
CREATE USER 'repl'@'192.168.199.198' IDENTIFIED WITH mysql_native_password BY 'Test@123';

授予同步权限

GRANT REPLICATION SLAVE ON . TO 'repl'@'192.168.199.198';

刷新授权表信息

flush privileges;

  1. 获取主节点当前binary log文件名和位置(position)
    show master status;

+---------------+----------+--------------+------------------+-------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+---------------+----------+--------------+------------------+-------------------+
| binlog.000003 | 757925 | | | |
+---------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)


二、从节点(Slave)的配置
1.修改server-id(主从节点的server-id不能一样)
vi /etc/my.cnf
在my.cnf文件中加入如下配置内容


[mysqld]
server-id=2


2.设置主节点参数
mysql> change master to master_host='192.168.199.198',
master_port=3306,
master_user='repl',
master_password='Test@123',
master_log_file='binlog.000003',
master_log_pos=757925;

3.开启主从同步
mysql> start slave;

4.查看主从同步状态
mysql> show slave status\G;

至此,主从同步配置完成,从节点会自动同步主节点的动态内容(包括自动建库、自动建表)。

ps:从节点只会同步生效这一时刻后的内容,之前的主节点数据需要在配置同步之前备份到从库中。
主从数据库若没有保持一致的话,后续的同步过程中从库会发生异常的。
从库发生异常处理后,需要更新从库中主库的master_log_pos的值。

参考: https://blog.csdn.net/zyhlwzy/article/details/80569422

其它相关命令

查看mysql服务状态

systemctl status mysqld.service
systemctl restart mysqld

用户root登录开启远程访问权限

查看

select host,user from mysql.user;

修改host为% :

update user set host='%' where mysql.user='root';
flush privileges;

查看用户权限

show grants for 你的用户
show grants for 'test'@'%';

查看server_id
show variables like 'server_id';
set global server_id=1;

主库上查看有哪些从库节点

show slave hosts;

从节点状态

show slave status\G
start slave;
stop slave;

上一篇下一篇

猜你喜欢

热点阅读