崩溃了呀!xdm!
我用node连接mysql连不上呀!怎么肥事?
先来看下我的代码吧!
const mysql = require('mysql')
const db = mysql.createConnection({
host: 'localhost',
port: 3306,
user: 'root',
password: '123456',
database: 'my_db_01'
})
db.connect()
db.query('SELECT 1', (err, results) => {
if(err) return console.log(err.message)
console.log(results)
})
经过查资料发现,是因为Node现在不支持mysql8.0.0版本以上的加密方式
那么我们就修改mysql的权限吧...
我使用的是mac,应该也和linux通用的吧。
好了,不多bb...
解决方法
-
打开命令行,输入这串代码
/usr/local/MySQL/bin/mysql -u root -p -
然后输入你mysql的登录密码,进入mysql的环境
-
然后输入
alter user 'root'@'localhost' identified with mysql_native_password by 'mysql的密码';注意:一定要加分号 -
最后输入这个命令
flush privileges;,回车!大哥,搞定!
结语
成功解决!