mysql数据库集群讲解

集群

集群的目的是为了解决高并发,保证服务的可用性,以及远程灾备,即保证数据的安全性和有效性。

做集群之前需要先确保环境做好。1.全新服务器-互相通信;2.全新安装mysql57-逐一安装,这个可以去中科大镜像网站去下载,网址是:https://mirrors.ustc.edu.cn/mysql-ftp/Downloads/MySQL-5.7/;3.配置域名解析,vim /etc/hosts

192.168.133.158 master1
192.168.133.161 slave1

一主一从两台服务器的二进制日志文件必须开启。

1:配置主服务器配置文件,在master1和master2中/etc/my.cnf里面写入下面配置文件,写完后重启mysqld

log_bin      #开启二进制日志文件
server-id=2   #服务器id号
gtid_mode=ON   
enforce_gtid_consistency=1

2:配置从服务器配置文件,在slave1 和 slave2中/etc/my.cnf里面写入下面配置文件,写完后重启mysqld

vim /etc/my.cnf
log_bin
server-id=2
gtid_mode=ON
enforce_gtid_consistency=1

3:  设置master1为slave1的主服务器

mysql> grant replication slave, replication  client on *.* to 'rep'@'192.168.133.%'  identified by 'DaBai@123';

创建复制用户rep,让slave1可以复制master1中的数据,让slave1可以复制master1中的数据,这段命令在两个服务器上各执行一次。

start slave;   开启slave

show slave status\G;      查看slave的状态

4: 备份主服务器master1的数据

mysqldump -p'QianFeng@123' --all-databases --single-transaction --master-data=2 --flush-logs > `date +%F-%H`-mysql-all.sql

5:将备份数据发送给slave1

scp 2020-8-29-mysql-all.sql    slave1:/tmp

6:从服务器测试rep用户是否可用

mysql -h master1 -urep -p'QianFeng@123'

7:回复手动同步数据

set sql_log_bin=0;

source /tmp/2020-8-29-mysql-all.sql

8 设置主服务器

mysql> change master to
master_host='master1',
master_user='rep',
master_password='QianFeng@123',
master_auto_position=1;

start slave;

show slave status\G;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值