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

如安在MySQL 8中重置root暗码

发布时间:2019-01-18 10:46:38 所属栏目:编程 来源:聆听世界的鱼
导读:MySQL中的用户暗码存储在用户表中,暗码重置现实上是改变该表中记录的值。 要在健忘暗码的环境下变动暗码,我们的设法是绕过MySQL的身份验证进入体系并行使SQL呼吁更新记录暗码值。 在MySQL 5中,可以行使--skip-grant-tables选项启动MySQL处事,此选项将

如安在MySQL 8中重置root暗码

MySQL中的用户暗码存储在用户表中,暗码重置现实上是改变该表中记录的值。 要在健忘暗码的环境下变动暗码,我们的设法是绕过MySQL的身份验证进入体系并行使SQL呼吁更新记录暗码值。

在MySQL 5中,可以行使--skip-grant-tables选项启动MySQL处事,此选项将汇报处事在启动时跳过加载授权表,因此root用户可以行使空暗码登录。

  1. mysqld –skip-grant-tables 

登录后,可以在SQL呼吁下运行变动暗码

  1. UPDATE user SET authentication_string='' WHERE user='root'; 

这会将暗码配置为空。

可是,假如没有在MySQL 8中举办一些调解,好像--skip-grant-tables无法正常事变。那么我们可以做些什么呢? 有两种也许的选择。

建设一个--init-file.并行使选项--init-file运行MySQL处事。 在init文件中,输入要更新暗码值的SQL呼吁。

深入研究如安在MySQL 8中行使--skip-grant-tables。

我们来看看这些选项的事变道理。

选项1: --init-file option

此选项将指定包括要在处事启动之前执行的SQL呼吁的文件。 因此,我们只必要行使呼吁更新此文件中的暗码并行使此选项启动MySQL处事。 暗码将被重置/更新。

第1步:遏制MySQL处事

  1. net stop mysql 

步调2:建设一个txt文件,并将下面的呼吁放入

ALTER USER 'root'@'localhost' IDENTIFIED BY '';

步调3:在呼吁行上启动处事,并行使--init-file选项

  1. mysqld --init-file=/some/path/to/cmd.txt --console 

完成。 留意:当您碰着权限被拒绝的错误时,请以特权用户身份运行该呼吁。 假如你看到如下错误:

  1. 2018-12-27T05:51:23.739089Z 0 [System] [MY-010116] [Server] C:Program FilesMySQLMySQL Server 8.0binmysqld.exe (mysqld 8.0.13) starting as process 1912  
  2. 2018-12-27T05:51:23.759426Z 1 [ERROR] [MY-011011] [Server] Failed to find valid data directory.  
  3. 2018-12-27T05:51:23.761196Z 0 [ERROR] [MY-010020] [Server] Data Dictionary initialization failed.  
  4. 2018-12-27T05:51:23.762550Z 0 [ERROR] [MY-010119] [Server] Aborting  
  5. 2018-12-27T05:51:23.766230Z 0 [System] [MY-010910] [Server] C:Program FilesMySQLMySQL Server 8.0binmysqld.exe: Shutdown complete (mysqld 8.0.13) MySQL Community Server - GPL. 

请运行以下呼吁初始化数据目次

  1. mysqld --initialize --console 

选项2:行使--skip-grant-tables选项

与MySQL 5对比,MySQL 8中还必要添加更多选项。

  1. mysqld --console --skip-grant-tables --shared-memory 

启动处过后,行使空暗码登录

  1. mysql -u root 

然后执行SQL呼吁更新暗码

  1. UPDATE mysql.user SET authentication_string='' WHERE user='root' and host='localhost'; 

凡是提议选项1。 并但愿本文对你有所辅佐。

Linux公社的RSS地点:https://www.linuxidc.com/rssFeed.aspx

本文永世更新链接地点:https://www.linuxidc.com/Linux/2018-12/156052.htm 

【编辑保举】

  1. MySQL主从复制的常见拓扑、道理说明以及怎样进步服从
  2. 新说MySQL事宜断绝级别!
  3. 我为什么放弃MySQL?选择了MongoDB
  4. 数据库人人生长日志:SQL Server和MySQL常用SQL区别
  5. 为什么Oracle不绝报复自家品MySQL?
【责任编辑:庞桂玉 TEL:(010)68476606】
点赞 0

(编辑:湖南网)

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

    热点阅读