溫馨提示×

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

小樊
46
2025-10-16 14:14:26
欄目: 云計算

在Ubuntu上部署MariaDB高可用方案,可以采用多種方法,其中比較常見的是使用MariaDB Galera Cluster。以下是使用MariaDB Galera Cluster在Ubuntu上部署高可用方案的步驟:

1. 準備工作

  • 安裝Ubuntu系統:確保你有一個運行Ubuntu的服務器。
  • 更新系統
    sudo apt update
    sudo apt upgrade -y
    

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
  • <node1_ip>, <node2_ip>, <node3_ip>:所有節點的IP地址。
  • <current_node_ip>:當前節點的IP地址。
  • <node_name>:節點名稱,例如 node1。

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)是開放的??梢允褂?code>ufw或iptables進行配置。

8. 監控和維護

定期檢查集群狀態,監控日志文件 /var/log/mysql/error.log,并確保所有節點的時間同步。

注意事項

  • 數據一致性:Galera Cluster通過多主復制實現高可用性,確保數據一致性。
  • 性能影響:多主復制可能會對寫操作的性能產生一定影響,特別是在高并發寫入場景下。
  • 硬件要求:確保所有節點的硬件配置相當,以避免性能瓶頸。

通過以上步驟,你可以在Ubuntu上成功部署MariaDB Galera Cluster,實現高可用性。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女