首页主机资讯Ubuntu上Node.js应用如何备份与恢复

Ubuntu上Node.js应用如何备份与恢复

时间2025-11-06 20:17:03发布访客分类主机资讯浏览1160
导读:Ubuntu上Node.js应用备份与恢复指南 一、备份步骤 1. 备份项目代码 使用tar命令将Node.js项目目录打包为压缩文件(包含所有源代码、配置文件和package.json/package-lock.json): cd /pa...

Ubuntu上Node.js应用备份与恢复指南

一、备份步骤

1. 备份项目代码

使用tar命令将Node.js项目目录打包为压缩文件(包含所有源代码、配置文件和package.json/package-lock.json):

cd /path/to/your/nodejs/project  # 进入项目目录
tar -czvf project-backup.tar.gz .  # 打包当前目录所有内容

将生成的project-backup.tar.gz复制到安全位置(如外部硬盘、云存储或/home/username/backups目录)。

2. 备份项目依赖

通过package.json文件记录项目依赖,无需单独备份node_modules(恢复时可通过npm install重新安装)。若需备份依赖列表,可生成生产环境依赖JSON文件:

npm install --production --json >
     production-dependencies.json

将此文件与代码备份一同存储。

3. 备份数据库(若有)

若应用使用数据库(如MySQL、MongoDB),需单独备份数据库文件:

  • MySQL:使用mysqldump导出数据库结构和数据:
    mysqldump -u [username] -p[password] [database_name] >
         db_backup.sql
    
  • MongoDB:使用mongodump导出数据库:
    mongodump --db [database_name] --out /path/to/backup/directory
    

将导出的SQL或dump文件复制到安全位置。

4. 自动化备份(可选)

通过脚本+定时任务实现定期自动备份:

  • 编写备份脚本(如backup.sh):
    #!/bin/bash
    BACKUP_DIR="/path/to/backup"
    DATE=$(date +"%Y%m%d_%H%M%S")
    tar -czvf "$BACKUP_DIR/project_$DATE.tar.gz" /path/to/your/nodejs/project
    mysqldump -u [username] -p[password] [database_name] >
         "$BACKUP_DIR/db_$DATE.sql"
    
    赋予执行权限:chmod +x backup.sh
  • 设置定时任务:使用crontab -e添加规则(如每天凌晨2点执行):
    0 2 * * * /path/to/backup.sh
    

5. 使用rsync增量备份(可选)

若需增量备份(仅备份修改过的文件),可使用rsync工具:

rsync -avz --delete /path/to/your/nodejs/project /path/to/backup/directory
  • -a:归档模式(保留权限、时间戳等);
  • -v:显示详细信息;
  • --delete:删除备份目录中不存在于源目录的文件(保持同步)。

二、恢复步骤

1. 恢复项目代码

将备份的project-backup.tar.gz复制到目标服务器的项目目录,解压恢复:

cd /path/to/your/nodejs/project  # 进入目标项目目录
tar -xzvf project-backup.tar.gz  # 解压覆盖现有文件

2. 恢复项目依赖

若未备份node_modules,需重新安装依赖:

npm install  # 根据package.json安装所有依赖

若备份了production-dependencies.json,可使用以下命令快速安装生产环境依赖:

npm install --production --json <
     production-dependencies.json

3. 恢复数据库(若有)

  • MySQL:导入备份的SQL文件:
    mysql -u [username] -p[password] [database_name] <
         db_backup.sql
    
  • MongoDB:导入dump文件:
    mongorestore /path/to/backup/directory/database_name
    

4. 验证恢复

  • 检查项目目录结构、源代码和配置文件是否完整;
  • 运行npm startnode app.js启动应用,测试功能是否正常;
  • 检查数据库连接和数据是否恢复成功。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Ubuntu上Node.js应用如何备份与恢复
本文地址: https://pptw.com/jishu/744323.html
ubuntu getconf如何更新系统信息 Node.js在Ubuntu中如何进行版本控制

游客 回复需填写必要信息