数据库备份
使用 mysqldump 命令备份MySQL数据库,支持全库或单表备份:
# 全库备份
mysqldump -u 用户名 -p密码 --all-databases > all_db_backup.sql
# 单表备份
mysqldump -u 用户名 -p密码 数据库名 表名 > table_backup.sql
可将备份文件压缩存储(如 gzip)或同步至远程服务器(rsync)。
配置文件备份
/etc/nginx/nginx.conf 及站点配置:cp -r /etc/nginx /path/to/backup/nginx_conf
php.ini)和项目代码:cp -r /etc/php/版本 /path/to/backup/php_conf
tar -czvf project_backup.tar.gz /var/www/html
系统级备份(可选)
tar 打包系统关键文件(谨慎操作,需停止服务):tar -czvf lnmp_backup.tar.gz --exclude=/proc --exclude=/sys /etc /var/www /usr/local/nginx
rsync 或 rclone 将备份文件上传至云存储。自动化备份
通过 crontab 设置定时任务,例如每天凌晨2点备份:
crontab -e
添加:0 2 * * * /path/to/backup_script.sh
数据库恢复
mysql -u 用户名 -p密码 数据库名 < backup_file.sql
若需恢复全库,需先创建空库并导入。
配置文件恢复
# Nginx
cp -r /path/to/backup/nginx_conf/* /etc/nginx/
systemctl restart nginx
# PHP
cp -r /path/to/backup/php_conf/* /etc/php/版本/
系统级恢复
tar -xzvf lnmp_backup.tar.gz -C /
reboot
chmod 600),敏感信息可加密。参考来源: