美文网首页
ubuntu18.04下mysql5.7集群

ubuntu18.04下mysql5.7集群

作者: 吃铝的二月鸟 | 来源:发表于2020-09-24 08:41 被阅读0次

1、主从备份

首先在两台mysql数据库开启binlog日志,同时加上server-id,server-id不能相同

vim /etc/mysql/mysql.conf.d/mysqld.cnf  (ubuntu18下的mysql配置文件位置)

开启binlog日志,和server-id

添加:

log-bin=/var/log/mysql/mysql-bin.log

server-id=3

同理第二台mysql以同样方式开启,注意server-id号不能相同

这里以id=3为主服务器

进入主服务器的mysql中,在mysql中使用命令:show master status; 查看binlog日是否开启,并且在从服务器接受授权时需要该信息

在主服务器中为从服务器授权

grant replication slave on *.* to root@'IP' identified by '密码‘;

flush privileges; #刷新权限

注:on *.* 授权备份的数据库或者表

再从服务器中接受授权信息

change master to master_user='root',master_password='密码',master_host='IP',master_log_file='mysql-bin.000003',master_log_pos='4286';

#master_user 主机用户

#master_password 主机密码

#master_host 主机ip

#master_log_file binlog日志(master status信息中展示的File部分)

#master_log_pos 日志文件大小(master status中的Position信息)

在开启slave服务

start slave;

在查看slave状态是否正确

show slave status\G;

在主服务器中测试,创建一个数据库

create database qwe;

在从服务器使用 show databases;命令,查看是否同步

2、一主多从备份

该备份主从备份类似,都需要开启server-id和binlog日志

继续上面步骤,在主服务器中为新的从服务器授权, 

grant replication slave on *.* to root@'IP' identified by '密码';

flush privileges;

在从服务器中接受授权

change master to master_user='root',master_password='密码',master_host='IP',master_log_file=' ',master_log_pos=' ';

注:此时master_log_file和master_log_pos可能发生改变,应在主服务器中重新查看master状态,show master status;

在开启slave状态

start slave;

同样在主服务器中创建新的数据库,检测两个从服务器是否能查询。

3、主主备份

在两个mysql数据库中同时开启主服务器权限,也同时接受对方服务器授权权限。即互相开启主从权限。

操作同主从备份一样,不同之处在从服务器向主服务器开启master权限,进行grant授权,同时在主服务器中接受从服务器授权,change master to。

在主服务器开启slave:

start slave;

主主备份搭建完成。

补充:

在主从备份后要将主从备份之前的数据同步,使用mysqldump工具将之前的数据从主服务器导出,在通过ftp等方式传输到从服务器中,将数据导入到从服务器的mysql中来实现数据同步。

相关文章

网友评论

      本文标题:ubuntu18.04下mysql5.7集群

      本文链接:https://www.haomeiwen.com/subject/anjwyktx.html