在Mac上安装后,使用ALTER USER语句重置MySQL根密码

我是整个Mac体验的新手。 我最近安装了MySQL,似乎我必须在安装后重置密码。 它不会让我做任何事情。

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

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

(顺便说一下,我花了很长时间才弄清楚MySQL有一些奇怪的原因,把字段'password'改成了'authentication_string',我对这样的改变感到很不高兴。

不幸的是,似乎我需要以不为我所知的不同方式更改密码。 也许这里有人已经遇到过这个问题?

嗨,我得到了同样的问题,似乎你可以用这种方式解决它。


 mysql> UPDATE mysql.user SET Password=PASSWORD('your_new_password') WHERE User='root'; 

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

 mysql> SET PASSWORD = PASSWORD('your_new_password'); 

查询OK,0行受影响,1个警告(0.01秒)


这是我find答案的地方。 https://dev.mysql.com/doc/refman/5.6/en/alter-user.html

如果你用mysql -u root -p启动mysql

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

资料来源: http : //dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html

我在Mac上有同样的问题

首先,用沙箱模式loginmysql

 mysql -u <user> -p --connect-expired-password 

然后,设置密码

 SET PASSWORD FOR 'root'@'localhost' = PASSWORD('XXXX'); Query OK, 0 rows affected, 1 warning (0.01 sec) 

它适合我〜

通过: https : //dba.stackexchange.com/questions/118852/your-paswssword-has-expired-after-restart-mysql-when-updated-mysql-5-7-8-rcde

运行这些:

 $ cd /usr/local/mysql/bin $ ./mysqladmin -u root password 'password' 

然后运行

 ./mysql -u root 

它应该login。现在运行FLUSH权限;

然后退出MySQL控制台并尝试login。如果这不起作用,请运行以下命令:

 $ mysql -u root mysql> USE mysql; mysql> UPDATE user SET authentication_string=PASSWORD("XXXXXXX") WHERE User='root'; mysql> FLUSH PRIVILEGES; mysql> quit 

将xxxxxx更改为您的新密码。 然后再次尝试login。

更新。 请参阅http://dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html

它应该解决你的问题。

如果你在oracle上试试这个

 ALTER USER username IDENTIFIED BY password 

如果你使用MySQL 5.7.6及更高版本:

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

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

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

MySQL文档

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

使用这一行…

也许试试?

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

要么

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

取决于您使用的访问权限。

(不知道你应该改变自己的字段名称…)

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

在MySQL 5.7.x上,您需要切换到本机密码才能更改它,如:

 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'test'; 

这对我工作:

ALTER USER USER()通过'auth_string'识别;

我在这里find它: http : //dev.mysql.com/doc/refman/5.7/en/alter-user.html#alter-user-current

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

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

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

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

在.bash_profile中设置Mysql环境pathvariables并添加下面的行
export PATH = $ PATH:/ usr / local / mysql / bin,之后运行以下命令:source .bash_profile

安装了mysql workbench和mysql社区服务器后出现问题。 在服务器安装期间获得生成的密码。 在工作台上双击现有的本地实例触发了一个对话框,我可以设置新的密码。