Mysql Node.js:拒绝用户访问';根'@';本地主机';(使用密码:否)
我在将node.js应用程序与mysql数据库连接时遇到问题。我得到的错误如下:Mysql Node.js:拒绝用户访问';根'@';本地主机';(使用密码:否),mysql,node.js,Mysql,Node.js,我在将node.js应用程序与mysql数据库连接时遇到问题。我得到的错误如下: Access denied for user 'root'@'localhost' (using password: NO) 我做了一些挖掘,发现了以下连接测试: 第一个代码: mysql -u root -p -h 127.0.0.1 -P 3306 我测试了上面的代码,它会提示出密码,并给我访问它的权限 第二个代码: mysql -u root -p -h > localhost -P 3306 我
Access denied for user 'root'@'localhost' (using password: NO)
我做了一些挖掘,发现了以下连接测试:
第一个代码:
mysql -u root -p -h 127.0.0.1 -P 3306
我测试了上面的代码,它会提示出密码,并给我访问它的权限
第二个代码:
mysql -u root -p -h > localhost -P 3306
我测试了上面的代码,得到了一个访问被拒绝的消息
根据我的理解,如果我错了,请纠正我,localhost==127.0.0.1。那么,由于它们是相同的,其中一个无法访问的原因是什么呢
请帮帮我。我已经被困在这个问题上好几个小时了。谢谢你抽出时间
My node.js登录代码(未完成):
main node.js:
var express = require('express');
var bodyParser = require('body-parser');
var flash = require('connect-flash');
var session = require('express-session'),
morgan = require('morgan'),
sequelize = require('sequelize'),
passport = require('passport'),
jwt = require('jsonwebtoken');
util = require('util');
mysql = require('mysql');
cookieParser = require('cookie-parser');
var app = express();
require('./controllers/user')(passport);
var compController = require('./controllers/compController');
var patController = require('./controllers/patController');
var taskController = require('./controllers/taskController');
var loginController = require('./controllers/loginController');
var staffController = require('./controllers/staffController');
var checkController = require('./controllers/checkController');
var repController = require('./controllers/repController');
var homeController = require('./controllers/homeController');
var noticeController = require('./controllers/noticeController');
app.set('view engine', 'ejs');
app.use('/assets', express.static('assets'));
app.use('/js', express.static('js'));
app.set('views', __dirname + '/views');
app.use(bodyParser.urlencoded({ extended:true }));
app.use(bodyParser.json());
app.use(session({ cookie: { maxAge: 60000 }, secret: 'sarah', resave: true, saveUninitialized: true}))
app.use(flash());
app.use(morgan('dev'));
app.use(cookieParser());
app.use(passport.initialize());
app.use(passport.session());
// require('./controllers/loginController')(app,passport);
compController(app);
patController(app);
taskController(app);
staffController(app);
checkController(app);
repController(app);
homeController(app);
loginController(app);
noticeController(app);
// app.use((req,res,next) => {
// var err = new Error('Page not found');
// err.status = 404;
// next(err);
// });
// app.use((err,req,res,next) => {
// res.status(err.status || 500);
// res.send(err.message);
// })
app.listen(3003, 'localhost', function(){
console.log("Working");
});
@num8er我已经将node.js代码放在问题中了。感谢您的帮助尝试
host:'127.0.0.1'
mysql的原因localhost
和127.0.0.1
在mysql.user
表中是不同的记录,它负责db用户信任。@num8er问题仍然在发生。我应该怎么做?也试试这个:const connection=mysql.createConnection('mysql://root:9%40v62STH9J@127.0.0.1:3306/fyp')代码>正如我从创建连接的代码中看到的,它是正确的。我认为您的代码中还有其他地方未在连接中传递密码。否则它需要调试,因为它必须按照您已经完成的方式工作。
var express = require('express');
var bodyParser = require('body-parser');
var flash = require('connect-flash');
var session = require('express-session'),
morgan = require('morgan'),
sequelize = require('sequelize'),
passport = require('passport'),
jwt = require('jsonwebtoken');
util = require('util');
mysql = require('mysql');
cookieParser = require('cookie-parser');
var app = express();
require('./controllers/user')(passport);
var compController = require('./controllers/compController');
var patController = require('./controllers/patController');
var taskController = require('./controllers/taskController');
var loginController = require('./controllers/loginController');
var staffController = require('./controllers/staffController');
var checkController = require('./controllers/checkController');
var repController = require('./controllers/repController');
var homeController = require('./controllers/homeController');
var noticeController = require('./controllers/noticeController');
app.set('view engine', 'ejs');
app.use('/assets', express.static('assets'));
app.use('/js', express.static('js'));
app.set('views', __dirname + '/views');
app.use(bodyParser.urlencoded({ extended:true }));
app.use(bodyParser.json());
app.use(session({ cookie: { maxAge: 60000 }, secret: 'sarah', resave: true, saveUninitialized: true}))
app.use(flash());
app.use(morgan('dev'));
app.use(cookieParser());
app.use(passport.initialize());
app.use(passport.session());
// require('./controllers/loginController')(app,passport);
compController(app);
patController(app);
taskController(app);
staffController(app);
checkController(app);
repController(app);
homeController(app);
loginController(app);
noticeController(app);
// app.use((req,res,next) => {
// var err = new Error('Page not found');
// err.status = 404;
// next(err);
// });
// app.use((err,req,res,next) => {
// res.status(err.status || 500);
// res.send(err.message);
// })
app.listen(3003, 'localhost', function(){
console.log("Working");
});