遷移數據到Linux MariaDB可以通過多種方式進行,以下是一些常見的方法:
備份源數據庫
在源數據庫上運行mysqldump
命令來導出數據。
mysqldump -u [用戶名] -p[密碼] [數據庫名] > backup.sql
注意:-p
后面直接跟密碼,不要有空格。
將備份文件傳輸到目標服務器
使用scp
或其他文件傳輸工具將backup.sql
文件傳輸到目標Linux服務器。
scp backup.sql user@target_server:/path/to/destination/
在目標服務器上導入數據
登錄到目標服務器,使用mysql
命令導入數據。
mysql -u [用戶名] -p[密碼] [數據庫名] < /path/to/destination/backup.sql
安裝Percona XtraBackup 在源服務器和目標服務器上都安裝Percona XtraBackup。
sudo apt-get install percona-xtrabackup-24
執行物理備份 在源服務器上運行以下命令進行全量備份。
xtrabackup --backup --target-dir=/path/to/backup --user=[用戶名] --password=[密碼]
準備備份 將備份文件傳輸到目標服務器,并在目標服務器上準備備份。
xtrabackup --prepare --target-dir=/path/to/backup
恢復備份 將準備好的備份文件復制到MariaDB的數據目錄,并啟動MariaDB服務。
cp -R /path/to/backup/* /var/lib/mysql/
systemctl start mariadb
配置主從復制 在源服務器上配置為Master,在目標服務器上配置為Slave。
my.cnf
或my.ini
文件,添加以下內容:[mysqld]
server-id = 1
log_bin = /var/log/mysql/mysql-bin.log
binlog_do_db = [數據庫名]
my.cnf
或my.ini
文件,添加以下內容:[mysqld]
server-id = 2
relay_log = /var/log/mysql/mysql-relay-bin.log
log_bin = /var/log/mysql/mysql-bin.log
replicate_do_db = [數據庫名]
重啟MariaDB服務 在兩臺服務器上重啟MariaDB服務以應用配置更改。
systemctl restart mariadb
設置復制關系 在目標服務器上執行以下SQL命令來設置復制關系。
CHANGE MASTER TO
MASTER_HOST='源服務器IP',
MASTER_USER='復制用戶',
MASTER_PASSWORD='復制用戶密碼',
MASTER_LOG_FILE='mysql-bin.000001',
MASTER_LOG_POS=107;
START SLAVE;
驗證復制狀態 在目標服務器上檢查復制狀態以確保數據同步成功。
SHOW SLAVE STATUS\G
選擇適合你需求的方法進行數據遷移,并確保在整個過程中監控進度和狀態。