er\u不支持\u身份验证模式-sails 1.0和mysql 8.0

laawzig2  于 2021-06-23  发布在  Mysql
关注(0)|答案(3)|浏览(336)

我正在尝试连接sailsjs和mysql

default: {
  adapter: require('sails-mysql'),
  url: 'mysql://root:root@localhost/ventas'
},

但每当我做“扬帆”时,我会得到以下错误:

error: A hook (`orm`) failed to load!
error:
error: { error:
   { Error: ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server; consider upgrading MySQL client
    at Handshake.Sequence._packetToError (C:\ticket\node_modules\mysql\lib\protocol\sequences\Sequence.js:48:14) }

我只是使用sails附带的web应用模板,没有添加代码。
有什么想法吗?

gywdnpxw

gywdnpxw1#

问题可能是加密密码。mysql 8.0使用缓存sha2\u密码。您需要将其更改为mysql\本地\密码:

ALTER USER 'user' identified with mysql_native_password BY 'password';
fdx2calv

fdx2calv2#

问题来自 mysql ,您需要将插件更改为 mysql_native_password 然后 flush privileges; ,请看这里和这里。

wtlkbnrh

wtlkbnrh3#

将密码设置为大写、小写、数字和8个字母长的特殊字符。

相关问题