【问题标题】:Cannot reset root password - Windows 10无法重置 root 密码 - Windows 10
【发布时间】:2019-07-13 08:59:46
【问题描述】:

昨天在设置MySQLpopSQL 后,Windows 强制对我重新启动,现在,mySQL 告诉我我的密码 - 我知道是正确的 - 不正确。我正在尝试重置 root 密码,但实际上没有任何指南有效。

我已经尝试过这里的官方指南,但出现了一些错误,它没有重置名称。

错误是:

C:\Program Files\MySQL\MySQL Server 8.0\bin>mysqld --init-file=C:\\mysql-init.txt

2019-02-19T16:44:49.460933Z 0 [System] [MY-010116] [Server] C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld.exe (mysqld 8.0.15) starting as process 8864

2019-02-19T16:44:49.464194Z 0 [Warning] [MY-010091] [Server] Can't create test file C:\Program Files\MySQL\MySQL Server 8.0\data\DESKTOP-2DUTV5J.lower-test

2019-02-19T16:44:49.464260Z 0 [Warning] [MY-010091] [Server] Can't create test file C:\Program Files\MySQL\MySQL Server 8.0\data\DESKTOP-2DUTV5J.lower-test

2019-02-19T16:44:49.464399Z 0 [ERROR] [MY-013276] [Server] Failed to set datadir to 'C:\Program Files\MySQL\MySQL Server 8.0\data\' (OS errno: 2 - No such file or directory)

2019-02-19T16:44:49.478891Z 0 [ERROR] [MY-010119] [Server] Aborting

2019-02-19T16:44:49.479009Z 0 [System] [MY-010910] [Server] C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld.exe: Shutdown complete (mysqld 8.0.15)  MySQL Community Server - GPL.

我该如何解决这个问题?我只是想重设密码。

在 MOD 将其标记为重复之前,与链接的线程不同,我没有使用 PHP、UNIX、XAMPP 或 .BAT ......并且该线程中的一半链接已失效。我已经尝试过他们的解决方案,但没有奏效。很明显,我的问题是独一无二的。

I've also included the 'name-installed' log file

【问题讨论】:

  • 嗨,欢迎来到 StackOverflow。错误消息 'Failed to set datadir to 'C:\Program Files\MySQL\MySQL Server 8.0\data\' (OS errno: 2 - No such file or directory)' 肯定是一个很好的起点。这个目录怎么了?您是否有访问问题 - 您是否尝试过以管理员身份运行?
  • @MandyShaw 谢谢!任何 SQL 目录中唯一的 data 文件夹位于 ProgramData 中,Program Files 中没有 data。我猜我应该以某种方式改变它的外观?为澄清起见,datamy.ini 位于同一目录中。
  • 如果这在重启之前可以正常工作,我看不出为什么需要更改配置。我倾向于尝试重新安装。
  • @kaio37k 看起来你的“my.ini”文件没有在正确的位置找到,也许 mysql 找到了一个不同的文件,它也有不正确的数据。请检查stackoverflow.com/questions/14597884/mysql-my-ini-location 并测试/验证“mysqld”是否使用了正确的“my.ini”文件。还要检查环境变量%PROGRAMDATA%

标签: mysql database-administration


【解决方案1】:

根据MySQL 8 docs,如果你使用向导安装MySQL,你必须像这样指定.ini文件:

C:\> mysqld
     --defaults-file="C:\\ProgramData\\MySQL\\MySQL Server 8.0\\my.ini"
     --init-file=C:\\mysql-init.txt

没有必要创建 data 文件夹(但是,这样做确实消除了一些错误,但不是全部)。

【讨论】:

  • 我不确定默认文件的标志是否也更正了数据目录。这样做可能更安全: mysqld --init-file="C:\newsql.txt" --datadir="C:\ProgramData\MySQL\MySQL Server 8.0\Data" --console
【解决方案2】:

您所要做的就是在C:\Program Files\MySQL\MySQL Server 8.0\ 路径上手动创建data 文件夹。

【讨论】:

    【解决方案3】:

    我在登录时遇到问题,因此我尝试重置密码并遇到同样的错误。据我了解,发生这种情况是因为 MySQL 服务器守护程序正在寻找 C:\Program Files\MySQL\MySQL Server 8.0\data\ 中的 my.ini,在我的情况下,它不存在。 my.ini 最初位于C:\ProgramData\MySQL\MySQL Server 8.0Data 目录中。

    尝试将整个Data目录从C:\ProgramData\MySQL\MySQL Server 8.0复制到C:\Program Files\MySQL\MySQL Server 8.0\

    原来我遇到的登录问题也是由于缺少 Data 目录。我不知道 Data 目录是如何丢失的,或者从 C:\ProgramData\MySQL\MySQL Server 8.0 复制相同的 Data 目录是否会导致某种配置冲突稍后设置,但到目前为止,一切似乎都运行良好。如果有人知道为什么会发生这种情况或有其他适当的解决方案,也请告诉我

    【讨论】:

    • mysqld --init-file="C:\newsql.txt" --datadir="C:\ProgramData\MySQL\MySQL Server 8.0\Data" --console 你是怎么指向的datadir 而不只是移动它
    猜你喜欢
    • 1970-01-01
    • 2019-07-25
    • 2016-10-13
    • 1970-01-01
    • 2018-04-13
    • 2012-12-04
    • 2012-05-06
    • 1970-01-01
    • 2012-02-08
    相关资源
    最近更新 更多