不久前自学完完sql,下了mysql8.0.17,安装配置好后探索着,想着用root账户登上去能不能删除root账户呢,然后就想给自己一巴掌,,,
如何快速恢复root:
1.关闭mysql服务:win+R键键入services.msc,找到mysql服务,点击stop;
2.删除data文件夹及其文件:进入mysql文件夹,找到data文件夹并删除;
3.初始化mysql:再次进入services.msc,运行mysql服务;cmd窗口进入mysql\bin文件路径,运行mysqld --initialize --console 结果类似如下:
2019-08-07T02:08:11.300849Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is
deprecated. Please use --explicit_defaults_for_timestamp server option (see doc
umentation for more details).
2019-08-07T02:08:11.724874Z 0 [Warning] InnoDB: New log files created, LSN=45790
2019-08-07T02:08:12.024891Z 0 [Warning] InnoDB: Creating foreign key constraint
system tables.
2019-08-07T02:08:12.056893Z 0 [Warning] No existing UUID has been found, so we a
ssume that this is the first time that this server has been started. Generating
a new UUID: 35611a71-b8b8-11e9-8e24-28d24409926b.
2019-08-07T02:08:12.064893Z 0 [Warning] Gtid table is not ready to be used. Tabl
e 'mysql.gtid_executed' cannot be opened.
2019-08-07T02:08:12.076894Z 1 [Note] A temporary password is generated for root@
localhost: QTpg4Y!sh:dk
注意加粗语句中就有暂时生成的root账户密码;
4.cmd运行mysql:键入mysql -u root -p+root
密码;注意:p是password的缩写,按上面的例子就应键入:mysql -u root -pQTpg4Y!sh:dk
-p和密码一定要连在一起才有效,中间没有空格;
5.修改临时root密码:运行sql语句:alter user root@localhost identified by ' root密码 '
; 注意:密码要包含在 英文单引号 ‘ ' 中,不然无效报错,末尾分号 ;也要写。
6.查询是否成功:运行sql语句: select user from mysql.user; 成功显示root账户;
注意:本方法虽快捷有效,但会删除所有数据库文件,就是data文件夹里的数据库。其他什么添加skip-grant-tables来越过登录认证的试过,对于8.0.17版的无效了。
总结
以上所述是小编给大家介绍的Window下如何恢复被删除的Mysql8.0.17 Root账户及密码,希望对大家有所帮助!
您可能感兴趣的文章:- MySQL5.7 mysqldump备份与恢复的实现
- MySQL 两种恢复数据的方法
- MySQL单表恢复的步骤
- MySQL数据库备份恢复实现代码
- MySQL使用mysqldump+binlog完整恢复被删除的数据库原理解析
- mysql数据备份与恢复实现方法分析
- shell脚本实现mysql定时备份、删除、恢复功能
- Mysql大型SQL文件快速恢复方案分享
- Mysql的Binlog数据恢复:不小心删除数据库详解
- 从MySQL全库备份中恢复某个库和某张表的方法
- MySQL 基于时间点的快速恢复方案