在Debian系統中掛載數據庫備份文件,需結合備份工具與文件系統操作,以下是關鍵技巧:
邏輯備份(推薦中小型數據庫)
使用mysqldump
導出數據庫為SQL文件,例如:
mysqldump -u root -p mydb > /backups/mydb_$(date +%Y%m%d).sql
。
可通過gzip
壓縮節省空間:
gzip /backups/mydb_*.sql
。
物理備份(適合大型數據庫)
用xtrabackup
工具直接備份數據庫文件(需安裝Percona工具包),支持熱備份:
xtrabackup --backup --target-dir=/backups/mysql_phys
。
直接復制/移動文件
將備份文件復制到目標掛載點(如/mnt/db_backup
):
cp /backups/mydb_*.sql /mnt/db_backup/
。
或使用rsync
同步(支持增量備份):
rsync -avz /backups/mydb_*.sql /mnt/db_backup/
。
通過符號鏈接掛載
若需將備份文件“掛載”到特定路徑(如/var/lib/mysql_backup
),可創建符號鏈接:
ln -s /backups/mydb_*.sql /var/lib/mysql_backup/
。
注意:符號鏈接本身不加密,敏感數據需額外加密處理。
文件加密
用GnuPG
加密備份文件:
gpg --encrypt --recipient your_email@example.com /backups/mydb.sql
。
解密后使用:gpg --decrypt /backups/mydb.sql.gpg > /mnt/db_backup/mydb.sql
。
掛載點權限控制
確保掛載目錄權限僅允許授權用戶訪問:
chmod 700 /mnt/db_backup
chown dbadmin:dbadmin /mnt/db_backup
。
定時備份與掛載
通過crontab
設置每日自動備份并掛載:
0 2 * * * /path/to/backup_script.sh
(腳本內包含備份、復制、加密步驟)。
備份驗證
定期測試備份文件可恢復性,例如:
mysql -u root -p testdb < /mnt/db_backup/mydb.sql
。
mysqldump
+ rsync
+ GnuPG
(簡單易用,適合中小型數據庫)。xtrabackup
+ LUKS
(支持熱備份與磁盤級加密,適合大型數據庫)。注意:操作前確保已安裝必要工具(如mysql-client
、xtrabackup
、cryptsetup
等),生產環境建議先在測試環境驗證流程。