{"id":3041,"date":"2022-12-30T23:37:32","date_gmt":"2022-12-30T14:37:32","guid":{"rendered":"https:\/\/took.jp\/?p=3041"},"modified":"2022-12-30T23:37:32","modified_gmt":"2022-12-30T14:37:32","slug":"sequelize-migration-env","status":"publish","type":"post","link":"https:\/\/took.jp\/tech-blog\/sequelize-migration-env\/","title":{"rendered":"\u3010Sequelize\u3011migration\u306eDB\u63a5\u7d9a\u8a2d\u5b9a\u5024\u306benv\u306b\u8a2d\u5b9a\u3057\u305f\u74b0\u5883\u5909\u6570\u3092\u4f7f\u7528\u3059\u308b"},"content":{"rendered":"<h2>\u3010Sequelize\u3011migration\u306eDB\u63a5\u7d9a\u8a2d\u5b9a\u5024\u306benv\u306b\u8a2d\u5b9a\u3057\u305f\u74b0\u5883\u5909\u6570\u3092\u4f7f\u7528\u3059\u308b<\/h2>\n<p>DB\u63a5\u7d9a\u60c5\u5831\u3092\u8a18\u8ff0\u3057\u305f\u300c<strong>config.js<\/strong>\u300d\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002<\/p>\n<pre class=\"line-numbers\"><code class=\"language-js\">module.exports = {\r\n  development: {\r\n    username: process.env.MYSQL_USER,\r\n    password: process.env.MYSQL_PASSWD,\r\n    database: process.env.MYSQL_DB,\r\n    host: process.env.MYSQL_HOST,\r\n    dialect: 'mysql',\r\n    logging: false,\r\n  },\r\n  test: {\r\n    username: process.env.MYSQL_USER,\r\n    password: process.env.MYSQL_PASSWD,\r\n    database: process.env.MYSQL_DB,\r\n    host: process.env.MYSQL_HOST,\r\n    dialect: 'mysql',\r\n    logging: false,\r\n  },\r\n  production: {\r\n    username: process.env.MYSQL_USER,\r\n    password: process.env.MYSQL_PASSWD,\r\n    database: process.env.MYSQL_DB,\r\n    host: process.env.MYSQL_HOST,\r\n    dialect: 'mysql',\r\n    logging: false,\r\n    pool: {\r\n      max: 5,\r\n      min: 0,\r\n      acquire: 30000,\r\n      idle: 10000,\r\n    },\r\n  },\r\n};\r\n<\/code><\/pre>\n<p>&nbsp;<\/p>\n<p>\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u30eb\u30fc\u30c8\u76f4\u4e0b\u306b\u3001\u300c<strong>.sequelizerc<\/strong>\u300d\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002<\/p>\n<p>\u4e0b\u8a18\u306e\u5404\u30d5\u30a1\u30a4\u30eb\u30d1\u30b9\u306f\u3001\u81ea\u8eab\u306e\u74b0\u5883\u306b\u5408\u308f\u305b\u5909\u66f4\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<pre class=\"line-numbers\"><code class=\"language-other\">'use strict';\r\n\r\nrequire('dotenv').config();\r\nmodule.exports = {\r\n  \"config\": \"db\/config.js\",\r\n  \"models-path\": \"src\/models\",\r\n  \"seeders-path\": \"db\/seeders\",\r\n  \"migrations-path\": \"db\/migrations\",\r\n};<\/code><\/pre>\n<p>&nbsp;<\/p>\n<p>\u3053\u308c\u3067\u8a2d\u5b9a\u306f\u5b8c\u4e86\u3067\u3059\u3002<\/p>\n<p>\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3057\u3066\u8aad\u307f\u8fbc\u307e\u308c\u308b\u3053\u3068\u3092\u78ba\u8a8d\u3057\u307e\u3057\u3087\u3046\u3002<\/p>\n<pre><code class=\"language-other\">npx sequelize-cli db:migrate <\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>\u3010Sequelize\u3011migration\u306eDB\u63a5\u7d9a\u8a2d\u5b9a\u5024\u306benv\u306b\u8a2d\u5b9a\u3057\u305f\u74b0\u5883\u5909\u6570\u3092\u4f7f\u7528\u3059\u308b DB\u63a5\u7d9a\u60c5\u5831\u3092\u8a18\u8ff0\u3057\u305f\u300cconfig.js\u300d\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002 module.exports = { development: { username:\u2026<\/p>\n","protected":false},"author":3,"featured_media":3044,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[64],"tags":[],"class_list":["post-3041","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-nodejs"],"_links":{"self":[{"href":"https:\/\/took.jp\/tech-blog\/wp-json\/wp\/v2\/posts\/3041","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/took.jp\/tech-blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/took.jp\/tech-blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/took.jp\/tech-blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/took.jp\/tech-blog\/wp-json\/wp\/v2\/comments?post=3041"}],"version-history":[{"count":0,"href":"https:\/\/took.jp\/tech-blog\/wp-json\/wp\/v2\/posts\/3041\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/took.jp\/tech-blog\/wp-json\/wp\/v2\/media\/3044"}],"wp:attachment":[{"href":"https:\/\/took.jp\/tech-blog\/wp-json\/wp\/v2\/media?parent=3041"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/took.jp\/tech-blog\/wp-json\/wp\/v2\/categories?post=3041"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/took.jp\/tech-blog\/wp-json\/wp\/v2\/tags?post=3041"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}