当前位置: 首页 > 知识库问答 >
问题:

在WAMP上恢复对丢失的PHPMyAdmin MySQL密码的访问

敖硕
2023-03-14

我在PHPMyAdmin中更改了我的“root”@“localhost”帐户的密码,并将自己锁定在浏览器的PHPMyAdmin之外。我正在使用WAMP 2.5。

在这个问题上提供的解决方案不适合我,因为不幸的是,我丢失了重新分配root的密码。

有些解决方案要求用户通过命令行(包括此源代码)重置密码,我曾尝试通过Windows命令行重置密码,但没有成功,因为我现在没有权限:

mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('mynewpassword');

ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'mysql'

WAMP附带了一个MySQL控制台,但我无法使用它,因为它会提示我输入一个密码,正如我所说的,这个密码已经没有了。

这段视频解释了如何更改密码,它与上面StackExchange答案中的答案一致,但显然,我现在需要另一种方法来执行此操作,因为我不知道我会像那个家伙警告的那样失去访问权限。

如果这是一个新手类型的问题,我将感谢任何建议和道歉。我刚刚掌握了使用堆栈进行web开发的诀窍,通过WAMP配置对LAN站点的访问是一次相当大的冒险,因此如果可能的话,我更喜欢不需要重新安装所有内容的东西。

编辑1:继续尝试@RiggsFolly的解决方案。而我可以访问my。ini文件,无问题地进行更改,并通过WAMP或其他方式无问题地重新启动MySQL,行跳过授权表不生效,留下密码提示或无法执行任何操作。(我在这里写了一个新问题来解决这个问题,因为我觉得这是一个不同的问题。)

编辑2:我尝试了@t.niese在评论中提供的链接中的说明,当我设置控制台以返回有关说明的反馈时,它报告了这一情况,但没有更改任何内容:

C:\wamp\bin\mysql\mysql5.6.17\bin>mysqld --skip-grant-tables --console
[Note] Plugin 'FEDERATED' is disabled.
[Note] InnoDB: Using atomics to ref count buffer pool pages
[Note] InnoDB: The InnoDB memory heap is disabled
[Note] InnoDB: Mutexes and rw_locks use Windows interlocked functions
[Note] InnoDB: Compressed tables use zlib 1.2.3
[Note] InnoDB: Not using CPU crc32 instructions
[Note] InnoDB: Initializing buffer pool, size = 128.0M
[Note] InnoDB: Completed initialization of buffer pool
[ERROR] InnoDB: .\ibdatai can't be opened in read-write mode
[ERROR] InnoDB: The system tablespace must be writabe!
[ERROR] Plugin 'InnoDB' init function returned error.
[ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
[ERROR] Unknown/unsupported storage engine: InnoDB
[ERROR] Aborting
[Note] /* List of plugins shutting down */

共有2个答案

冯翔
2023-03-14

之前的答案对我不起作用,因为MySQL控制台在按下intro后让我退出。试试这个:

创建包含以下内容的文件C:\wamp64\mysql-init.txt:

UPDATE mysql.user SET Password=PASSWORD('1234') WHERE User='root';
FLUSH PRIVILEGES;

这会将root用户的密码重置为1234。然后,在Windows命令行上运行下一个命令:

C:\wamp64\bin\mysql\mysql5.7.21\bin\mysqld.exe wampmysqld --init-file=C:\\wamp64\\mysql-init.txt

根据WAMP在文件系统上的安装位置更改路径。

最后,重新启动WAMP服务。

秦建元
2023-03-14

这里有一个方法,可以让您非常简单地重置MYSQL“root”密码。

停止mysql服务

wampmanager -> MySQL -> Service -> Stop Service

编辑我的。ini文件

wampmanager -> MySQL -> my.ini

在ini文件中找到[wampmysqld](32bit)或[wampmysqld64](64bit)部分

将此行直接添加到该节标题之后

skip-grant-tables

重新启动mysql服务。

wampmanager -> MySQL -> Service -> Start/Resume Service

打开MySQL控制台

wampmanager -> MySQL -> MySQL Console

现在我们要重置root用户的密码,当然这可以用来重置任何用户的密码。

在mysql输入以下2个命令

前MYSQL版本5.7

UPDATE mysql.user SET Password=PASSWORD('MyNewPass') WHERE User='root';
FLUSH PRIVILEGES;

发布MYSQL 5.7版后,列名已更改

UPDATE mysql.user SET authentication_string=PASSWORD('MyNewPass') WHERE User='root';
FLUSH PRIVILEGES;

请注意,更新可能报告它已经更新了不止一行,因为可能有不止一个用户帐户,每个帐户的用户ID为root,每个帐户具有不同的域,即127.0.0.1,localhost<--plhd(2)

现在输入退出在mysql命令提示存在mysql。

停止mysql服务

wampmanager -> MySQL -> Service -> Stop Service

编辑我的。ini文件

wampmanager -> MySQL -> my.ini

在ini文件中找到[wampmysqld](32bit)或[wampmysqld64](64bit)部分

删除前面添加的跳过授权表参数。

不要将此参数保留在ini文件中,这是一个严重的安全漏洞。

重新启动mysql服务。

wampmanager -> MySQL -> Service -> Start/Resume Service

现在,如果你愿意,你可以设置root用户帐户,这样它就不会自动过期密码

wampmanager -> MySQL -> MySQL Console

然后运行此查询

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

现在,您应该能够使用用户ID“root”和刚刚为该用户设置的新密码使用phpmyadmin登录

 类似资料:
  • 问题内容: 我在PHPMyAdmin中更改了我的 ‘root’@’localhost’ 帐户的密码,并且喜欢(此人在这里询问),并将自己锁定在浏览器中的PHPMyAdmin之外。我正在使用WAMP 2.5。 针对该问题提供的解决方案对我不起作用,因为不幸的是,我丢失了重新分配给 root用户 的密码。 一些解决方案要求人们通过命令行(包括此源)来重置密码,而我已经尝试通过Windows命令行来成功

  • 这看起来是一个简单的问题,但却给我带来了无尽的挫败感。这只是我用来玩耍的房子里的一个小盒子。 我尝试了跳过授权表版本,并使用了authentication_string字段,而不是仍在使用的密码版本。我也尝试过init-file方法,但没有成功。 如果我使用跳过授权表版本,并使用以下行: 我得到的结果是: 我不明白(完全)语法有什么问题。这让我为一个很小的问题而生气(我认为)。有人有什么想法吗?提

  • 问题内容: 我正在尝试填充一些本地数据,以解决一系列远程调用。 当每个诺言都得到解决后,我将加载数据并继续。 该方法正是这样做的: 问题是,此代码不具有弹性。 如果这些呼叫中的任何一个失败,那么没人会得到鱼! 将调用包装在try / catch语句中,即使没有失败也只会导致完全忽略该条目(请注意func中的console.log)… 输出: [目的] 关于如何包装它以增强弹性的任何提示? 感谢@d

  • 我刚刚继承了一个由7台服务器组成并通过Ambari管理的hadoop集群(以前从未使用过hadoop)。 今天Ambari对server3上的所有服务以及ZooKeeper服务(托管在服务器1、2和3上)、ZKFailover(托管在服务器1和2上)和ZooKeeper客户端(托管在4,5,6,7上)停止并全部拒绝启动。这也导致Solr服务停止工作。 经过一些调查,我发现server3上的ZooK

  • 我在AWS EC2上运行3个节点集群,我的一个节点崩溃了,重新启动后,我看到2900个未分配的碎片和集群状态为红色。 我将索引配置为有5个碎片和1个副本--我不明白为什么重新启动后碎片不能从副本中恢复。 我尝试使用elasticsearch重新路由API https://www.elastic.co/guide/en/elasticsearch/reference/current/cluster-

  • 当测试我的服务器端php函数来创建设备组时,我丢失了跟踪成功创建设备组后返回的通知键。 如https://groups.google.com/forum/#所述!主题/Firebase-talk/ytovugx8XNs我试过 其中,项目id是在firebase控制台中找到的id,url中显示的id相同,甚至在my