Mysql 如何修复linux中使用nodejs连接数据库的错误?
我正在尝试用nodejs连接mysql,但是我的代码中有一个问题,请帮助Mysql 如何修复linux中使用nodejs连接数据库的错误?,mysql,node.js,Mysql,Node.js,我正在尝试用nodejs连接mysql,但是我的代码中有一个问题,请帮助 var express = require("express"); var mysql = require('mysql'); var connection = mysql.createConnection({ host : 'localhost', user : 'root', password : 'admin', database : 'dbname',
var express = require("express");
var mysql = require('mysql');
var connection = mysql.createConnection({
host : 'localhost',
user : 'root',
password : 'admin',
database : 'dbname',
});
var app = express();
connection.connect(function(err){
if(!err) {
console.log("Database is connected ... \n\n");
} else {
console.log("Error connecting database ... \n\n");
}
});
app.listen(3000);
在终端中,我得到以下输出:
voldemort@Lenovo:~/Documents/cloudprint$node server.js
连接数据库时出错 默认情况下,MySQL客户端使用安全身份验证与服务器建立连接 unsecureauth:允许连接到请求旧(不安全)身份验证方法的MySQL实例。(默认值:false) 查看您的评论中的错误回溯,您的服务器当前似乎未配置为允许安全身份验证 如果您的MySQL服务器版本为
=5.6.5
。
对于用户帐户来说,这是很难做到的
如果发现运行的是不支持secure auth协议的旧版本,您可能还需要更新MySQL服务器。请提供完整的错误输出。但是您可能还需要添加端口设置,检查您的数据库端口是否与默认的3306端口不同。如果您还显示了实际错误,则可能会有所帮助。错误消息通常提供大量信息,而不仅仅是错误发生的标志。添加
console.log(err))
。它说什么?@molamk我在哪里添加它?在console.log(“连接数据库时出错…\n\n”)代码>
var connection = mysql.createConnection({
host : 'localhost',
user : 'root',
password : 'admin',
database : 'dbname',
insecureAuth: true
});