问题描述:在使用express框架mysql模块时,连接数据库时报如下错误:
实际上本地默认的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