nodejs连接mysql报错Error: ER_BAD_DB_ERROR: Unknown database 'book',菜鸟找不出原因?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nodejs连接mysql报错Error: ER_BAD_DB_ERROR: Unknown database 'book',菜鸟找不出原因?相关的知识,希望对你有一定的参考价值。

感觉代码和数据库都没问题但还是报错,大神怎么解决??

navicat for mysql 和 navicat Premium都是连接的mysql数据库但是node项目取的是navicat for mysql的数据库所以就拿不到在navicat Premium新建的数据库信息

参考技术A 改好数据库之后执行npx sequelize db:create,然后执行npx sequelize-cli db:migrate 参考技术B 解决了吗,我也遇到了同样的问题 参考技术C 解决了没有啊? 我也遇到了同样的问题 一直弄不好 参考技术D 未知数据库,注意路径和文件名

MySQL 8.0版本无法使用 nodeNavicat等三方工具连接的问题

问题描述:

在官网下载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 ‘[email protected]‘ PASSWORD EXPIRE NEVER;

 

3.重新修改密码

 ALTER USER‘root‘@‘%‘ IDENTIFIED WITH mysql_native_password BY ‘[email protected]‘;

  

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

FLUSH PRIVILEGES;

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

 

其他参考办法:

问题预防:

    如果想向下兼容,可以在 MySql server 8.0以上版本安装时选择 

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

  技术分享图片

安装好就可以正常使用和连接。

以上是关于nodejs连接mysql报错Error: ER_BAD_DB_ERROR: Unknown database 'book',菜鸟找不出原因?的主要内容,如果未能解决你的问题,请参考以下文章

MySQL 8.0版本无法使用 nodeNavicat等三方工具连接的问题

NodeJs Mysql 错误:ER_PARSE_ERROR 插入多个表

NodeJS与MySQL首次连接中出现的一些小问题

拒绝用户访问(NodeJS 和 MySQL)

ER_CON_COUNT_ERROR:node-mysql 中的连接错误太多

错误:ER_PARSE_ERROR:您的 SQL 语法有错误;