连接到strapi的MySql DB
问题描述:
我似乎无法理解http://strapi.io/documentation/configuration#databases的文档连接到strapi的MySql DB
如何连接到MySqlDB?在databases.json中,我将所有的数据库设置设置为user:root,pwd:secret123,host:192.12.2.123等等?
答
Sails框架和Waterline ORM的MySQL适配器。允许你通过你的模型使用MySQL来存储和检索数据。还为直接接口提供了一个 query()方法来执行原始SQL命令。
从NPM安装。
在您的应用程序:
$ npm install sails-mysql
帆配置
mysql的配置添加到config/connections.js文件。基本选项:
module.exports.connections = {
mysql: {
module : 'sails-mysql',
host : 'localhost',
port : 3306,
user : 'username',
password : 'password',
database : 'MySQL Database Name'
// OR (explicit sets take precedence)
module : 'sails-mysql',
url : 'mysql2://USER:[email protected]:PORT/DATABASENAME'
// Optional
charset : 'utf8',
collation : 'utf8_swedish_ci'
}
};
,然后更改默认模式配置到config/models.js:
module.exports.models = {
connection: 'mysql'
};
运行测试
您可以设置环境变量来覆盖默认的数据库配置用于测试,例如:
$ WATERLINE_ADAPTER_TESTS_PASSWORD=yourpass npm test
Default settings are:
{
host: process.env.WATERLINE_ADAPTER_TESTS_HOST || 'localhost',
port: process.env.WATERLINE_ADAPTER_TESTS_PORT || 3306,
user: process.env.WATERLINE_ADAPTER_TESTS_USER || 'root',
password: process.env.WATERLINE_ADAPTER_TESTS_PASSWORD || '',
database: process.env.WATERLINE_ADAPTER_TESTS_DATABASE || 'sails_mysql',
pool: true,
connectionLimit: 10,
waitForConnections: true
}
答
您应该增加这样一个新的连接:
{
"orm": {
"adapters": {
"mysql": "sails-mysql"
},
"defaultConnection": "default",
"connections": {
"someMysqlServer": {
"adapter": "mysql",
"host": "YOUR_MYSQL_SERVER_HOSTNAME_OR_IP_ADDRESS",
"user": "YOUR_MYSQL_USER",
"password": "YOUR_MYSQL_PASSWORD",
"database": "YOUR_MYSQL_DB"
}
}
}
Strapi的当前版本是基于水线因此,如果您不能找到文档中的权利信息,看看水线/也是帆船文件。
+0
谢谢!这就是我要找的。 – codely
您可以添加您用于连接的代码,以及代码执行期间您遇到的问题是什么? –
我在哪里把我的代码用于连接?如果有的话,示例也会有帮助。我对strapi很陌生,只是试图浏览关于如何做事情的文档。我在“where-tos”和“how-tos”方面处于亏损状态。 – codely