我对我的服务器进行了一些调整,不幸的是我无法通过ssh通过whm登录到phpmyadmin,因为我已经拒绝了root @ localhost。 我试图通过whm更改我的sql root密码,但它给了我以下错误:
无法重置MySQL root密码 子进程在结束时报告了错误号1。
任何人都可以帮助我吗?
答案 0 :(得分:0)
您必须检查是否能够从命令提示符登录mysql。通过SSH登录您的服务器并发出一个mysql。它应该登录到你的mysql服务器。
如果这不起作用,那就去做一只猫/root/.my.cnf。你应该有以前的mysql root密码。复制该密码并尝试:
mysql -u root -p(如果你之前已复制,则在提示时粘贴密码)。
如果您收到身份验证失败的消息,那么该密码不正确,您必须手动更改(您说无法从WHM更改密码)。
您使用本地mysql服务器还是远程mysql服务器?
为了更改mysql root密码,你必须停止服务器上的mysql服务,并使用skip grants选项手动启动它。
根据您的CentOS版本,您必须选择停止mysql服务:
- CentOS 6.x - /etc/init.d/mysql stop
- CentOS 7.x - systemctl stop mysql
然后手动启动mysql服务:
mysqld_safe --skip-grant-tables
然后发出以下内容:
mysql --user=root mysql
update user set Password=PASSWORD('new-password') where user='root';
flush privileges;
exit;
重启mysql,您应该可以使用新密码登录。您可能还想将其保存在/root/.my.cnf中。
我希望它有所帮助!
答案 1 :(得分:0)
Bogdan,看来您还必须发出另一个命令:使用mysql;
并且很有可能发出以下命令:update user set Password=PASSWORD('new-password') where user='root';
您将被误认为没有密码字段。如果您正在运行5.7+版本的mysql服务器,则会发生这种情况。在这种情况下,更改命令如下:
use mysql;update user set authentication_string=PASSWORD('new-password') where user='root';