溫馨提示×

如何在Linux上遷移MariaDB

小樊
34
2025-07-09 12:26:21
欄目: 云計算

在Linux上遷移MariaDB數據庫可以按照以下步驟進行:

1. 準備工作

  • 備份數據:在進行任何遷移之前,務必備份所有重要的數據庫數據。
    mysqldump -u root -p --all-databases > full_backup.sql
    
  • 安裝新服務器:在新的Linux服務器上安裝MariaDB。
    sudo apt-get update
    sudo apt-get install mariadb-server
    

2. 配置新服務器

  • 啟動并啟用MariaDB服務
    sudo systemctl start mariadb
    sudo systemctl enable mariadb
    
  • 運行安全腳本
    sudo mysql_secure_installation
    
    按照提示設置root密碼,刪除匿名用戶,禁止root遠程登錄等。

3. 導入數據

  • 將備份文件傳輸到新服務器
    scp full_backup.sql user@new_server_ip:/path/to/backup/
    
  • 在新服務器上導入數據
    mysql -u root -p < /path/to/backup/full_backup.sql
    

4. 配置復制(可選)

如果你希望實現主從復制,以便在新服務器上進行讀操作,可以在舊服務器上配置復制。

在舊服務器上:

  1. 編輯my.cnf文件(通常位于/etc/mysql/my.cnf/etc/my.cnf):
    [mysqld]
    server-id = 1
    log_bin = /var/log/mysql/mysql-bin.log
    binlog_do_db = your_database_name
    
  2. 重啟MariaDB服務
    sudo systemctl restart mariadb
    
  3. 創建復制用戶
    CREATE USER 'replicator'@'%' IDENTIFIED BY 'password';
    GRANT REPLICATION SLAVE ON *.* TO 'replicator'@'%';
    FLUSH PRIVILEGES;
    
  4. 獲取二進制日志位置
    SHOW MASTER STATUS;
    
    記錄FilePosition的值。

在新服務器上:

  1. 編輯my.cnf文件
    [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
    
  2. 重啟MariaDB服務
    sudo systemctl restart mariadb
    
  3. 配置復制
    CHANGE MASTER TO
    MASTER_HOST='old_server_ip',
    MASTER_USER='replicator',
    MASTER_PASSWORD='password',
    MASTER_LOG_FILE='mysql-bin.000001',
    MASTER_LOG_POS=123;
    START SLAVE;
    

5. 驗證復制狀態

在新服務器上運行以下命令檢查復制狀態:

SHOW SLAVE STATUS\G

確保Slave_IO_RunningSlave_SQL_Running都是Yes。

6. 測試

  • 在舊服務器上進行寫操作,然后在新的主服務器上檢查數據是否同步。

7. 切換流量

如果一切正常,可以將應用程序的數據庫連接字符串指向新的主服務器。

注意事項

  • 確保網絡連接穩定。
  • 在遷移過程中避免對數據庫進行寫操作,以免數據不一致。
  • 根據實際情況調整配置文件中的參數。

通過以上步驟,你應該能夠成功地在Linux上遷移MariaDB數據庫。

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