1. 程式人生 > >MySQL 8.0版本無法使用 node、Navicat等三方工具連接的問題

MySQL 8.0版本無法使用 node、Navicat等三方工具連接的問題

add ade light sha native col title 登錄 ide

問題描述:

在官網下載mysql之後,一切按照默認配置安裝完畢。

(windows 7 64位操作系統)

使用 MySQL Workbench 8.0 CE 登錄本地庫,正常;

使用 MySQL Workbench 8.0 CE 登錄網絡庫,正常;

使用 node.js登錄本地庫,提示報錯:

Error: ER_NOT_SUPPORTED_AUTH_MODE:

使用 node.js登錄網絡庫,提示報錯:

Error: ER_NOT_SUPPORTED_AUTH_MODE:

  

問題分析:

  高版本的MySQL默認使用新的密碼算法,

  導致使用的 Workbench 客戶端可以正常連接server ,

  而其他舊插架無法兼容。

解決辦法:

1.進入mysql命令行

mysql -hlocalhost -uroot -p

  回車;

  輸上密碼;

2.修改加密方式

ALTER USER‘root‘@‘localhost‘ IDENTIFIED BY ‘Qigaoxiang2018@‘ PASSWORD EXPIRE NEVER;

3.重新修改密碼

 ALTER USER‘root‘@‘%‘ IDENTIFIED WITH mysql_native_password BY ‘Qigaoxiang2018@‘;

  

4.刷新(不做可能無法生效)

FLUSH PRIVILEGES;

  (本方法參考自 http://www.bubuko.com/infodetail-2714769.html)

其他參考辦法:

  • node-mysql連接mysql失敗Error: ER_NOT_SUPPORTED_AUTH_MODE

  • 關於Navicat連接不上MySQL 8.0解決辦法

  • Mysql8.0中caching_sha2_password報錯解決

  • 遠程連接mysql8.0,Error No.2058 Plugin caching_sha2_password could not be loaded

問題預防:

如果想向下兼容,可以在 MySql server 8.0以上版本安裝時選擇

Use Legacy Authentication Method (Retain MySQL 5.x Compatibility)

  技術分享圖片

安裝好就可以正常使用和連接。

MySQL 8.0版本無法使用 node、Navicat等三方工具連接的問題