在Ubuntu上使用MariaDB進行數據備份與恢復,可以遵循以下步驟:
使用mysqldump工具
mysqldump
是MySQL和MariaDB自帶的備份工具。你可以使用它來備份整個數據庫或特定的表。
備份整個數據庫:
mysqldump -u [用戶名] -p[密碼] [數據庫名] > [備份文件名].sql
注意:-p
后面緊跟密碼,中間沒有空格。
備份特定表:
mysqldump -u [用戶名] -p[密碼] [數據庫名] [表名] > [備份文件名].sql
使用--all-databases
選項備份所有數據庫:
mysqldump -u [用戶名] -p --all-databases > [備份文件名].sql
使用xtrabackup工具
xtrabackup
是Percona提供的一個開源工具,用于熱備份InnoDB和XtraDB存儲引擎的數據。它支持全量備份和增量備份。
安裝xtrabackup
:
sudo apt-get install percona-xtrabackup-24
注意:根據你的MariaDB版本選擇合適的xtrabackup
版本。
進行全量備份:
xtrabackup --backup --target-dir=/path/to/backup --user=[用戶名] --password=[密碼]
進行增量備份(基于上一次全量備份):
xtrabackup --backup --target-dir=/path/to/incremental --incremental-basedir=/path/to/last-full-backup --user=[用戶名] --password=[密碼]
使用mysqldump備份恢復
恢復整個數據庫:
mysql -u [用戶名] -p[密碼] [數據庫名] < [備份文件名].sql
恢復特定表:
mysql -u [用戶名] -p[密碼] [數據庫名] < [備份文件名].sql --tables [表名]
使用xtrabackup備份恢復
準備備份(將備份數據應用到數據文件):
xtrabackup --prepare --target-dir=/path/to/backup
恢復數據到新的數據目錄:
xtrabackup --copy-back --target-dir=/path/to/backup --datadir=/path/to/new/datadir
修改數據目錄權限(如果需要):
chown -R mysql:mysql /path/to/new/datadir
重啟MariaDB服務:
sudo systemctl restart mariadb
請注意,在執行備份和恢復操作之前,建議先停止對數據庫的寫操作,以確保數據的一致性。此外,定期測試備份文件的可用性也是一個好習慣。