溫馨提示×

Ubuntu MariaDB復制功能如何設置

小樊
51
2025-07-07 17:49:51
欄目: 云計算

在Ubuntu上設置MariaDB復制功能,可以按照以下步驟進行:

一、準備工作

  1. 確保兩臺服務器都已安裝MariaDB
  • 一臺作為主服務器(Master)。
  • 另一臺作為從服務器(Slave)。
  1. 配置防火墻
  • 確保主服務器允許從服務器的連接請求。
  • 在主服務器上運行以下命令開放3306端口(默認MySQL/MariaDB端口):
    sudo ufw allow 3306/tcp
    
  1. 備份主服務器數據
  • 在進行復制設置之前,建議先備份主服務器上的數據庫,以防萬一。

二、配置主服務器

  1. 編輯主服務器的配置文件(通常是/etc/mysql/mariadb.conf.d/50-server.cnf/etc/my.cnf):
  • 添加或修改以下配置項:
    [mysqld]
    server-id = 1
    log_bin = /var/log/mysql/mysql-bin.log
    binlog_do_db = your_database_name  # 替換為你想要復制的數據庫名稱
    
  1. 重啟MariaDB服務
sudo systemctl restart mariadb
  1. 創建用于復制的專用用戶
  • 登錄到MariaDB:
    mysql -u root -p
    
  • 創建復制用戶并授予權限:
    CREATE USER 'replicator'@'%' IDENTIFIED BY 'your_password';  # 替換為你的密碼
    GRANT REPLICATION SLAVE ON *.* TO 'replicator'@'%';
    FLUSH PRIVILEGES;
    EXIT;
    
  1. 獲取主服務器的二進制日志位置
  • 在MariaDB命令行中執行:
    SHOW MASTER STATUS;
    
  • 記錄下FilePosition的值。

三、配置從服務器

  1. 編輯從服務器的配置文件
  • 添加或修改以下配置項:
    [mysqld]
    server-id = 2
    relay_log = /var/log/mysql/mysql-relay-bin.log
    log_bin = /var/log/mysql/mysql-bin.log
    replicate_do_db = your_database_name  # 替換為你想要復制的數據庫名稱
    
  1. 重啟MariaDB服務
sudo systemctl restart mariadb
  1. 配置從服務器連接到主服務器
  • 登錄到MariaDB:
    mysql -u root -p
    
  • 執行以下命令來設置復制:
    CHANGE MASTER TO
    MASTER_HOST='master_ip_address',  # 替換為主服務器的IP地址
    MASTER_USER='replicator',
    MASTER_PASSWORD='your_password',
    MASTER_LOG_FILE='recorded_log_file_name',  # 替換之前記錄的File值
    MASTER_LOG_POS=recorded_log_position;  # 替換之前記錄的Position值
    START SLAVE;
    
  1. 檢查復制狀態
  • 執行以下命令查看復制是否成功啟動:
    SHOW SLAVE STATUS\G
    
  • 關注Slave_IO_RunningSlave_SQL_Running兩個字段,它們都應該是Yes。

四、驗證復制

  • 在主服務器上創建一個測試數據庫或表,并插入一些數據。
  • 然后在從服務器上檢查這些更改是否已同步。

注意事項

  • 確保主從服務器的時間同步。
  • 定期檢查復制狀態,并處理可能出現的錯誤。
  • 如果需要更高的安全性,可以考慮使用SSL加密復制連接。

按照以上步驟操作后,你應該能夠在Ubuntu上成功設置MariaDB的復制功能。如果在過程中遇到問題,請參考MariaDB官方文檔或尋求社區幫助。

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