我最近安装了MySQL,似乎在安装后我必须重置密码。它不让我做别的事。

现在我已经用通常的方式重置了密码:

update user set password = password('XXX') where user = root;

(顺便说一句:我花了很长时间才发现MySQL出于某种奇怪的原因将字段“password”重命名为“authentication_string”。我对这样的变化感到很不安。

不幸的是,似乎我需要改变密码不同的方式,我不知道。也许在座有人已经遇到过这个问题了?


当前回答

当你使用SET PASSWORD = PASSWORD('your_new_password');它可能会为此崩溃

错误1819 (HY000):您的密码不符合当前策略 需求)

.你可以使用SET GLOBAL validate_password_policy=LOW;去解决它。

其他回答

也许可以试试?

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('XXX');

or

SET PASSWORD FOR 'root'@'%' = PASSWORD('XXX');

这取决于您使用的访问。

(并且不确定是否应该更改自己的字段名…)

https://dev.mysql.com/doc/refman/5.0/en/set-password.html

在version 14.14 Distrib 5.7.19, macos10.12 (x86_64)上,我以以下方式登录: mysql -uroot -p然后在安装时输入mysql生成的密码。然后. .

ALTER USER 'root'@'localhost' IDENTIFIED BY '<new_password>';

例子:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'Ab1234'; 查询OK, 0行受影响(0.00秒) mysql >退出 再见 $ mysql -uroot -p

你可以输入" Ab1234 "

5.7版本。“password”字段已被删除。'authentication_string'替换它

use mysql;
update user set authentication_string=password('123456') where user='root';
flush privileges;

这是适合我的方法。

Mysql >显示数据库;

错误1820 (HY000):在执行此语句之前,您必须使用ALTER USER语句重置密码。

Mysql >卸载插件validate_password;

错误1820 (HY000):在执行此语句之前,您必须使用ALTER USER语句重置密码。

Mysql > alter user 'root'@'localhost' identified by 'root'

查询OK, 0行受影响(0.01秒)

Mysql >刷新权限;

查询OK, 0行受影响(0.03秒)

我在mac OS X 10.10.4(Yosemite)中也遇到了同样的问题。设置密码为我工作。修改mysql密码 mysql> SET PASSWORD = PASSWORD('your_password'); 查询OK, 0行受影响,1个警告(0.01秒)

在.bash_profile中设置Mysql环境路径变量,并添加以下代码行 导出路径= $路径:/ usr /地方/ mysql / bin, 然后执行如下命令。source .bash_profile