Redhat 7安装Mysql-5.7.17配置主从同步

1、环境准备工作。安排2台服务器,分别命名为pc68,pc77,pc68为主服务器,pc77为从服务器。pc68服务器ip地址为192.168.4.68/24,pc77服务器ip地址为192.168.4.77/24.在主从服务器上,准备mysql的安装包。我此次试验使用的是mysql-5.7.17版本。

重点:此次试验环境,请关闭selinux,防火墙。

mysql的安装,在pc68的服务器上,解压安装包

解压后的rpm包集合如下

切记勿安装server-minimal。此处安装包没有,所以不需要删除。安装mysql之前,请确保你的服务器上没有mariadb或者其他版本的mysql服务器。如果有,请卸载,删除配置文件,lib库里面的文件。安装mysql会有依赖程序,如下。

 

使用yum list | egrep -i perl | egrep -i "Data|JSON",查询出依赖包的名字。安装

 

yum -y install perl-Data-Dumper.x86_64  perl-JSON.noarch   进行依赖包的安装

rpm -Uvh mysql-community-*                           升级安装mysql的rpm包

 

安装完毕。请在pc77服务器上,同理安装mysql。

 

2、在主服务器pc68,起服务,mysql首次启动服务,会在mysql的日志文件里面提供mysql的初始密码。

Systemctl restart mysqld

egrep -i "password" /var/log/mysqld.log

连接mysql数据库。

 

第一次使用数据库,会被mysql数据强制要求更改密码。否则出现以下提示

OR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

 

停止mysql服务     systemctl stop mysqld

 

修改配置文件,路径为 /ect/my.cnf

重启mysql服务。

 

连接mysql数据库,修改root帐号密码为123456

 

Pc77服务器同样操作,但pc77 不需要开启binlog日志和定义日志模式。修改mysql root密码为123456.

 

  1. 主从同步,要求主mysql数据库的数据,与从mysql数据库的数据保持一致。否则同步的IO线程或者SQL线程会因为错误而停止工作。导致主从同步失败。目前本次测试的pc68和pc77的mysql数据库都是初始库,两者是保持一致的。

在pc68的数据库上,查询本机作为主库的属性。

在主数据库上创建从数据库连接的账密,并且授予同步权限。

 

如图所示,授予权限为 replication slave帐号pc77 在 192.168.4.77 上登录,密码为111111

 

我们先在pc77服务器上测试,是否能连接上

登录成功,由于权限为同步,所以只能查询到一个虚拟的库。pc68的配置到此结束。

  1. 进行从数据库的配置,定义从数据库的属性以及怎么样连接住数据库

登录pc77从数据库,查询从数据库属性,得到的显示为空

 

在pc68上查询主数据库主属性


file为binlog日志的文件,position为数据偏移量。

在pc77数据库服务器上定义从属性

 

此命令可以解读为,改变主服务器为主服务主机为192.168.4.68,使用账号pc77,密码111111来连接主服务器数据库,IO线程读取文件为master68.000001,偏移量为692.

 

查询从数据库上从属性

可以看到,IO线程是NO,SQL线程状态也是NO

 

启动从属性

 

再次查询从属性

 

到此,mysql数据库,主从同步,设置完毕。我们来验证一下。

在从库上show databases;查询库

在主库上show databases;查询库

结果如下。

 

我们在主库上,创建一个新的数据库   gamedb,在数据库gamedb下创建表格g1,插入表记录jack。

 

看看从库上是否能查询到jack

 

实验成功!

Mysql主从同步的原理,就是主数据库服务器上开启binlog日志。从数据库定义好从属性,通过IO线程同步主数据库binlog日志,把日志里面的sql命令同步到本级的中继日志里面。再利用sql线程。执行中继日志里面的sql命令,从而达到同步。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值