加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

在WAMP上重新访问PHPMyAdmin丢失的MySQL密码

发布时间:2020-12-13 13:10:33 所属栏目:PHP教程 来源:网络整理
导读:我在 PHPMyAdmin中更改了我的’root’@’localhost’帐户的密码,并且更喜欢( this person asking here)并在浏览器中将自己锁定在PHPMyAdmin之外.我正在使用WAMP 2.5. 在这个问题上提供的解决方案对我不起作用,因为遗憾的是我丢失了我重新分配给root的密码.
我在 PHPMyAdmin中更改了我的’root’@’localhost’帐户的密码,并且更喜欢( this person asking here)并在浏览器中将自己锁定在PHPMyAdmin之外.我正在使用WAMP 2.5.

在这个问题上提供的解决方案对我不起作用,因为遗憾的是我丢失了我重新分配给root的密码.

有些解决方案要求一个人通过命令行重置密码(including this source),我已经通过Windows命令行尝试了这个,但没有成功,因为我现在没有任何权限:

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

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

WAMP附带一个MySQL控制台,但我无法使用它,因为它提示我输入密码,正如我所说,不再有.

This video explains how to change passwords,它同意上面StackExchange答案中的答案,但显然,我现在需要另一种方法来做到这一点,因为我不知道我会失去访问权,因为这家伙警告.

如果这是一个新手类型的问题,我将不胜感激任何建议并道歉.我正忙着使用堆栈进行Web开发,并且通过WAMP配置对LAN站点的访问是一次冒险,所以如果可能的话,我更喜欢不需要重新安装所有内容的东西.

编辑1:走在前面,尝试了@RiggsFolly的解决方案.虽然我可以访问my.ini文件,进行更改没有问题,并通过WAMP或其他方式重新启动MySQL而没有问题,行skip-grant-tables没有生效,给我一个密码提示或无法访问任何操作. (我在这里写了一个新问题来解决这个问题,因为我觉得这是一个不同的问题.)

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

C:wampbinmysqlmysql5.6.17bin>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 */
这是一种允许您非常简单地重置MYSQL“root”密码的方法.

停止mysql服务

wampmanager -> MySQL -> Service -> Stop Service

编辑my.ini文件

wampmanager -> MySQL -> my.ini

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

在该部分标题后直接添加此行

skip-grant-tables

重启mysql服务.

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

打开MySQL控制台

wampmanager -> MySQL -> MySQL Console

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

在mysql>处输入以下2个命令命令提示符,每行在行尾有一个半冒号,并在每行后按ENTER键向mysql发出命令.

预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';
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
FLUSH PRIVILEGES;

请注意,更新可能会报告它已更新多行,因为可能有多个用户帐户的用户ID为“root”,每个用户帐户具有不同的域,即127.0.0.1,localhost和:: 1

现在在mysql命令promt中输入’quit’以存在mysql.

停止mysql服务

wampmanager -> MySQL -> Service -> Stop Service

编辑my.ini文件

wampmanager -> MySQL -> my.ini

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

删除我们之前添加的skip-grant-tables参数.

请勿将此参数留在ini文件中作为HUGH安全漏洞.

重启mysql服务.

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

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读