当我在本地工作时,我并不需要input密码来访问我的数据库。 当我第一次安装mysql时,我改变了我的root密码,但是我不知道如何改回我的密码。 我该怎么办?
要将root密码更改为newpassword
:
mysqladmin -u root -p'oldpassword' password 'newpassword'
要改变它,所以root不需要密码:
mysqladmin -u root -p'oldpassword' password ''
注意:我认为重要的是在-p
和'oldpassword'
之间没有空格,但我可能是错的
把当前的密码(和你的用户名)放到~/.my.cnf
(或者大概是在Windows中的一些等同的位置),而不是去掉密码(如果你将这个服务器~/.my.cnf
,可能会有不愉快的后果) )看起来像这样:
[client] user = root password = s3kr1t
这使MySQL使用所提供的证书自动生成真棒的能力,而不会让你在将来不愉快的情况下开放。
更改root密码:
UPDATE mysql.user SET Password = PASSWORD('MyNewPass')WHERE User ='root';
FLUSH PRIVILEGES;
供参考: 官方的mysql文档 。
请注意,从MySQL 5.7开始, validate_password插件默认处于活动状态,并阻止您使用空密码。
您需要禁用此插件以允许input空密码:
UNINSTALL PLUGIN validate_password; SET PASSWORD FOR root@localhost = PASSWORD('');
要小心,除非你不关心安全性,为了方便起见,你应该遵循@ womble的build议并使用密码和.my.cnf
文件。
检查我的文章删除这个主题的MySQL根密码 !