MySQLとKnexでデータベースを移行しようとしています。エラー:ユーザー '' @ 'localhost'(パスワード:NOを使用)のアクセスが拒否されました
私はコマンドknex migrate:latest
を実行すると、私が何を最も私を混乱することですが、私は、(「123」と「NO」に)コードベースにパスワードを追加しようとしました
ER_ACCESS_DENIED_ERROR: Access denied for user ''@'localhost' (using password: NO)
を取得私は私のデータベースファイルにuser: "root"
を持っていたとしても、エラーがユーザーとして空の文字列を与える...
私は私が想像するものを共有関連のファイルです:
// mysql_db.js
const knex = require('knex')({
client: 'mysql',
connection: {
host: 'localhost',
user: 'root',
password: '',
database: 'SQL_Data',
},
});
module.exports = knex;
//は
const path = require('path');
module.exports = {
development: {
client: 'mysql',
connection: {
filename: '/server/SQL/mysql_db',
},
migrations: {
directory: path.join(__dirname, '/server/SQL/migrations'),
},
seeds: {
directory: path.join(__dirname, '/server/SQL/seeds'),
},
},
};
//knex.js
const environment = proces.env.NODE_ENV || 'development';
const config = require('../../knexfile.js')[environment];
module.exports = require(knex)('config');
// "移行定義" エラーメッセージとして
exports.up = (knex, Promise) => knex.schema.createTable('sql_table', ((table) => {
table.increments();
table.string('name').notNullable();
table.string('email').notNullable();
table.string('description').notNullable();
table.string('url').otNullable();
}));
exports.down = (knex, Promise) => knex.schema.dropTable('sql_table');
http://perkframework.com/v1/guides/database:あなたのmysql_dbで
あなたは同じ設定を使用することができ へのinit knexにこのような何かをしたいかもしれません-migrations-knex.html – Hackerman