Notes
  • 简介
  • Linux
    • Ubuntu
      • Ubuntu 20.04 ARM64 修改PAGE_SIZE 64k
    • Samba
      • CentOS7安装Samba
      • 简单案例
      • 审计
      • 相关命令
    • Systemd
    • FPM 打包 nginx rpm 包
    • rpm 打包-从二进制文件进行打包
    • Centos7 重置密码
    • CentOS7搭建kvm并创建虚拟机
    • CentOS7-KVM 嵌套虚拟化
    • CentOS7 KVM GPU 穿透
    • Bonding
    • CentOS7 发送邮件
    • CentOS7 安装 OpenVPN
    • Linux 多线路由策略
    • Webmin 安装
    • NoVNC 安装
    • SRS-RTMP 服务部署
    • CentOS7 安装 MongoDB
    • confluence 安装
    • jira 安装
    • crowd 安装
    • ScriptRunner For Jira
    • ScriptRunner For Confluence
    • Ubuntu VNC
    • Ubuntu18.04-VNC 安装
    • deb 打包
    • iptables
    • debian 保持软件包一致
    • Ubuntu18.04 编译安装 grpc
    • CentOS7 安装 odoo13
    • Pacemaker 入门
    • Firewalld Rich Language
    • PHP Xdebug
    • CentOS7.3 编译安装 Python3.6
    • 葫芦儿打包
    • CentOS7 安装 Tomcat8
    • CentOS7 安装 JDK
    • GuacamoleServer 编译安装
    • FreeBSD7.0安装AMP
    • CentOS7 换源
    • deb下载并离线安装
    • pip下载并离线安装
  • Network
    • 案例一
  • AI
    • 微调Qwen2.5
    • Qwen2.5 VL AWQ量化
    • qwen2.5 填充权重
  • JavaScript
  • Zabbix
    • CentOS7 安装 Zabbix4.0 LTS
    • Zabbix 加密连接
    • Zabbix 主动和被动模式
    • Zabbix 配置邮件报警
    • Zabbix 监控 MySQL
  • 数据库
    • MySQL
      • CentOS7 Install MySQL5.7
      • MySql 主从配置
      • CentOS7 安装 Percona XtraDB Cluster
      • MySql 压力测试-sysbench
      • MariaDB Galera Cluster
      • 备份脚本
    • MongoDB
      • 启用账号密码登录
      • 备份脚本
  • Nginx
    • CentOS7 安装 Nginx
    • Nginx 配置
    • nginx-http-flv-module
    • Nginx-WebDAV
  • Docker
    • CentOS7 安装 Docker
    • Dockerfile
    • DockerSwarm 集群
    • Docker 安装 guacamole
  • Python
    • 虚拟环境
  • Windows
    • Windows 问题集合
    • 迅雷自动安装 Chrome 插件
    • RDP 注册表
    • Rdp File Setting
    • 本地组策略对象(LGPO)工具
    • 禁用应用联网
    • SQL Server 问题处理
    • SQL Server Trigger
    • NSIS 脚本
    • 使用QEMU运行ARM64 CentOS7
    • DOS 脚本
    • Windows 11 设置旧版右键菜单
    • 远程桌面二次验证
  • Apple
    • AppStore 应用开发及上架
    • Apple 打包 Golang WebDav 制作 pkg 安装包
  • Android
    • Android Studio创建具有root权限的虚拟机
    • Android读写挂载system
    • Android安卓CA至系统
  • 证书
    • 证书名称(主题)
    • 证书扩展
    • SSL 自签
    • 免费 https 证书申请
  • 树莓派
    • 树莓派系统烧录及系统打包制作
    • 树莓派基础操作
    • 树莓派安装 NextCloud
    • 树莓派安装 LNMP
    • 树莓派自定义开机界面和登录提示
    • 树莓派安装 HomeAssistant
    • HomeAssistant 配置
    • 树莓派自动挂载 U 盘
    • 树莓派安装 vsftpd
    • vsftpd 配置文件详解
  • ceph
    • ceph-deploy 部署 ceph nautilus 版本
    • ceph dashboard
  • OpenStack
    • OpenStack VM 配置 Virtual IP
    • OpenStack Glance 对接 Ceph RBD 存储
    • OpenStack Cinder Volumes 对接 Ceph RBD 存储
    • OpenStack 集群搭建
    • OpenStack Rocky 单节点部署
    • OpenStack Rocky 集群部署
    • OpenStack CentOS6 镜像制作
    • OpenStack-Ubuntu 镜像制作
    • Openstack-Windows 镜像制作
    • OpenStack-RBD 导入镜像
    • OpenStack-Rocky 灾备
    • rbd-mirror
  • FFmpeg
    • CentOS7 静态编译FFmpeg
    • MacOS10.12静态编译FFmpeg
    • CentOS7 Arm64静态编译FFmpeg
    • 使用NVIDIA显卡
    • 脚本
  • Other
    • 华为一碰传标签制作
    • 常用软件
    • wireguard
由 GitBook 提供支持
在本页
  • 安装
  • 启动群集
  • 故障恢复
  • 部分故障
  • 全部故障
  1. 数据库
  2. MySQL

MariaDB Galera Cluster

安装

  1. 安装mariadb-galera-server包,CentOS7.3 默认源没有这个包,可以通过安装centos-release-openstack-newton.noarch源使用 openstack 里面的包,或者配置

    yum install -y centos-release-openstack-newton.noarch && \
    yum install -y mariadb mariadb-galera-server mariadb-galera-common galera rsync
  2. 在node1 节点启动数据库,并运行mysql_secure_installation脚本,对数据进行安全配置,之后再停止数据库。

    systemctl start mariadb.service
    mysql_secure_installation
    systemctl stop mariadb.service
  3. 在所有节点修改/etc/my.cnf.d/galera.cnf文件,参考下列内容修改:

    [mysqld]
    ......
    wsrep_provider = /usr/lib64/galera/libgalera_smm.so
    wsrep_cluster_address = "gcomm://node1,node2,node3"
    wsrep_node_name = node1
    wsrep_node_address=192.168.49.51
  4. 防火墙放行端口。

    firewall-cmd --permanent --add-port=3306/tcp --add-port=4567/tcp --add-port=4444/tcp
    firewall-cmd --reload

    3306,这个是 MariaDB/MySQL 的服务端口,这个都不开那就不用跑 MariaDB/MySQL 服务了。 4567,Galera 做数据复制的通讯和数据传输端口,需要在防火墙放开 TCP 和 UDP 4568,Galera 做增量数据传输使用的端口(Incremental State Transfer, IST),需要防火墙放开 TCP 4444,Galera 做快照状态传输使用的端口(State Snapshot Transfer, SST),需要防火墙放开 TCP

启动群集

在node1 节点执行

galera_new_cluster
#或
/usr/libexec/mysqld --wsrep-new-cluster --user=root &

在其它节点启动数据库

systemctl start mariadb.service

在node1 节点登陆数据库,查看集群信息

SHOW STATUS LIKE 'wsrep%';

故障恢复

部分故障

在故障节点重新启动 MariaDB 即可。

systemctl start mariadb.service

全部故障

分析各节点日志,找出最后故障的节点。

grep "New cluster view" /var/log/mariadb/mariadb.log |awk  -F: 'END { print $1":"$2":"$3 $6":"$7}'

2018-12-26 17:53:10 140056571144960 [Note] WSREP 328316ba-08c2-11e9-bc67-6bc4fabc0830:17, view# -1

“:17, view#”

那个节点中的数字最大,此节点即为最后故障节点

在最后故障节点

galera_new_cluster

在其它节点

systemctl start mariadb.service
上一页MySql 压力测试-sysbench下一页备份脚本

最后更新于3年前