mysql不会更改我的root密码,
Posted
技术标签:
【中文标题】mysql不会更改我的root密码,【英文标题】:mysql won't change my root password, 【发布时间】:2017-12-20 13:29:46 【问题描述】:我在尝试重置 mysql 的 root 密码时遇到了严重的麻烦。我正在遵循 dev.mysql.com 的说明:
第 1 步。以管理员身份登录您的系统。
第 2 步。 如果 MySQL 服务器正在运行,请停止它。对于作为 Windows 服务运行的服务器,请转到服务管理器:从开始菜单中,选择控制面板,然后选择管理工具,然后选择服务。在列表中找到 MySQL 服务并停止它。 如果您的服务器没有作为服务运行,您可能需要使用任务管理器强制它停止。
第 3 步。 创建一个文本文件,其中包含单行的密码分配语句。将密码替换为您要使用的密码。
MySQL 5.7.6 及更高版本:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
MySQL 5.7.5 及更早版本:
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPass');
第 4 步。 保存文件。此示例假定您将文件命名为 C:\mysql-init.txt。
第 5 步。 打开控制台窗口以进入命令提示符:从“开始”菜单中选择“运行”,然后输入 cmd 作为要运行的命令。
第 6 步。 使用特殊的 --init-file 选项启动 MySQL 服务器(注意选项值中的反斜杠加倍):
C:\> cd "C:\Program Files\MySQL\MySQL Server 5.7\bin"
C:\> mysqld --init-file=C:\\mysql-init.txt***
这就是我卡住的地方:第 6 步。我做了相应的一切,cmd 给了我回复:
mysqld: CAN'T CHANGE DIR TO 'C:Program Files\MySQL\MySQL SERVER 5.7\data\'
<Errcode: 2 - No such file or directory>
0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated.
Please use --explicit_defaults_for_timestamp server option<see documentation for more details>
0 [Note] --secure-file-priv is set to NULL. Operations related to importing and exporting data are disabled
...
PS:我已经将mysqld-init.txt保存在Local Disk(C:)中了。
拜托各位,我不知道如何解决这个烂摊子。我需要重置root密码并连接MySQL。
谢谢
【问题讨论】:
这种方式更简单,只需忽略WAMPServer特定文件夹***.com/questions/29070501/… 您应该使用标记来提高可读性,并使重要部分更容易看到。用粗体写所有内容无助于提高可靠性。 你使用的是 wamp/xampp 还是 mysql 本身? 我正在使用 cmd 控制台。 【参考方案1】:这个问题大约有半年了,但我今天早上遇到了同样的问题。同时进行了几处更改,所以我不确定哪个是实际修复,但是,关于:
mysqld: 无法将目录更改为 'C:Program Files\MySQL\MySQL SERVER 5.7\data\'
我在“MySQL SERVER 5.7”文件夹中创建了一个空的“数据”目录。 此外,我使用“管理员:命令提示符”来执行命令。最后,我包含了“默认文件”specified in the MySQL docs,并调整了输入的顺序。我现在已经关闭了窗口,但我不相信我实际上使用了“双反斜杠”。
我的工作命令是:
mysqld.exe --defaults-file="C:\ProgramData\MySQL\MySQL Server 5.7\my.ini"
--init-file="C:\Users\Me\mysql-init.txt"
--console
【讨论】:
以上是关于mysql不会更改我的root密码,的主要内容,如果未能解决你的问题,请参考以下文章