mac下mysql的用户设置密码

  1. 利用navicat连接mysql,使用root可以成功登录,root不需要密码登录;
  2. 登录成功之后,navicat的管理用户的功能,可以给用户添加密码,例如修改用户root@%的密码,可以成功保存;
  3. 在重新用navicat登录,发现需要密码,密码正确可以成功登录;
  4. 利用navicat的用户管理功能创建一个用户,输入用户名,密码,Host,设置好权限,保存,然后用navicat登录刚创建用户,提示1045-Access denied for user 'xx'@'xx'(using password: YES),密码输入成功也无法登录,但是发现,不输入密码却可以登录;
  5. navicat不管使用什么手段修改刚创建的密码都无法登录,这些手段包括:直接修改mysql>user表,navicat登录root用户,然后执行SET PASSWORD FOR 'nickel'@'localhost' = PASSWORD('123456'),这些手段都利用上,都无法使用密码登录。利用这些手段修改密码也不会报错,都成功执行;
  6. 使用命令行的方式,使用网络上比较多的思路:
# cd /usr/local/mysql/bin/
# ./mysqld_safe --skip-grant-tables
# ./mysql
mysql> FLUSH PRIVILEGES
mysql> SET PASSWORD FOR 'nickel'@'localhost' = PASSWORD('123456')

按顺序执行过程中会报错,而且登录mysql成功后,各种操作后会发现,这里登录的用户是@localhost,也就是mysql>user表的User为空的用户在登录,执行mysql命令时会抛出没有权限错误。

  1. 最后解决办法是,先关闭mysql服务,然后通过命令行,启动mysql,执行"mysqld_safe --skip-grant-tables"会自动启动mysql,然后按照上面的操作就可以了;
  2. 结论就是,如果想用mysql的命令行修改数据库的某些设置,就通过命令行去启动mysql数据库

转载于:https://my.oschina.net/u/1389868/blog/3093648

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值