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

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

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

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

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


当前回答

UPDATE user SET authentication_string=PASSWORD("MyPassWord") WHERE user ='root'; 错误1064(42000):你有一个错误的SQL语法;查看MySQL服务器版本对应的手册,在第一行'("MyPassWord") WHERE User='root "附近使用正确的语法

解决与

ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';

以下网站参考资料

https://dev.mysql.com/doc/refman/8.0/en/resetting-permissions.html

其他回答

我在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

如果您使用MySQL 5.7.6及以上版本:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';

如果你使用MySQL 5.7.5及更早版本:

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

MySQL文档

记住版本5.7.23及以上-用户表没有列密码,而是认证字符串,所以下面的工作,而重置用户的密码。

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

UPDATE user SET authentication_string=PASSWORD("MyPassWord") WHERE user ='root'; 错误1064(42000):你有一个错误的SQL语法;查看MySQL服务器版本对应的手册,在第一行'("MyPassWord") WHERE User='root "附近使用正确的语法

解决与

ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';

以下网站参考资料

https://dev.mysql.com/doc/refman/8.0/en/resetting-permissions.html

ALTER USER 'root'@'localhost'

用这条线…