问题.mysql登录的root密码问题

先说下场景:官网上下载mysql-5.7.18-winx64包,解压,设置环境变量完毕,执行install等命令安装完毕,一切正常,并未发现有什么问题。

然后使用客户端连接数据库时,死活报错:ERROR 1045 (28000): Access denied for user 'root'@'localhost' ... ...

网上搜了下解决办法大概都是先不使用密码登录mysql,然后修改root用户的密码,然后就ok了。话是这么说,途中还是折腾了一下,所以记录一下:

在mysql的home目录下找my.ini文件,其实解压开来压根就没有这个文件,就自己建个吧,简要内容如下:

关键在最下面那一句:skip-grant-tables,加上这一句后重启mysql服务,就可以 mysql -uroot 跳过密码登上mysql了。前后对比如下:

这个时候看到已经可以执行sql了,于是直接更新user表,只是user表人家没有password字段,改了名叫 authentication_string,可以select看下:

于是:

修改后quit,重新用密码登录(到这里已经解决了root的密码问题),接着新建库:

新建用户时,还是有一些报错,不过都不算问题了,依照提示操作就行了,需要将my.ini中的skip-grant-tables去除后重启服务,另外重置root密码,在用户建好之后,给用户赋数据库操作权限,然后执行 flush privileges(将修改刷到内存中,实时生效):

这个时候可以用客户端进行连接了,如mysql-front:

但是又发现一个意外的错:

这个查下 3167是什么错就行了:

因为从mysql5.7.6开始information_schema.global_status已经开始被舍弃,为了兼容性,此时需要打开 show_compatibility_56,

所以执行set global show_compatibility_56=on; 打开前后对比如下:

最后终于没有问题,正常登陆了:

转载于:https://www.cnblogs.com/shanhm1991/p/7144728.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值