在 MySQL 连接字符串中指定密码

Specifying password in MySQL connection string

我使用 MySQL 作为 DB 和 Yeoman 生成器创建了 ExpressJS MVC 应用程序 在 config.js 中,我想更改 MySQL 连接字符串,但我不知道在字符串中指定密码。

我的字符串是mysql://root@localhost:3306/

请帮帮我。

我建议使用 knex。设置一个连接池来为您管理池是微不足道的。见 documentation.

var knex = require('knex')({
  client: 'mysql',
  connection: {
    host     : '127.0.0.1',
    user     : 'your_database_user',
    password : 'your_database_password',
    database : 'myapp_test'
  }
});

也许你可以尝试这样的事情:

var mysql      = require('mysql');
var connection = mysql.createConnection({
  host     : 'localhost',
  user     : 'root',
  password : 'YOURPASSWORD',
  database : 'YOURDATABASE'
});

看看这个tutorial

如果这不起作用,您应该向我们提供更多信息。

密码和数据库名称也是连接字符串的一部分。
例如:mysql://root:password@localhost:port/dbName

这是通用的 connection-string 解析器,它提供灵活的可选语法,同时遵守 URL 语法。适用于任何环境。

const { ConnectionString } = require('connection-string');

const cs = new ConnectionString('mysql://user:password@host:port/dbName');