我正试图在Debian VirtualBox上设置一个本地dev环境,现在由于以下情况,我被困了好几天。
在设置apache、php、mysql、pma并开始运行后,我使用root用户打开mysql控制台。我创建空数据库,“使用”它,然后“源文件”,我想要加载。当完成后,我最终退出了客户。我可以再联系一次,想退出多少次.我还可以访问同一个根用户的phpmyadmin,并确认数据库已正确加载。
一切都很好直到我重新启动debian。从现在开始,我坚持:
错误1045 (28000):拒绝用户'root'@'localhost‘的访问(使用密码:是)
我试着访问不同的用户,没有任何改变。对phpmyadmin来说也是一样。
当我使用Vbox快照时,我确定这个问题似乎与数据库有关。在创建空数据库后重新启动是可以的,我仍然能够连接。
我已经爬行了很多相关的主题跨越网络,不能想出这种特殊的情况,所有接近的主题解决方案开始与根用户--这我做不到。
我错过了什么?
谢谢你的帮助!
发布于 2015-02-09 08:53:15
哦,你搞定了!
看来我的转储实际上包含了mysql.user数据,所以在加载数据库之后,我只能连接到这些远程登录信息。看看这个mysql.user表,这些登录似乎不是为本地主机指定的,而是为远程主机指定的。
不管怎样..。知道了这一点,我已经能够连接到mysql客户端,然后重置这些登录信息:
mysql –u root –p [distant password]
use mysql.user UPDATE mysql.user
SET Password=PASSWORD('MyNewPass') WHERE User='root';
FLUSH PRIVILEGES;
quit最后,我从phpmyadmin中删除了这些远程主机行,以确保不会搞砸任何事情。
非常感谢你的帮助!
发布于 2015-02-09 09:22:51
加载新数据时是否加载了新的mysql.user表?听起来好像你删除了你以前的根用户。看一下剧本,看看。此外,正如@RickJames建议的那样,您可能希望看起来像这里。
https://dba.stackexchange.com/questions/91348
复制相似问题