首页 > 数据库 >openEuler欧拉配置MySQL8的MGR单主双从

openEuler欧拉配置MySQL8的MGR单主双从

时间:2024-01-19 10:33:39浏览次数:32  
标签:PRD 单主双 group replication MySQL8 loose MGR user MS

一、 系统优化(三个节点全部操作)

关闭防火墙

systemctl stop firewalld
systemctl disable firewalld

关闭selinux

echo "SELINUX=disabled" > /etc/selinux/config
echo "SELINUXTYPE=targeted" >> /etc/selinux/config
cat /etc/selinux/config
setenforce 0

设置主机名

hostnamectl set-hostname PRD-MS-Mysql01

更改host

vim /etc/hosts

XXX.XX.XX.105  PRD-MS-Mysql01
XXX.XX.XX.106  PRD-MS-Mysql02
XXX.XX.XX.107  PRD-MS-Mysql03

安装Mysql

dnf install -y mysql-server
systemctl start mysqld && systemctl enable mysqld

二、MySQL配置 主节点 XXX.XX.XX.105

vim /etc/my.cnf

server_id=105
gtid_mode=ON
enforce_gtid_consistency=ON
binlog_checksum=NONE
log_bin=binlog
log_slave_updates=ON
binlog_format=ROW
master_info_repository=TABLE
relay_log_info_repository=TABLE
transaction_write_set_extraction=XXHASH64
plugin_load_add='group_replication.so'
loose-group_replication_group_name = '57b971b0-8383-11ee-b2f2-2a4e7333b5c9'
loose-group_replication_start_on_boot = off
loose-group_replication_local_address = 'PRD-MS-Mysql01:33061'
loose-group_replication_group_seeds = 'PRD-MS-Mysql01:33061,PRD-MS-Mysql02:33062,PRD-MS-Mysql03:33063'
loose-group_replication_bootstrap_group = off
loose-group_replication_recovery_get_public_key= ON
loose-group_replication_single_primary_mode=on
loose-group_replication_enforce_update_everywhere_checks=off
  loose-group_replication_ip_whitelist='XXX.XX.XX.105,XXX.XX.XX.106,XXX.XX.XX.107'

systemctl restart mysqld

直接输入mysql,改root密码 (Mysql8.0.30 默认root密码为空)

ALTER USER 'root'@'localhost' IDENTIFIED BY '********';

创建MGR组

SET SQL_LOG_BIN=0;
CREATE USER rpl_user@'%' IDENTIFIED BY 'Password105';
GRANT REPLICATION SLAVE ON *.* TO rpl_user@'%';
GRANT CONNECTION_ADMIN ON *.* TO rpl_user@'%';
GRANT BACKUP_ADMIN ON *.* TO rpl_user@'%';
GRANT GROUP_REPLICATION_STREAM ON *.* TO rpl_user@'%';
FLUSH PRIVILEGES;
SET SQL_LOG_BIN=1;

CHANGE REPLICATION SOURCE TO SOURCE_USER='rpl_user', SOURCE_PASSWORD='Password105' FOR CHANNEL 'group_replication_recovery';

启动集群 主节点

SET GLOBAL group_replication_bootstrap_group=ON;   
START GROUP_REPLICATION USER='rpl_user', PASSWORD='Password105';
SET GLOBAL group_replication_bootstrap_group=OFF;

查看状态

select * from performance_schema.replication_group_members;
select * from performance_schema.replication_connection_status\G;

报错日志查看:
tail -f /var/log/mysql/mysqld.log

三、MySQL配置 从节点 XXX.XX.XX.106、107

my.cnf,其他和主节点一样,这两个地方分别改:

server-id=106

loose-group_replication_local_address = 'PRD-MS-Mysql02:33062'
loose-group_replication_group_seeds = 'PRD-MS-Mysql01:33061,PRD-MS-Mysql02:33062,PRD-MS-Mysql03:33063'

改root密码、创建MGR组、查日志等,和主库一样,区别在于,从节点只要一句就能启动:

启动集群 从节点

START GROUP_REPLICATION USER='rpl_user', PASSWORD='Password105';

全部OK后,主节点看看:

mysql> select * from performance_schema.replication_group_members;
+---------------------------+--------------------------------------+----------------+-------------+--------------+-------------+----------------+----------------------------+
| CHANNEL_NAME              | MEMBER_ID                            | MEMBER_HOST    | MEMBER_PORT | MEMBER_STATE | MEMBER_ROLE | MEMBER_VERSION | MEMBER_COMMUNICATION_STACK |
+---------------------------+--------------------------------------+----------------+-------------+--------------+-------------+----------------+----------------------------+
| group_replication_applier | 1d16d8fb-8474-11ee-89c4-2ac8e8fb3ed8 | PRD-MS-Mysql03 |        3306 | ONLINE       | SECONDARY   | 8.0.30         | XCom                       |
| group_replication_applier | 480c6ae8-8535-11ee-a8ef-1e0edcf341b3 | PRD-MS-Mysql01 |        3306 | ONLINE       | PRIMARY     | 8.0.30         | XCom                       |
| group_replication_applier | e6848114-84e8-11ee-ad92-463fdcfb1e78 | PRD-MS-Mysql02 |        3306 | ONLINE       | SECONDARY   | 8.0.30         | XCom                       |
+---------------------------+--------------------------------------+----------------+-------------+--------------+-------------+----------------+----------------------------+
3 rows in set (0.00 sec)

四、后续优化

更新root密码,设置远程访问

select host,user from user;
update user set host='%' where user='root' and host='localhost';
ALTER USER 'root'@'%' IDENTIFIED BY 'c新密码*';
FLUSH PRIVILEGES;

my.cnf ,打开开机自启,主节点:

loose-group_replication_start_on_boot = on
loose-group_replication_bootstrap_group = on

从节点:
loose-group_replication_start_on_boot = on

That's All.

标签:PRD,单主双,group,replication,MySQL8,loose,MGR,user,MS
From: https://blog.51cto.com/amadeus/9325991

相关文章

  • mysql8.0索引数据结构
    1、为什么使用索引假如给数据使用二叉树这样的数据结构进行存储,如下图所示2、索引及其优缺点2.1、索引概述2.2、优点(1)类似大学图书馆建书目索引,提高数据检索的效率,降低数据库的IO成本,这也是创建索引最主要的原因。(2)通过创建唯一索引,可以保证数据库表中每一行数据的唯一性......
  • 常见错误记录之连接MySQL8.0(Navicate Premium 12,出现BigInteger错误)
    一、NavicatePremium12连接MySQL8.0包如下错误: 出错原因:mysql8之前的版本中加密规则为mysql_native_passwordmysql8以后的加密规则为caching_sha2_password解决方法:(1)更新navicat驱动来解决此问题(2)将mysql用户登录的加密规则常用第二种方法:1.用管理员权限打开cmd,输入mysql......
  • mysql8.0详细安装
    Linux安装MySQL8.0.26超详细图文步骤 1、MySQL8.0.26下载官方网站下载MySQL8.0.26安装包,下载地址:https://downloads.mysql.com/archives/community/需要注意:Linux操作系统是32位还是64位,本案例采用Linux64位操作系统进行讲解,通过wget命令下载安装包。使用df-......
  • mysql8.0逻辑架构
    1、逻辑架构剖析1.1、服务器处理客户端请求首先MySQL是典型的C/S架构,即Client/Server架构‘,服务器端程序使用的mysqld。不论客户端进程和服务器进程是采用哪种方式进行通信,最后实现的效果都是:客户端进程向服务器进程发送一段文本(SQL语句),服务器进程处理后再向客户端进程发......
  • MYSQL8以上修改初始root密码的方法
    很遗憾的告诉你,你网上查到的各种改my.enf,各种update,在新版MYSQL中,统统失效。解决方法,如下:1.[root@yisu-5f735cb14d716~]#servicemysqldstartRedirectingto/bin/systemctlstartmysqld.service[root@yisu-5f735cb14d716~]#mysql-vWelcometotheMySQLmonitor.Comm......
  • Mysql8忽略大小写的解决方案
    一、删除服务器数据文件由于8.0没法设置参数后重启(失败),所以必须删掉老库,重新启动才行。切记:;本步骤要删掉老库所有资料,如果是数据库当前有用,请做好备份,再进行操作。systemctlstopmysqldcd/var/lib/mysql默认数据在这里rm-rf*二、添加配置,大小写不敏感vim/etc/my.cnflow......
  • Mysql8.0安装
    在Linux上卸载MySQL可以按照以下步骤进行操作:首先登录到服务器的命令行界面。使用root或者有管理员权限的账户运行以下命令来停止正在运行的MySQL服务:sudoservicemysqlstop接下来,我们需要删除MySQL相关的文件和目录。根据不同的Linux发行版,这些文件和目录位置会有所不同。常......
  • Windows 硬件信息监控工具 OhmGraphite 部署
    1、下载OhmGraphitehttps://github.com/nickbabcock/OhmGraphite/releases2、修改OhmGraphite.exe.config配置(此处使用Prometheus做为数据源)<?xmlversion="1.0"encoding="utf-8"?><configuration><appSettings><addkey="t......
  • mysql8.0用户与权限管理
    1、用户管理1.1、密码过期策略在MySQL中,数据库管理员可以手动设置账号密码过期,也可以建立一个自动密码过期策略。过期策略可以是全局的,也可以为每个账号设置单独的过期策略。ALTERUSERuserPASSWORDEXPIRE;练习:ALTERUSER'kangshifu'@'localhost'PASSWORDEXPIRE;......
  • Windows OhmGraphite 配置
    WindowsOhmGraphite配置由于windows_exporter无法监控温度相关的指标,那么就需要使用OhmGraphite进行监控该指标。下载访问https://github.com/nickbabcock/OhmGraphite/releases/地址进行下载最新的版本,下载后解压到你自己放的目录修改配置编辑OhmGraphite.exe.config文......