在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/
在执行备份操作时,请确保你有足够的存储空间来保存备份文件,并且考虑到备份数据的安全性,最好将备份文件存储在安全的位置,如外部硬盘或云存储服务中。此外,定期测试备份文件的恢复过程也是一个好习惯,以确保备份是有效的。