在Linux下,遷移MariaDB數據庫可以通過多種方法實現。以下是一些常見的方法:
mysqldump
和 mysql
命令備份數據庫
使用 mysqldump
命令備份數據庫到一個SQL文件。
mysqldump -u username -p database_name > backup.sql
系統會提示輸入密碼。
將備份文件傳輸到目標服務器
使用 scp
或其他文件傳輸工具將備份文件傳輸到目標服務器。
scp backup.sql user@target_server:/path/to/destination
在目標服務器上恢復數據庫
在目標服務器上使用 mysql
命令將備份文件導入到數據庫中。
mysql -u username -p database_name < /path/to/destination/backup.sql
xtrabackup
工具xtrabackup
是一個用于備份InnoDB和XtraDB存儲引擎的免費工具,支持熱備份。
安裝 xtrabackup
在源服務器和目標服務器上安裝 xtrabackup
。
sudo apt-get install percona-xtrabackup-24 # 適用于Debian/Ubuntu
sudo yum install percona-xtrabackup-24 # 適用于CentOS/RHEL
準備備份 在源服務器上執行全量備份。
xtrabackup --backup --user=username --password=password --target-dir=/path/to/backup
準備備份(可選) 如果需要備份二進制日志,可以執行以下命令:
xtrabackup --prepare --target-dir=/path/to/backup
傳輸備份文件 將備份文件傳輸到目標服務器。
scp -r /path/to/backup user@target_server:/path/to/destination
恢復備份 在目標服務器上執行恢復操作。
xtrabackup --copy-back --target-dir=/path/to/destination --datadir=/var/lib/mysql
chown -R mysql:mysql /var/lib/mysql
systemctl restart mysql
mysqlpump
工具mysqlpump
是MySQL 5.7及以上版本提供的并行備份工具,類似于 mysqldump
,但支持并行導出。
備份數據庫
使用 mysqlpump
命令備份數據庫到一個SQL文件。
mysqlpump -u username -p --databases database_name > backup.sql
將備份文件傳輸到目標服務器
使用 scp
或其他文件傳輸工具將備份文件傳輸到目標服務器。
scp backup.sql user@target_server:/path/to/destination
在目標服務器上恢復數據庫
在目標服務器上使用 mysql
命令將備份文件導入到數據庫中。
mysql -u username -p database_name < /path/to/destination/backup.sql
xtrabackup
,確保目標服務器上有足夠的空間來存儲備份文件。通過以上方法,你可以在Linux下安全地遷移MariaDB數據庫。