mac上mysql root 密码忘记或权限错误的解决办法
这几天在折腾mantis发现总是连接mysql出错,就随手改了root权限,导致登录不上。
以下是还原root权限和更改root密码的最便捷方法。
1:装mysqlworkbench。可视化界面直接操作。
2:苹果->系统偏好设置->最下边点mysql在弹出页面中关闭mysql服务
3:进入终端
输入:
cd/usr/local/mysql/bin/
回车后登录管理员权限
sudosu
回车后输入以下命令来禁止mysql验证功能
./mysqld_safe--skip-grant-tables&
回车后mysql会自动重启,重启好了之后进入mysqlworkbench随便创建一个连接,然后用户名填root(注意这里不会验证密码,所以填只要存在的账户就可以)。
再创建一个serveradministration,选择刚创建的连接。
双击serveradministration
左侧点击security,右侧就可以看到所有用户权限表了,这个时候想怎么干都行了
以下是部分说明:
用户权限表中
LimitConnectivitytoHostsMatching表示登录地址限制,就是登录时候的ip地址,‘%’代表任意
AdminstrativeRoles是权限,如果发现你的root没有管理员权限了,就点这个选项卡全部勾选
以下是其他命令
./mysqladmin-uroot-ppassword123//更改root用户密码
./mysql-uroot-p//root用户登录mysql
以下是常见错误
ERROR1045(28000):Accessdeniedforuser'root'@'localhost'(usingpassword:YES)
说明你的root权限不够,就可以参考上面的步骤设置权限
Accessdenied;youneed(atleastoneof)theSUPERprivilege(s)forthisoperation
说明你的root权限不够,就可以参考上面的步骤设置权限
至此我的数据库终于被找回了~~
原文:http://blog.csdn.net/loseleo/article/details/8703408