在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');
取决于您使用的访问权限。
(不知道你应该改变自己的字段名称…)
在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社区服务器后出现问题。 在服务器安装期间获得生成的密码。 在工作台上双击现有的本地实例触发了一个对话框,我可以设置新的密码。