Geo*_*ord 0 php mysql mamp phpmyadmin
我在My MySQL设置中遇到了MySQL root用户的问题,我不能在我的生活中找出解决方法.似乎我以某种方式搞砸了root用户,现在我对数据库的访问非常不稳定.
作为参考,我在OS X上使用MAMP来提供MySQL服务器.我不确定这有多重要 - 我猜我无论做什么都需要一个命令行修复来解决它.
我可以像往常一样使用MAMP启动MySQL,并使用我为PHP应用程序创建的"标准"用户访问数据库.但是,我在我的MySQL GUI客户端以及phpMyAdmin中使用的root用户只能访问"information_schema"数据库,以及我手动创建的两个数据库,并且可能(并且错误地)保留了权限.我的root用户无法访问我的15个左右的其他数据库.当我加载phpMyAdmin时,主屏幕显示:"创建新数据库:没有权限".
我当然在某个阶段使用MAMP对话框更改了root用户的密码.但是我不记得我是否做了其他可能导致这个问题的事情.我已经尝试过再次更改密码,问题似乎没有变化.
我还尝试使用命令行重置root密码,包括使用--skip-grant-tables手动启动mysql然后刷新privs,但同样,似乎没有什么能解决这个问题.
我已经结束了我的想法,并非常感谢来自这里的一位专家的一步一步的建议和诊断!
非常感谢您的帮助.
小智 5
我遇到了同样的问题:只有一个用户帐户通过管理控制台或查询浏览器访问mysql数据库.当我突然使用skip-grant-tables时,所有帐户都可以登录,包括root.
早在2006年我就把它看成是一个bug,但最后的条目是没有一个命令可以在skip-grant-tables模式下执行,所以我还是没有解决这个问题.
是什么帮助了我
这个答案类似于Ben Bakelaar 在上面的链接中描述的答案.当您my.ini的名称解析标志被禁用(skip-name-resolve)时会出现问题.这会破坏mysql解析'localhost'的能力,而mysql.user表只有localhost/root的条目.
将mysql.user表的localhost条目更新为127.0.0.1,即使启用了skip-name-resolve功能,也可以登录本地控制台.