如何更改mysql root密码

yos*_*ssi 24 mysql linux passwords redhat

我在redhat linux上安装了MySQL服务器5.我无法以root身份登录,因此无法更改root密码.

mysql -u root -p  
Enter password:  <blank>
ERROR 1045 (28000): Access denied for user 'root'@'localhost'
(using password: NO)
Run Code Online (Sandbox Code Playgroud)

当我尝试设置一个这样的:

mysqladmin -u root password 'newpass'
Run Code Online (Sandbox Code Playgroud)

我收到一个错误:

mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' 
(using password: NO)'
Run Code Online (Sandbox Code Playgroud)

好像有一个root密码设置.

我也试过使用(在这里描述)重置密码

/sbin/service mysqld start --skip-grant-tables
Run Code Online (Sandbox Code Playgroud)

然后制作:

mysql> UPDATE mysql.user SET Password=PASSWORD('newpass')     
->  WHERE User='root';  
ERROR 1142 (42000): UPDATE command denied to user ''@'localhost' for table 'user'
Run Code Online (Sandbox Code Playgroud)

我甚至卸载了mysql-server(使用yum),然后重新安装它,但这没有帮助.

如何强制重置root密码?

Mic*_*ior 11

一种选择是保存UPDATE mysql.user SET Password=PASSWORD('newpass') WHERE User='root';到一个文件,然后手动启动mysqld--init-file=FILENAME.一旦服务器启动,它应该重置您的密码,然后您应该能够登录.在此之后,您应该关闭服务器并正常启动它.

  • `sudo mysql service stop &amp;&amp; echo "UPDATE mysql.user SET Password=PASSWORD('newpass') WHERE User='root';" &gt; /tmp/reset.sql &amp;&amp; sudo /etc/init.d/mysql start --init-file=/tmp/reset.sql` (5认同)
  • 好主人,为什么有人会给我找到工作的唯一解决方案-1.init sql文件是我可以覆盖mysql root用户密码并能够使用它的唯一方法.很遗憾你需要在新安装的软件上回退到这样的操作,但是有一个**可靠的**解决方法是很好的. (2认同)

小智 6

游戏有点晚了,但是我在安装树莓派时遇到了同样的问题,发现它需要提升。在密码更改的前面添加sudo使其可以正常工作。

sudo mysqladmin -u root password 'newpass'
Run Code Online (Sandbox Code Playgroud)

其次是提升的sql访问权限

sudo mysql -u root -p  
Run Code Online (Sandbox Code Playgroud)

如果任何一个都不以sudo的身份运行,它将失败。


dan*_*jar 5

默认情况下,root用户密码为空字符串.

(using password: NO)说没有密码.

您是否尝试从其他系统登录?我想你只能在本地以root用户身份登录.

  • 注意:默认情况下,root密码可能不是空白,现在(刚刚发现).我从yum存储库安装了MySQL 5.7.16,发现安装程序创建了一个存储在纯文本文件中的临时密码:P(对于yum,这是/var/log/mysqld.log) (2认同)

yos*_*ssi 4

我删除了MySQL安装并删除了数据文件,然后重新安装了它。

然后我就可以设置root密码了。一旦你设置了 root 密码。如果您不知道,mysqladmin 不会让您重置它。

要重置它,您必须拥有 mysqld 执行方式的所有权,并为其提供一个初始化文件以更改 root 密码:https: //dev.mysql.com/doc/refman/5.0/en/resetting-permissions .html