使用nodejs定时备份mysql数据库与恢复

写在前面

  • 备份是在node.js中使用mysqldump实现
  • 备份的是sql语句
  • 恢复通过直接执行sql语句实现

备份代码

  • 写在nodejs中

    //依赖
    const fs = require('fs');
    const mysqldump = require('mysqldump');

    // 设置数据库连接参数
    const config = {
    connection: {
    host: '127.0.0.1',
    user: '填自己的',
    password: '填自己的',
    database: '填自己的',
    },
    dumpToFile: './backup.sql', // 设置备份文件路径
    };

    // 每1分钟执行一次的定时任务
    const job = new cron.CronJob('0 * * * * *', () => {
    mysqldump(config).then(output => {
    fs.writeFileSync(config.dumpToFile,output.dump);
    })
    .catch(error => {
    console.error(error);
    });
    });

    //启动定时任务
    job.start();

  • 会弹出一个报错,但是对数据没有影响

恢复代码

  • 恢复是直接在cmd窗口中运行

    mysql -uroot -p -Dship_copy < C:/Users/user/Desktop/共享/web/backup.sql

  • 回车后会要求你输入密码

  • -D 后面的是你数据库的名字

  • < 右边的是sql文件的路径

写在后面

  • 网上的教程真的是,一言难尽...
  • 真的很想骂人,互相抄也就算了,抄的还是垃圾...
  • 不知道这样做的意义是什么,把网络环境搞成这样...
相关推荐
dishugj2 分钟前
[ORACLE]oracle用户密码永不过期修改以及ORA-28000报错解决
数据库·oracle
一点事4 分钟前
oracle:存储过程基础语法
数据库·oracle
tebukaopu14816 分钟前
mysql distinct慢
数据库·mysql
步步为营DotNet21 分钟前
深入理解IAsyncEnumerable:异步迭代的底层实现与应用优化
java·服务器·数据库
数据库学啊31 分钟前
专业的国产时序数据库公司
数据库·时序数据库
黑客思维者41 分钟前
突破 Python 多线程限制:GIL 问题的 4 种实战解法
服务器·数据库·python·gil
l1t1 小时前
利用Duckdb求解Advent of Code 2025第5题 自助餐厅
数据库·sql·mysql·算法·oracle·duckdb·advent of code
驾数者1 小时前
Flink SQL关联查询:双流Join与维表Join实战技巧
数据库·sql·flink
njsgcs1 小时前
solidworks 二次开发 获取样条曲线bcurve的控制点
数据库
一 乐1 小时前
智慧养老|基于springboot+小程序社区养老保障系统设计与实现(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·后端·小程序