如何在运行Node.js应用程序之前确保MySQL数据库存在

时间:2015-07-22 09:40:35

标签: javascript mysql node.js npm sequelize.js

我有一个基于Node.js / Express的应用程序正在使用Sequelize与MySQL服务器通信。在使用npm start启动应用程序之前,确保特定数据库存在的最佳方法是什么?我想这将是某种运行CREATE DATABASE IF NOT EXISTS foo;的一次性数据库初始化脚本 - 我只是不确定将它放在何处以及如何将其连接到生命周期事件。

1 个答案:

答案 0 :(得分:1)

取自the npm docs npm支持package.json脚本的“scripts”属性,其中一个是prestart,因此你可以拥有一个package.json

{ "scripts" :
  { 
  "prestart" : "node scripts/mysqlCheck.js", 
  "start" : "node index.js"
  }
}

然后在mysqlCheck.js进行MySQL数据库检查。然后,当您运行npm start时,prestart脚本将在index.js之前运行。