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

fri*_*mle 5 javascript mysql node.js npm sequelize.js

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

Phi*_*ien 0

摘自npm 文档npm 支持 package.json 脚本的“scripts”属性,其中之一是prestart,因此您可以拥有一个 package.json

{ "scripts" :
  { 
  "prestart" : "node scripts/mysqlCheck.js", 
  "start" : "node index.js"
  }
}
Run Code Online (Sandbox Code Playgroud)

然后进行mysqlCheck.jsMySQL 数据库检查。那么当你运行npm start脚本时prestart就会先运行index.js