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

13

我使用 Yeoman 生成器创建了一个 ExpressJS MVC 应用程序,并且使用 MySQL 作为数据库,在 config.js 文件中,我想更改 MySQL 连接字符串,但是我不知道如何在字符串中指定密码。

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

请帮帮我。


5
需要密码和数据库名称,格式如下:mysql://root:password@localhost:port/dbName - Umair Ahmed
@UmairAhmed非常感谢!如果您写答案,我会接受它。 - Aren Hovsepyan
4个回答

24

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


2
This is what I need! - Aren Hovsepyan
如果您的密码中有特殊字符,例如#,您需要将它们编码为%23。您可以使用JS方法encodeURIComponent来查找任何字符的编码形式。 - thisisjaymehta

2
这是一个通用的连接字符串解析器,与URL语法保持一致并提供了灵活的可选语法。适用于任何环境。 点击此处 查看详情。
const { ConnectionString } = require('connection-string');

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

0

也许你可以尝试这样做:

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

看一下这个教程

如果这不起作用,你应该给我们提供更多的信息。


-2

我建议使用knex。设置一个管理池的连接池非常简单。请参阅文档

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

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接