Strapi v4 在生产中使用 MySql 数据库
Strapi v4 use MySql Database in Production
如何添加 Strapi 在生产中使用 mysql 和本地开发使用 sqlite 的配置?
Strapi v4
- 添加 mysql 驱动程序
yarn add mysql
或 npm install mysql
- 添加 dotenv
yarn add dotenv
或 npm install dotenv
- 创建新文件:
config/env/production/database.js
- 添加以下内容:
module.exports = ({ env }) => ({ connection: {
client: "mysql",
connection: {
host: env("DATABASE_HOST", "localhost"),
port: env("DATABASE_PORT", 3306),
database: env("DATABASE_NAME", "default"),
user: env("DATABASE_USERNAME", "root"),
password: env("DATABASE_PASSWORD", ""),
},
useNullAsDefault: true,
},
});
- 将您的配置添加到生产中的 .env 文件。
- Strapi 将选择正确的配置。
1.Add MySQL 驱动 npm 安装 mysql
2.Add sqlite3 驱动 npm install sqlite3
3.Set你的环境文件我们这样做
3.1. On dev set ENV_PATH=%CD%\..\environment\%USERNAME%-s4.env
3.2. On server export ENV_PATH=/home/ec2-user/backend/environment/prod.env
将 env 文件中的 DB_DRIVER 设置为 mysql 或 sqlite3
5.Amend 您的数据库配置文件:
module.exports = ({ env }) => ({
connection:env("DB_DRIVER", "mysql")==="mysql"?{
client: 'mysql',
connection:{
host: env("DATABASE_HOST", "localhost"),
port: env("DATABASE_PORT", 3306),
database: env("DATABASE_NAME", "default"),
username: env("DATABASE_USERNAME", "root"),
password: env("DATABASE_PASSWORD", ""),
}
}
:{
client: 'sqlite',
connection: {
filename: path.join(__dirname, '..', env('DATABASE_FILENAME', '.tmp/data.db')),
},
useNullAsDefault: true,
},
});
如何添加 Strapi 在生产中使用 mysql 和本地开发使用 sqlite 的配置?
Strapi v4
- 添加 mysql 驱动程序
yarn add mysql
或npm install mysql
- 添加 dotenv
yarn add dotenv
或npm install dotenv
- 创建新文件:
config/env/production/database.js
- 添加以下内容:
module.exports = ({ env }) => ({ connection: { client: "mysql", connection: { host: env("DATABASE_HOST", "localhost"), port: env("DATABASE_PORT", 3306), database: env("DATABASE_NAME", "default"), user: env("DATABASE_USERNAME", "root"), password: env("DATABASE_PASSWORD", ""), }, useNullAsDefault: true, }, });
- 将您的配置添加到生产中的 .env 文件。
- Strapi 将选择正确的配置。
1.Add MySQL 驱动 npm 安装 mysql
2.Add sqlite3 驱动 npm install sqlite3
3.Set你的环境文件我们这样做
3.1. On dev set ENV_PATH=%CD%\..\environment\%USERNAME%-s4.env
3.2. On server export ENV_PATH=/home/ec2-user/backend/environment/prod.env
将 env 文件中的 DB_DRIVER 设置为 mysql 或 sqlite3 5.Amend 您的数据库配置文件:
module.exports = ({ env }) => ({ connection:env("DB_DRIVER", "mysql")==="mysql"?{ client: 'mysql', connection:{ host: env("DATABASE_HOST", "localhost"), port: env("DATABASE_PORT", 3306), database: env("DATABASE_NAME", "default"), username: env("DATABASE_USERNAME", "root"), password: env("DATABASE_PASSWORD", ""), } } :{ client: 'sqlite', connection: { filename: path.join(__dirname, '..', env('DATABASE_FILENAME', '.tmp/data.db')), }, useNullAsDefault: true, }, });