欢迎来到资源库(www.zyku.net)

MySQL

当前位置:首页 > 数据库 > MySQL > 临时密码

MySQL临时密码不能用,自动生成临时密码后无法访问MySQL

时间:2022-07-07|栏目:MySQL|点击:|我要投稿

自动生成临时密码后无法访问MySQL

我已经删除并安装了OSX 10.11 El Capitan并且我一直在通过本教程学习如何在新的OS X上运行MySQL 。第一步是下载MySQL For Mac OS X 10.9(x86,64位),DMG归档 (10.11版本,他们在教程中推荐)。 当我完成MySQL的安装时,我收到了这样的消息:

2015-10-25T02:10:54.549219Z 1 [Note] A temporary password is generated for root@localhost: R>gFySuiu23U If you lose this password, please consult the section How to Reset the Root Password in the MySQL reference manual.

这很奇怪,我从来没有见过这样的信息。 之后,我通过Preference Pane启动MySQL,然后在terminal上使用/usr/local/mysql/bin/mysql -v命令进行另一步。 我收到一条错误消息,说:

ERROR 1045 (28000): Access denied for user 'cheetah'@'localhost' (using password: NO)

我也尝试通过Sequel Pro使用root作为用户名和空密码访问数据库,我得到了访问被拒绝的消息,说:

Unable to connect to host 127.0.0.1 because access was denied. Double-check your username and password and ensure that access from your current location is permitted. MySQL said: Access denied for user 'root'@'localhost' (using password: NO)

好的,我也使用root作为用户名,但是使用了'R> gFySuiu23U'作为密码(它是从MySQL生成的)。 我有连接失败的消息说:

Unable to connect to host 127.0.0.1, or the request timed out. Be sure that the address is correct and that you have the necessary privileges, or try increasing the connection timeout (currently 10 seconds). MySQL said: Your password has expired. To log in you must change it using a client that supports expired passwords.

我怎么能解决这个问题? 我记得MySQL从来没有自动生成这样的临时密码,不是吗?

尝试这个:

mysql -u root -h 127.0.0.1 -p Enter password: (enter the random password here)

参考: https://dev.mysql.com/doc/refman/5.7/en/data-directory-initialization-mysqld.html

在此之后,您可以使用ALTER USER 'root'@'localhost' IDENTIFIED BY 'new-password';重置您的密码ALTER USER 'root'@'localhost' IDENTIFIED BY 'new-password';

现在MySQL已经生成的密码已经过期,问题是减less到获得这个密码再次工作(1)或生成一个新的(2)。 这可以通过使用skip-grant-tables选项来运行MySQL来完成,这会使其忽略访问权限:

停止你的MySQL服务器。

在my.cnf文件的[mysqld]部分末尾添加skip-grant-tables并保存。

启动MySQL服务器。

在terminal中,input

mysql -u root -p

进入MySQL命令提示符。

在命令提示符下键入

USE mysql;

进入数据库用户的mysql数据库。

types

UPDATE user SET password_expired = 'N' WHERE User = 'root';

让MySQL知道密码没有过期(1)或

UPDATE user SET authentication_string = PASSWORD('YourNewPassword'), password_expired = 'N' WHERE User = 'root';

将新密码YourNewPassword分配给根(2)。

这是在OS X Yosemite上运行MySql v5.7(从.dmg安装)的工作原理。

cd /usr/local/mysql/bin mysql -u root -p --connect-expired-password

(input安装程序生成的临时密码。)

这使你进入沙盒模式和mysql>提示符。 然后用SET PASSWORD设置所需的root密码:

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

在OSX 10.11 El Capitan和MySQL 5.7.X下执行这些步骤,应该可以做到。

考虑到你已经安装MySQL然后..

打开terminal窗口并键入:

sudo /usr/local/mysql/support-files/mysql.server stop

sudo mysqld_safe –skip-grant-tables

由于在步骤2中触发的命令将处于持续状态,因此需要打开另一个terminal窗口,然后键入:

mysql -u root -p

UPDATE mysql.user SET password_expired ='N',authentication_string = PASSWORD('')WHERE User ='root';

放弃;

sudo /usr/local/mysql/support-files/mysql.server重新启动

重要提示 :在步骤2中,您必须更换密码。

希望它会为你起作用。

我正在运行macOS Sierra(10.12.3),我安装了mysql-5.7.17-macos10.12-x86_64.dmg。

@lesley的答案对我来说是个例外,我需要添加./以确保我在当前工作目录中调用了mysql二进制文件。 这是上述软件包的安装位置。

如果您cd到/usr/local/mysql/bin并运行mysql -u root -p --connect-expired-password ,则可能会收到以下错误消息。

mysql: unknown option '--connect-expired-password'

我做了。 因为只需运行mysql而不提供path,就称之为以前安装的MariaDB客户端版本。

所以要确保你正在执行正确的二进制文件,你也可以

提供绝对path

/usr/local/mysql/bin/mysql -u root -p --connect-expired-password

或改变目录后的相对path

cd /usr/local/mysql/bin ./mysql -u root -p --connect-expired-password

这两种方式应该工作。 一旦连接到客户端,指令与@lesley中的相同。

input安装程序生成的临时密码并设置新密码。

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

MySQL密码已过期

重置密码将暂时解决问题,但是,从MySQL 5.7.4到5.7.10(我认为为了提高安全性), default_password_lifetimevariables的默认值是360(一年)。 对于这些版本,如果您不对此variables(或个人用户帐户)进行更改,则所有用户密码将在360天后过期。

通常情况下,您可能会从脚本中收到以下消息:“您的密码已过期。要login,您必须使用支持过期密码的客户端进行更改。

因此,要防止自动密码过期,请以root身份( mysql -u root -p )login,然后为自动连接到服务器的客户端 (例如脚本)更改这些客户端的密码到期设置:

ALTER USER 'script'@'localhost' PASSWORD EXPIRE NEVER;

或者您可以禁用所有用户的自动密码过期:

SET GLOBAL default_password_lifetime = 0;

(资源库 www.zyku.net)

原文链接:https://blog.csdn.net/weixin_33609654/article/details/116113761

关于我们 | 版权申明 | 寻求合作 |

重要申明:本站所有的文章、图片、评论等内容,均由网友发表或上传并维护或收集自网络,仅供个人学习交流使用,版权归原作者所有。

如有侵犯您的版权,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:95148658 | 邮箱:mb8#qq.com(#换成@)

苏ICP备2020066115号-1

本网站由提供CDN加速/云存储服务