MySQL5.7忘记root密码-手动修改密码教程

2023-11-11

MySQL 5.7相对于MySQL 5.6在应用上发生了一些新的变化,这里就MySQL5.7忘记root密码情况下,手动去修改root密码做一些介绍。

操作系统:Windows10 

数据库版本:MySQL 5.7.20

1.Windows10命令行下,进入MySQL数据库输入错误密码报错

MySQL安装路径已经添加到系统环境变量中的情况,直接输入命令:

mysql - u root -p

再输入密码错误时会报错:

2.先停止MySQL服务

直接输入命令:

net stop MySQL57

这里注意检查你的MySQL服务名词是否是MySQL57,否则会报服务名无效错误哦。可以去系统服务里面查看,其实可以在系统服务里右键直接停止服务,我们这里为了全程使用命令行模式,就往下继续啦~

很奇怪的是,服务名没错,还是不能启动MySQL服务! 
提示发生系统错误 5;拒绝访问!

其实切换到管理员模式就可以启动了。

注意:必须以管理员身份运行MySQL服务,否则会提示:发生系统错误 5;拒绝访问!

3.修改参数文件跳过密码验证

有人建议使用mysqld –skip-grant-tables启动MySQL服务,结果可能出现报错:

解决方法是:

找到MySQL安装路径下的my.ini配置文件文件在[mysqld]节点下方添加:

skip-grant-tables = true

有些没找到my.ini配置文件,因为my.ini配置文件默认和安装目录不在一起,可以全局搜一下。

我的配置文件的路径是C:\ProgramData\MySQL\MySQL Server 5.7\my.ini

默认安装路径是:C:\Program Files\MySQL\MySQL Server 5.7\bin

保存文件后,需要重启服务:

net start MySQL57

 

4.修改密码

用户登录,直接输入:

 

mysql -u root

直接回车就可以进入到数据库了。

再执行命令修改密码:

update mysql.user set password = password('123456') where user='root';

 

 这里注意一下:

在MySQL5.7里面没有“password”这个字段,使用的是“authentication_string”字段,直接执行命令

update mysql.user set authentication_string = password('123456') where user='root';

可以看到执行成功了,密码修改为123456。

还需要执行筛选权限的命令:flush privileges;

5.验证使用修改后的密码登录数据库

在验证新密码是否成功之前,可以先将配置文件中新添加的跳过密码验证的参数去除,然后在重启MySQL服务。

同样可以使用命令来验证,不使用密码是能否登录数据库。

最后使用新密码来登录数据库,可以成功。

到这里纠结束了,希望对一些遇到类似问题的人有帮助。

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MySQL5.7忘记root密码-手动修改密码教程 的相关文章

  • 不使用sequelize模型存储updatedAt

    当我将模型存储在 MySQL 数据库中时 它们是不可变的 因此 我可以在表中看到对createdAt列的需要 但我不需要冗余的updatedAt列 我可以将sequelize 配置为不存储updatedAt time 然后可以从表中删除该列
  • 如何在 Laravel 5.4 中播种数据透视表?

    我正在关注 Jeffrey Way 撰写的名为 Laracasts 中的增量 API 的教程 Laravel 4 faker 类播种和 Laravel 5 4 之间有不同的编码 我仍然遵循教程 Seeders Reloaded 中的相同代码
  • 获取正确的 JSON 格式

    所以我试图创建一个 JSON 对象 它应该为我保存一些有关某些问题的信息 这是我希望如何呈现它的伪代码 page 1 info id 1 type 3 description How to do JSON alternatives id 1
  • 我可以跨两个 MySQL 数据库执行事务吗?

    我可不可以做 Start transaction insert into db1 table1 field1 values 100 100 insert into db2 table2 field2 values 100 100 commi
  • 您可以使用 PDO 将占位符放入查询的选择部分吗?

    我打算使用 PDOprepare and execute 防止SQL注入攻击的机制 通常 SQL 中的占位符位于条件部分 例如select name age from members where age gt and gender f 但是
  • 在react中使用Fetch,需要用户名密码才能访问数据库

    我已经对此进行了数小时的研究 但找不到我需要的答案 很抱歉 如果有人问这个问题 而我的研究很糟糕 如果是这样 只需链接有用的堆栈溢出页面 我就会继续我的快乐之路 这是我的问题的摘要 我在CS4班 我们正在设计自己的网页 必须使用我们学校的服
  • 禁止 MySQL/MariaDB 中的存储过程使用 NULL 参数

    我可以指定表列不为空 但如何使存储过程或函数仅与非空参数兼容 在参数名称后添加 NOT NULL 不起作用 您需要自己验证传递的参数值 如果您使用 MySQL 5 5 及更高版本 您可以使用SIGNAL https dev mysql co
  • 无法使用 Spring Boot 创建 mysql 数据库

    我试图在没有像 h2 和 derby 这样的嵌入式数据库的情况下实现 Spring Boot 而是使用 mysql 我不断收到未知的数据库错误 pom xml
  • 需要使用同一数据库中另一表的数据填充一个表

    我正在尝试使用 mysql 从另一个表填充一个表 第一个表是用户 第二个表是技术人员 用户包含 用户ID 姓氏 名字 登录ID 密码 访问级别 技术人员包含 techID tech surname tech firstname tech l
  • PHP PDO 和 MySQLi [重复]

    这个问题在这里已经有答案了 我刚刚完成了 PHP 入门课程 整个 stackoverflow 论坛上的人们都建议我切换到 PDO 准备好的语句或 MYSQLi 我简单地检查了手册 但其中大部分内容都超出了我的理解范围 到目前为止我一直在使用
  • 如何扩展 Joomla!到我的自定义 PHP 文件

    我有一个我创建的 php 文件 我想扩展所有的 Joomla 类到该文件 或者我至少希望能够使用 Joomla 的类来访问我的 PHP 文件中的数据库 我怎样才能以这种方式扩展功能 提前致谢 将这些行放在 php 文件的顶部 define
  • Sequelize 中的 FOR SHARE 和 FOR UPDATE 语句

    当我们使用事务时 常规 SQL 查询可以包含 SELECT FOR SHARE 和 SELECT FOR UPDATE 语句 有没有办法用 Sequelize 设置相同的语句 我还没有找到这些选项 也许有一些技巧 需要什么 您可以在这里阅读
  • 长 IN 子句是代码异味吗?

    简单的问题 想知道长 IN 子句是否有代码味道 我真的不知道如何证明它的合理性 除了我认为的味道之外 我无法解释为什么它有味道 select name code capital population flower bird from us
  • MySQL 将字符串视为整数

    我的申请有很大的问题 在开始之前我会红色这些主题Mysql 将 varchar 视为 int bug https stackoverflow com questions 17843329 mysql treating varchar as
  • 对于MySQL查询中的每个结果,推送到数组(复杂)

    好吧 这就是我想做的 我正在运行 MySQL 查询来获取最新的帖子 对于每个返回的行 我需要将行的 ID 推送到数组 然后在数组的该 ID 内 我需要从行中添加更多数据 多维数组 到目前为止 这是我的代码 query SELECT FROM
  • 在codeigniter中处理存储过程输出参数

    我在 mysql 中有一个带有输出参数的存储过程 我需要将结果发送到使用 codeigniter 的 php 寄存器模式 public function registerUser data sql call register new use
  • 使用准备好的语句的 SQL ORDER BY

    我已经尝试了该代码的所有不同类型的变体 但无法使其工作 任何人都可以指出我正确的方向吗 if isset GET s And isset GET o if strip tags htmlspecialchars GET s s sortin
  • Laravel 4 中如何知道查询是否失败?

    我将 Laravel 4 与 MySQL 结合使用 我想知道如何控制在数据库中插入 更新或删除记录时可能出现的错误 例如 如果我进行如下更新 DB table user gt where id id gt update userdata 我
  • 在 Doctrine 2 ORDER BY 中使用 DQL 函数

    我正在使用 MySQL 数据库在 Symfony 2 3 和 Doctrine 2 4 中做一个项目 我有一个 FieldValue 实体 简化 class FieldValue The ID var integer protected f
  • 使用git在测试和生产环境之间同步数据库

    我正在尝试在 php mysql 应用程序的开发过程中实现 git 到目前为止 我已经设置了 git repos 并且我们正在使用本地计算机进行测试 并且我们成功地将其用于文件 但我真的不知道如何处理数据库 服务器上有一个 cron 脚本

随机推荐