胖蔡说技术
随便扯扯

mysql创建用户后无法进入

说明

在mysql中添加用户:

#mysql -u root -p 
>use mysql;
>update user set password="" where user="root";    //将root用户设置为无需登录密码登录的用户

注:mysql用户的注册表为user表(mysql database下),主要的三个字段Host,user,password,其中password字段中存放的是加密的字段PASSWORD(”),当Host为%号时,可允许所有类型的当前用户登录。

错误

添加一个用户并修改了root密码后出现mysql数据库无法登录:

修改代码如下:

>use mysql;
>insert into user (Host,user,password) values ('127.0.0.1','gerrit','test');
>update user set password='123' where user='root';

经查找发现,mysql登录用户信息保存的密码是以PASSWORD类型保存,如上使用的是一般的varchar存入导致我们登录后的密码无法匹配而登录失败。所以我需要修改用户密码

  •  修改编辑mysql的配置文件/etc/mysql/my.cnf

在[mysqld]组最后添加skip-grant-tables跳过mysql登录的验证环节

  • 重启mysql服务
 #service mysql restart
  • 修改mysql用户密码
#mysql
>use mysql
>update user set password=PASSWORD('123') where user='root';
>update user set password=PASSWORD('123') where user='gerrit';
  • 退出mysql并重启mysql服务登录测试
#mysql -u gerrit -p

然后输入密码登录成功.

赞(0) 打赏
转载请附上原文出处链接:胖蔡叨叨叨 » mysql创建用户后无法进入
分享到: 更多 (0)

请小编喝杯咖啡~

支付宝扫一扫打赏

微信扫一扫打赏