ubuntu

如何在Ubuntu上部署MariaDB高可用方案

小樊
47
2025-10-16 14:14:26
栏目: 云计算

在Ubuntu上部署MariaDB高可用方案,可以采用多种方法,其中比较常见的是使用MariaDB Galera Cluster。以下是使用MariaDB Galera Cluster在Ubuntu上部署高可用方案的步骤:

1. 准备工作

2. 安装MariaDB

在所有节点上安装MariaDB:

sudo apt install mariadb-server mariadb-client -y

3. 配置MariaDB

编辑MariaDB配置文件 /etc/mysql/mariadb.conf.d/50-server.cnf(或 /etc/my.cnf),添加或修改以下内容:

[mysqld]
# 启用Galera插件
wsrep_provider=/usr/lib/galera/libgalera_smm.so
wsrep_cluster_address=gcomm://<node1_ip>,<node2_ip>,<node3_ip>
wsrep_node_address=<current_node_ip>
wsrep_node_name=<node_name>
wsrep_sst_method=xtrabackup-v2
wsrep_sst_auth=your_sst_user:your_sst_password
binlog_format=row
default_storage_engine=InnoDB
innodb_autoinc_lock_mode=2

4. 启动并启用MariaDB服务

sudo systemctl start mariadb
sudo systemctl enable mariadb

5. 加入集群

在第一个节点上启动Galera集群:

sudo mysql -u root -p

在MySQL shell中执行:

CREATE USER 'sst_user'@'%' IDENTIFIED BY 'your_sst_password';
GRANT ALL PRIVILEGES ON *.* TO 'sst_user'@'%';
FLUSH PRIVILEGES;

然后,在其他节点上启动MariaDB并加入集群:

sudo systemctl start mariadb

6. 验证集群状态

在任意一个节点上登录MySQL并检查集群状态:

SHOW STATUS LIKE 'wsrep_cluster_size';

如果返回值大于1,说明集群已经成功启动并运行。

7. 配置防火墙

确保所有节点之间的通信端口(默认3306)是开放的。可以使用ufwiptables进行配置。

8. 监控和维护

定期检查集群状态,监控日志文件 /var/log/mysql/error.log,并确保所有节点的时间同步。

注意事项

通过以上步骤,你可以在Ubuntu上成功部署MariaDB Galera Cluster,实现高可用性。

0
看了该问题的人还看了