简介
- 本文以MariaDB官方文档为基础,记录操作步骤
安装Mariadb数据库前的准备工作
准备虚拟机三台
IP地址 | 主机名 | CPU | 内存 |
---|---|---|---|
172.16.10.101 | db1 | 2 | 3G |
172.16.10.102 | db2 | 2 | 3G |
172.16.10.103 | db3 | 2 | 3G |
添加Mariadb官方YUM源,下面以Mariadb 10.1为例
使用以下命令快速添加YUM源
1 | tee /etc/yum.repos.d/mariadb.repo <<-'EOF' |
刷新YUM缓存
1 | yum makecache |
查看Mariadb相关的安装包,注意软件包版本和对应的YUM源名字
1 | yum list MariaDB* galera |
关闭firewalld防火墙
1 | systemctl disable firewalld --now |
设置主机名(设置三台虚拟机主机名分别为db1,db2,db3)
1 | hostnamectl set-hostname db1 |
编辑/etc/hosts文件
1 | cat /etc/hosts <<EOF |
关闭SELINUX
1 | setenforce 0 |
部署MariaDB Galera集群
安装相关软件包
1 | yum install MariaDB-server MariaDB-client MariaDB-client |
启用xtrabackup-v2功能
- 需要额外安装percona提供的软件包
1 | yum install https://www.percona.com/downloads/XtraBackup/Percona-XtraBackup-2.4.10/binary/redhat/7/x86_64/percona-xtrabackup-24-2.4.10-1.el7.x86_64.rpm |
启动MariaDB数据库
- 在db1上启动MariaDB数据库,设置galera集群同步账号,进行安全初始化
1 | systemctl start mariadb.service |
编辑MariaDB配置文件
- 在三个节点上编辑MariaDB配置文件,以开启galera集群功能
1 | cat /etc/my.cnf.d/galera.cnf |
启动galera集群
创建集群
- 在db1上运行galera_new_cluster命令
1 | galera_new_cluster |
查看集群状态
- 在db1上查看集群状态
1 | mysql -uroot -p -e "show status like 'wsrep_cluster_size';" |
监控MariaDB日志
- 监控db1上的MariaDB日志
- 在启动其他节点的时候,能看到其他节点加入到galera集群
1 | tail -f /var/log/mariadb/mariadb.log |
启动其他节点数据库
- 在db2和db3上运行MariaDB数据库
1 | systemctl start mariadb |
检查集群状态
- 在db1上检查集群状态
1 | mysql -uroot -p -e "show status like 'wsrep_cluster_size';" |
验证MariaDB galera集群的同步功能是否正常
在db1上创建用户、数据库
1 | mysql -uroot -p -e "user add testuser;" |
在db2上检查用户、数据库是否存在
1 | mysql -uroot -p -e "select user,host from mysql.user;" |
在db3上删除用户和数据库
1 | mysql -uroot -p -e "delete user 'testuser'" |
在db1上检查用户和数据库是否还在
1 | mysql -uroot -p -e "select user,host from mysql.user;" |