阅读(4204) (0)

从 Node.js 连接到 MySQL 数据库服务器

2021-06-18 10:16:10 更新

首先,使用以下语句导入mysql模块:

let mysql = require('mysql');
Js

其次,通过调用createConnection()方法并提供MySQL服务器上的详细信息(如主机,用户,密码和数据库),建立与MySQL数据库的连接,如下所示:

let connection = mysql.createConnection({
    host: 'localhost',
    user: 'root',
    password: '',
    database: 'todoapp'
});
Js

在本示例中,我们在本地数据库服务品上与todoapp数据库的连接。

第三步,在连接对象上调用connect()方法连接到MySQL数据库服务器:

connect()方法接受一个具有err参数的回调函数,如果发生任何错误,它将提供详细的错误。

connection.connect(function(err) {
  if (err) {
    return console.error('error: ' + err.message);
  }

  console.log('Connected to the MySQL server.');
});
Js

完整的connect.js程序代码如下所示 -

let mysql = require('mysql');

let connection = mysql.createConnection({
    host: 'localhost',
    user: 'root',
    password: '123456',
    database: 'todoapp'
});

connection.connect(function(err) {
  if (err) {
    return console.error('error: ' + err.message);
  }

  console.log('Connected to the MySQL server.');
});
Js

我们来运行并测试一下connect.js程序 -

F:\worksp\mysql\nodejs\nodejs-connect>node connect.js
openssl config failed: error:02001003:system library:fopen:No such process
Connected to the MySQL server.
Shell

如果看到如上所示的“connected to the MySQL server”的消息,那么恭喜,您已经从node.js应用程序成功连接到MySQL数据库服务器。

假设使用MySQL用户账号的密码有错,并尝试连接到数据,您将收到一条错误消息:

F:\worksp\mysql\nodejs\nodejs-connect>node connect.js
openssl config failed: error:02001003:system library:fopen:No such process
error: ER_ACCESS_DENIED_ERROR: Access denied for user 'root'@'localhost' (using password: YES)
SQL

请注意,您在connection对象上调用的每个方法都按顺序排队和执行。