在Debian上部署的LNMP(Linux, Nginx, MySQL, PHP)環境需要定期備份以確保數據的安全性和可恢復性。以下是一個基本的備份與恢復策略:
backup_setup.sh
:這是一個腳本,用于設置備份參數。你需要先進入 /lnmp
目錄下執行 ./backup_setup.sh
來設置備份參數。backup.sh
:用于立即執行備份。你可以通過 ./backup.sh
命令來進行備份。備份Nginx配置和網站文件:
sudo systemctl stop nginx
sudo cp -r /etc/nginx /path/to/backup/
sudo systemctl start nginx
備份MySQL數據庫:
sudo systemctl stop mariadb
mysqldump
命令備份數據庫:mysqldump -u username -p database_name > database_name.sql
sudo systemctl start mariadb
備份PHP配置和網站代碼:
sudo cp /etc/php/版本/fpm/pool.d/www.conf /path/to/backup/
sudo cp -r /var/www/html /path/to/backup/
crontab
:crontab -e
0 1 * * * cd /lnmp; ./backup.sh /dev/null 2&1 &
sudo systemctl stop nginx
sudo cp -r /path/to/backup/ /etc/nginx/
sudo systemctl start nginx
sudo systemctl stop mariadb
sudo cp database_name.sql /var/lib/mysql/
sudo systemctl start mariadb
mysql -u username -p
并輸入密碼以恢復數據庫。sudo cp /path/to/backup/www.conf /etc/php/版本/fpm/pool.d/
sudo cp -r /path/to/backup/ /var/www/html/
在執行備份操作時,請確保你有足夠的存儲空間來保存備份文件,并且考慮到備份數據的安全性,最好將備份文件存儲在安全的位置,如外部硬盤或云存儲服務中。此外,定期測試備份文件的恢復過程也是一個好習慣,以確保備份是有效的。