MYSQL(主从备份、GTID备份、半同步复制、MHA实现主从复制高可用)

本文详细介绍了在RHEL 7.3环境中,如何在主机server1上设置MySQL主服务器,包括安装、配置、授权及创建数据库,同时指导如何在从属服务器server2上复制数据并验证从属状态。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

实验环境 rhel7.3
	主机			server1				server2
	ip			172.25.47.1			172.25.47.2
	服务			主服务master			从属

一、数据库的主从备份

1、master侧

1)安装
[root@server1 ~]# cd mysql/
[root@server1 mysql]# ls
master_ip_failover       mysql-5.7.24-1.el7.x86_64.rpm-bundle.tar      sysbench
master_ip_online_change  mysql-proxy-0.8.5-linux-el6-x86-64bit.tar.gz
MHA-7                    send_report
[root@server1 mysql]# tar xf mysql-5.7.24-1.el7.x86_64.rpm-bundle.tar
[root@server1 mysql]# yum install -y mysql-community-client-5.7.24-1.el7.x86_64.rpm mysql-community-common-5.7.24-1.el7.x86_64.rpm mysql-community-libs-5.7.24-1.el7.x86_64.rpm mysql-community-libs-compat-5.7.24-1.el7.x86_64.rpm mysql-community-server-5.7.24-1.el7.x86_64.rpm
2)配置mysql
[root@server1 mysql]# vim /etc/my.cnf
 29 log-bin=mysql-bin		##添加plugins插件
 30 server-id=1
[root@server1 mysql]# systemctl start mysqld
[root@server1 mysql]# cat /var/log/mysqld.log |grep password
2019-04-23T09:14:18.235905Z 1 [Note] A temporary password is generated for root@localhost: 0I1-V!l!-qlk					##查看系统生成密码
[root@server1 mysql]# mysql_secure_installation
修改密码					#Westos+001
3)授权

[root@server1 mysql]# mysql -uroot -pWestos+001
mysql> show master status;
±-----------------±---------±-------------±-----------------±------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
±-----------------±---------±-------------±-----------------±------------------+
| mysql-bin.000002 | 398 | | | |
±-----------------±---------±-------------±-----------------±------------------+
1 row in set (0.00 sec)

mysql> grant replication slave on . to repl@‘172.25.47.%’ identified by ‘Westos+001’; ##授权
mysql> show plugins; ##查看plugins插件
±---------------------------±---------±-------------------±---------------------±--------+
| Name | Status | Type | Library | License |
±---------------------------±---------±-------------------±---------------------±--------+
| binlog | ACTIVE | STORAGE ENGINE | NULL

4) 添加数据库信息
mysql> create database westos;
	Query OK, 1 row affected (0.01 sec)
mysql> use westos;
Database changed
mysql> create table usertb (
    -> username varchar(10) not null,
    -> password varchar(15) not null);
Query OK, 0 rows affected (0.04 sec)

2、从属端

1)安装

server2

[root@server2 ~]# cd mysql/
[root@server2 mysql]# ls
	master_ip_failover       mysql-5.7.24-1.el7.x86_64.rpm-bundle.tar      sysbench
	master_ip_online_change  mysql-proxy-0.8.5-linux-el6-x86-64bit.tar.gz
	MHA-7                    send_report
[root@server2 mysql]# tar xf mysql-5.7.24-1.el7.x86_64.rpm-bundle.tar
[root@server2 mysql]# yum install -y mysql-community-client-5.7.24-1.el7.x86_64.rpm mysql-community-common-5.7.24-1.el7.x86_64.rpm mysql-community-libs-5.7.24-1.el7.x86_64.rpm mysql-community-libs-compat-5.7.24-1.el7.x86_64.rpm mysql-community-server-5.7.24-1.el7.x86_64.rpm
[root@server2 mysql]# vim /etc/my.cnf
 28 server-id=2
[root@server2 mysql]# systemctl start mysqld
[root@server2 mysql]# cat /var/log/mysqld.log |grep password		##查看系统生成密码
2019-04-23T09:17:58.871656Z 1 [Note] A temporary password is generated for root@localhost: ve;glkRnt4KS
[root@server2 mysql]# mysql_secure_installation
2)从master备份数据
[root@server2 mysql]# mysql -uroot -pWestos+001

mysql> change master to master_host='172.25.47.1',master_user='repl',master_password='Westos+001',master_log_file='mysql-bin.000002',master_log_pos=398;		##备份

mysql> start slave;		##开启slave
Query OK, 0 rows affected (0.01 sec)

mysql> show slave status\G	##查看slave状态,要IO和SQL都yes

	    Slave_IO_Running: Yes
	    Slave_SQL_Running: Yes

在这里插入图片描述

3)查看数据

mysql> show databases; 查看 数据已经从server1上备份过来

server1

在这里插入图片描述

server2

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值