node.js:exopress-连接mysql报错:Access denied for user ‘root’@’localhost’ (using password: NO)问题解决。详解编程语言

问题描述:在使用express框架mysql模块时,连接数据库时报如下错误:

node.js:exopress-连接mysql报错:Access denied for user 'root'@'localhost' (using password: NO)问题解决。详解编程语言

实际上本地默认的root用户和密码都是正确的。

解决思路:

方法一:新建数据库用户,并且分配对应的数据库的权限。

方法二:修改root用户的密码为空()

具体实现:

    方案一:

//创建用户 
CREATE USER 'victor'@'localhost' IDENTIFIED BY '123456';--victor为用户名,localhost为数据库主机地址,123456为密码 
 
//给用户分配全权限 
grant all on *.* to 'victor'@'localhost' identified by password '123456';--all代表所有的数据库 *.*代表所有的权限

方案二:(下面是三种修改mysql密码的方法)

方法1: 用SET PASSWORD命令 
 
  mysql -u root 
 
  mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass'); 
 
方法2:用mysqladmin 
 
  mysqladmin -u root password "newpass" 
 
  如果root已经设置过密码,采用如下方法 
 
  mysqladmin -u root password oldpass "newpass" 
 
方法3: 用UPDATE直接编辑user表 
 
  mysql -u root 
 
  mysql> use mysql; 
 
  mysql> UPDATE user SET Password = PASSWORD('newpass') WHERE user = 'root'; 
 
  mysql> FLUSH PRIVILEGES;

//遗留问题

当我修改root密码为任意非空密码的时候,还是报原来错误的。待求解~~~~

    

原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/11521.html

(0)
上一篇 2021年7月19日
下一篇 2021年7月19日

相关推荐

发表回复

登录后才能评论