全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

如何在Ubuntu 16.04下使用MySql的GR

一、前言

该文章主要是记录下从一个纯净的系统开始如何安装MySql 5.7.17 并且使用GR,以便于自己后期查看以及分享给他人。

二、安装mysql

因为默认ubuntu的源并不是最新的mysql所以我们需要如下几个步骤安装最新的安装包,当然我们这里还是使用的apt去安装。

1.下载apt仓库

sudo wget https://repo.mysql.com//mysql-apt-config_0.8.3-1_all.deb

2.安装apt仓库

sudo dpkg -i mysql-apt-config_0.8.3-1_all.deb

在安装的过程中会出现一个界面让其选择版本,这里大家只要让第一个选择 5.7 版本即可,当然你可以选择 8.0。

3.升级apt仓库并安装mysql

sudo apt-get update
sudo apt-get install mysql-server

到此为止我们就已经安装了最新的MySql版本了,下面就是关键的配置部分建议大家先通读一遍,不要直接上来按照这个来。

三、开启GR

1.修改配置

首先打开/etc/mysql/下的my.cnf配置并写入以下配置信息:

server_id=1
bind-address=0.0.0.0
gtid_mode=ON
enforce_gtid_consistency=ON
master_info_repository=TABLE
relay_log_info_repository=TABLE
binlog_checksum=NONE
log_slave_updates=ON
log_bin=binlog
binlog_format=ROW
transaction_write_set_extraction=XXHASH64
loose-group_replication_group_name="aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa"
loose-group_replication_start_on_boot=off
loose-group_replication_local_address= "10.0.0.4:24901"
loose-group_replication_group_seeds= "10.0.0.4:24901,10.0.0.5:24902,10.0.0.6:24903"
loose-group_replication_bootstrap_group= off

这里有一个配置想要说明下,其中“server_id”必须保证每个机器都不相同,可以直接使用ip地址的第四部分,“loose-group_replication_group_nam”在每个机器上都要一致,这个等同于一个组的标识。剩下的另一个不同的就是参数“loose-group_replication_local_address”这个必须指定为当前机器的IP地址,而后面的端口则是表示GR需要监听的端口,只要保证在其他机器中参数“loose-group_replication_group_seeds”中的机器的IP地址和端口正确可以任意修改该端口(该端口是独立于mysql默认的3306端口的)。

完成以上操作之后重启mysql服务

sudo service mysql restart

2.新建用户

首先我们连接到当前数据库中

mysql -u root -p

执行以下sql语句

 mysql> SET SQL_LOG_BIN=0;
 mysql> CREATE USER rpl_user@'%';
 mysql> GRANT REPLICATION SLAVE ON *.* TO rpl_user@'%' IDENTIFIED BY 'rpl_pass';
 mysql> FLUSH PRIVILEGES; #在从数据库不需要执行
 mysql> SET SQL_LOG_BIN=1;
mysql> CHANGE MASTER TO MASTER_USER='rpl_user', MASTER_PASSWORD='rpl_pass' FOR CHANNEL 'group_replication_recovery';

如果是生产环境,用户可以自己设置对应的账户和密码,这里作为测试就直接使用官方提供的了。

3.安装插件

我们继续执行对应的sql语句

mysql> INSTALL PLUGIN group_replication SONAME 'group_replication.so';

如果我们想查看当前是否已经安装了该插件,可以通过下面的语句查询

mysql> SHOW PLUGINS;

4.配置Hosts

在开启最终的GR之前我们需要修改对应的hosts,将主机名和IP对应起来,否则后面在连接到其他节点的时候会发生无法连接,因为mysql依赖主机名去连接。

打开hosts

sudo vim /etc/hosts

写入如下内容(我当前的环境和机器名是这样的)

10.0.0.4 mysql-1
10.0.0.5 mysql-2
10.0.0.6 mysql-3

完成上面的配置后退出,我们进入到mysql中接着继续执行

5.开启GR

以下方式是在主节点的开启方式(只在我们第一次安装的时候需要这样后面不需要)

mysql> SET GLOBAL group_replication_bootstrap_group=ON;
mysql> START GROUP_REPLICATION;
mysql> SET GLOBAL group_replication_bootstrap_group=OFF;

在从属节点上只要执行以下一句

mysql> START GROUP_REPLICATION;

如果我们要查看当前是否加入成功,可以通过下面的语句查看:

mysql> SELECT * FROM performance_schema.replication_group_members;

到此为止所有的配置就都结束了,其他从属节点只要按照上面的步骤执行即可,对于测试,我们需要在主节点上新建数据库,创建表并写入数据,其他数据库也会同步。然后关闭主节点之后,通过以下语句

我们可以查询当前哪个节点为主节点了:

mysql> select *from performance_schema.replication_group_members where member_id =(select variable_value from performance_schema.global_status WHERE VARIABLE_NAME= 'group_replication_primary_member');

Xamarin.Android -> Xamarin.IOS -> 混合 -> Xamarin.Forms

以上所述是小编给大家介绍的在Ubuntu 16.04下使用MySql的GR,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!


# ubuntu  # 16.04  # mysql  # 解决ubuntu 16.04安装mysql5.7.17后  # 登录时出现ERROR 1045 (28000): Access denied for user ''  # ubuntu 16.04下mysql5.7.17开放远程3306端口  # mysql 5.7.16 安装配置方法图文教程(ubuntu 16.04)  # mysql 5.7.17 安装配置方法图文教程(ubuntu 16.04)  # Ubuntu16.04 server下配置MySQL  # 并开启远程连接的方法  # ubuntu16.04.1下 mysql安装和卸载图文教程  # Ubuntu Server 16.04安装MySQL设置远程访问出现问题的完美解决方案(error:  # 不需要  # 可以通过  # 到此为止  # 连接到  # 小编  # 是在  # 都不  # 也会  # 你可以  # 第一个  # 都要  # 一句  # 安装了  # 在此  # 是这样  # 则是  # 一遍  # 我们可以  # 给大家  # 可以直接 


相关文章: 小说建站VPS选用指南:性能对比、配置优化与建站方案解析  设计网站制作公司有哪些,制作网页教程?  网站app免费制作软件,能免费看各大网站视频的手机app?  c# 在高并发下使用反射发射(Reflection.Emit)的性能  如何用PHP工具快速搭建高效网站?  公司网站设计制作厂家,怎么创建自己的一个网站?  如何快速搭建高效可靠的建站解决方案?  广州顶尖建站服务:企业官网建设与SEO优化一体化方案  官网自助建站平台指南:在线制作、快速建站与模板选择全解析  行程制作网站有哪些,第三方机票电子行程单怎么开?  邀请函制作网站有哪些,有没有做年会邀请函的网站啊?在线制作,模板很多的那种?  建站主机如何选?高性价比方案全解析  ,有什么在线背英语单词效率比较高的网站?  XML的“混合内容”是什么 怎么用DTD或XSD定义  独立制作一个网站多少钱,建立网站需要花多少钱?  建站之星IIS配置教程:代码生成技巧与站点搭建指南  如何在Golang中使用encoding/gob序列化对象_存储和传输数据  北京建设网站制作公司,北京古代建筑博物馆预约官网?  如何在云主机上快速搭建多站点网站?  如何获取开源自助建站系统免费下载链接?  在线教育网站制作平台,山西立德教育官网?  美食网站链接制作教程视频,哪个教做美食的网站比较专业点?  电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?  如何在宝塔面板中修改默认建站目录?  Android滚轮选择时间控件使用详解  番禺网站制作公司哪家值得合作,番禺图书馆新馆开放了吗?  如何在Golang中实现微服务服务拆分_Golang微服务拆分与接口管理方法  网站制作公司排行榜,四大门户网站排名?  开心动漫网站制作软件下载,十分开心动画为何停播?  h5网站制作工具有哪些,h5页面制作工具有哪些?  Android自定义listview布局实现上拉加载下拉刷新功能  大型企业网站制作流程,做网站需要注册公司吗?  建站之星如何实现PC+手机+微信网站五合一建站?  深圳网站制作费用多少钱,读秀,深圳文献港这样的网站很多只提供网上试读,但有些人只要提供试读的文章就能全篇下载,这个是怎么弄的?  如何解决ASP生成WAP建站中文乱码问题?  如何用狗爹虚拟主机快速搭建网站?  非常酷的网站设计制作软件,酷培ai教育官方网站?  如何在腾讯云服务器快速搭建个人网站?  再谈Python中的字符串与字符编码(推荐)  招贴海报怎么做,什么是海报招贴?  如何快速搭建高效WAP手机网站?  沈阳个人网站制作公司,哪个网站能考到沈阳事业编招聘的信息?  打鱼网站制作软件,波克捕鱼官方号怎么注册?  内网网站制作软件,内网的网站如何发布到外网?  西安大型网站制作公司,西安招聘网站最好的是哪个?  ,怎么用自己头像做动态表情包?  浅谈Javascript中的Label语句  高端企业智能建站程序:SEO优化与响应式模板定制开发  如何高效利用200m空间完成建站?  测试制作网站有哪些,测试性取向的权威测试或者网站? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。