MySQL8主从数据库_mysql8主从同步

1.master端

vim my.cnf写入下面数据

server-id=2          //设置标识,具有唯一性

log-bin=mysql-bin    //设置日志格式

binlog-do-db=test    //设置要同步到slave的数据库

2.创建一个账户,并赋予相关权限,用于让slave登入

CREATE USER 'account'@'192.168.199.198' IDENTIFIED WITH mysql_native_password BY 'password';

GRANT REPLICATION SLAVE ON *.* TO 'slave'@'192.168.199.198';

3.进入mysql,查看file名和position,等会有用

>show master status;

====================================================================

1.slave端

vim my.cnf写入下面数据

server-id=3

log-bin=mysql-bin

2.进入mysql设置slave参数

>CHANGE MASTER TO MASTER_HOST='192.168.8.240', MASTER_USER='slave', MASTER_PASSWORD='password',MASTER_LOG_FILE='mysql-bin.000004',MASTER_LOG_POS=837;

备注:

MASTER_HOST='192.168.8.240'  //master的主机IP

MASTER_USER='slave'          //上面master创建的用户

MASTER_PASSWORD='password'   //该用户的密码

MASTER_LOG_FILE='mysql-bin.000004' //master端file

MASTER_LOG_POS=837                 //master端position

3.运行,查看slave

>start slave; //stop slave等,开启关闭slave;

>show slave status\G; //查看状态

看到如下两个参数为yes即为启动成功

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

备注:两个mysql,必须配置结构一模一样,才能开启这个主从服务器,才不会出现失败现象;

写在主库配置文件里参数(对所有从库都有效)

binlog_do_db=库名列表 //允许同步的库

binlog_ignore_db=库名列表 //不允许同步的库

写在从库配置文件里参数(只针对从库本机有效)

replicate_do_db=库名列表 //指定只同步的库

replicate_ignore_db=库名列表 //指定不同步的库

========================================================

如果主服务器已经有应用数据,则在进行复制时需要锁表

(1)主数据库进行锁表操作,不让数据再进行写入动作

mysql> FLUSH TABLES WITH READ LOCK;

(2)查看主数据库状态

mysql> show master status;

(3)记录下 FILE 及 Position 的值。

将主服务器的数据文件(整个/opt/mysql/data目录)复制到从服务器,建议通过tar归档压缩后再传到从服务器解压。

(4)取消主数据库锁定

mysql> UNLOCK TABLES;

转载:https://www.cnblogs.com/fyc119/p/7529902.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值