mysql – 无法从node.js服务器连接到localhost数据库
作者:互联网
尝试连接到我的localhost数据库时遇到了很多麻烦.我尝试过使用mysql和mysql-simple节点模块,但在这两种情况下我都无法连接它.
这是我在’mysql’模块中使用的内容:
var mysql = require('mysql');
var connection = mysql.createConnection({
host : 'localhost',
port : '8000',
user : 'uber',
password : 'pass',
});
connection.connect(function(err) {
if (err) throw err;
console.log('Connection Successful');
});
connection.query('USE someDB', function(err) {
if (err) throw err;
console.log('Query Successful');
});
这里’我用’mysql-simple’模块:
var database = require('mysql-simple');
database.init('uber', 'pass', 'mysql', 'localhost', 8000);
database.querySingle('SELECT Host FROM user', function(err, results) {
if (err) {
console.log('error fetching some active users: ' + err);
return;
}
log('Query Successful');
for (var i = 0; i < results.length; i++)
console.log('got active user ' + results[i]);
}
在这两种情况下,当我运行我的node.js服务器时,它从不记录它的连接.我尝试用’127.0.01’替换localhost并创建一个新用户以确保密码正确,但无济于事.为什么不连接?
谢谢
解决方法:
最有可能的是关闭网络,这意味着mysql服务器通过UNIX套接字而不是通过TCP / IP与客户端通信.您可以检查运行mysql客户端并运行“status”命令.如果您在那里看到端口号,那么您的mysql服务器通过TCP / IP进行通信,否则您将看到类似“socket pathname …”的内容,获取路径名并将其提供给node.js连接参数,例如:
…
socketPathname:’/ opt / lampp / var / …’,
…
在https://github.com/felixge/node-mysql页面检查出来(搜索“socketPathname”)
希望,那是你的问题.
标签:mysql,node-js,node-mysql 来源: https://codeday.me/bug/20190728/1566813.html