NodeJS MySQL Dump
在本文中,我们将深入研究在尝试创建 cron 脚本来转储 MySQL 时所面临的挑战使用 NodeJS 的数据库。
问题
脚本似乎成功保存了文件,但生成的文件仍然为空。此外,尝试 console.log 转储会导致空字符串。
解决方案
经过仔细检查,问题变得显而易见。该代码错过了一个关键步骤:连接到数据库。如果不连接数据库,后续的SQL查询和操作将无法执行。
因此,第一步是使用connection.connect()方法连接到数据库。此方法采用回调作为参数。一旦建立连接,就可以安全地执行此回调中的代码。
但是,即使在建立连接之后,还存在其他问题需要解决。 save_backup() 方法是从“SHOW TABLES”回调中调用的,而不是在通过 SQL 查询回调填充备份属性之后调用。
这是代码的修改版本,其中包括必要的更正:
connection.connect(function (err, empty) { if (err) throw new Error ('Panic'); // SQL queries and other actions go here... connection.destroy(); });
通过将 SQL 查询和操作包装在 connection.connect() 回调中,可以确保它们仅在建立连接后执行。此外,一旦执行了所有操作,连接就会关闭。
这应该可以解决问题并允许您成功将 MySQL 数据库转储到文件。
以上是为什么我的 NodeJS 脚本生成空的 MySQL 转储文件?的详细内容。更多信息请关注PHP中文网其他相关文章!