mysql8.0以上版本修改密码问题记录
参考链接:
https://blog.csdn.net/qq_27820551/article/details/101488430
https://blog.csdn.net/mukouping82/article/details/81105831
1、以管理员身份运行cmd,进入到mysql安装的bin目录下
2、先关闭mysql服务 net stop mysql,紧接着执行 mysqld --console --skip-grant-tables --shared-memory (为了跳过登录进入mysql)
在这一步的时候我遇到的问题是执行完命令后打印以下内容
--10T20::.946001Z [System] [MY-] [Server] C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld.exe (mysqld 8.0.) starting as process
--10T20::.983631Z [ERROR] [MY-] [Server] Failed to find valid data directory.
--10T20::.986677Z [ERROR] [MY-] [Server] Data Dictionary initialization failed.
--10T20::.988397Z [ERROR] [MY-] [Server] Aborting
--10T20::.990846Z [System] [MY-] [Server] C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld.exe: Shutdown complete (mysqld 8.0.) MySQL Community Server - GPL.
解决方案:
.删除自己手动创建的data文件夹; .管理员权限cmd的bin目录下,移除已错误安装的mysqld服务;
C:\Program Files\MySQL\MySQL Server 8.0\bin>mysqld -remove MySQL The service doesn't exist! .在cmd的bin目录下执行mysqld --initialize-insecure 会发现程序在mysql的根目录下自动创建了data文件夹以及相关的文件 .bin目录下执行mysqld -install Service successfully installed.
5.bin目录下执行mysql服务启动net start mysql
循环第1,2步,正常输出

3、以管理员身份新打开一个cmd,上面那个不要关闭。执行 mysql -uroot -p 就能免密进入
4、修改密码(这里需要注意mysql8.0以上版本修改密码方式与以前版本不同,密码格式要求至少包含了数字、字母及特殊字符三种)
使用以前的方式(update user set password=password('123456') where user='root')修改密码时会修改失败,会提示:Found invalid password for user: 'root@localhost'; Ignoring user
) use mysql;
) update user set authentication_string='' where user='root';// 如果这个字段有值,先置为空,之前的版本密码字段是password
) flush privileges;// 刷新权限表
) 执行select user,host from user;// 查看用户及host,方便后续修改
) ALTER user 'root'@'%' IDENTIFIED BY 'root@123';// 修改root 密码
6) exit;//退出mysql
5、数据库密码加密方式修改
# 数据库密码加密规则还原成mysql_native_password
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root@123';
# 刷新权限
FLUSH PRIVILEGES;
# 再查询用户及加密方式已修改
select host, user, plugin from user;

6、重启mysql服务,密码重置成功。
mysql8.0以上版本修改密码问题记录的更多相关文章
- MYSQL8.0以上版本ROOT密码报错及修改
在登录数据库过程中,如果遇到忘记root密码时,该如何解决? 1.使用管理员权限打开命令提示符,在命令行中输入: net stop mysql 2.待mysql服务停止后,输入: mysqld -- ...
- 安装mysql8.0.12以及修改密码和Navicat的连接
mysql8.0+与安装其他版本不同一.安装mysql8.0.121.到官网https://www.mysql.com/ 下载mysql-8.0.12-winx64.zip(不要.mis),直接解压 ...
- mysql8.0.4以后修改密码方式变更
https://blog.csdn.net/qq_38265784/article/details/80915098 use mysql: ALTER USER 'root'@'localhost' ...
- mysql8.0新增用户及密码加密规则修改
MySQL8.0已经发布GA版,当前最新GA版本为8.0.12.虽然相对于之前版本,MySQL8.0没有加入新元素,但是,经过代码重构,MySQL8.0的优化器更加强大,同时也有一些新特性,如支持索引 ...
- Mysql8.0.17版本不能自动创建activiti表的坑
maven项目如下: 配置好数据库,和activiti的配置之后,开始执行流程部署 package com.yuanqiao.first_activiti.deployment; import jav ...
- SpringMVC+MyBatis+Druid使用MySQL8.0.11版本
1.使用MySQL8.0.11版本,要使用5.1.45或其他高版本驱动jar包,我本地使用的是最新的8.0.11 2.更换了MySQL驱动后,报Cannot find class [com.aliba ...
- MySQL8.0.12版本密码修改策略问题
查看密码策略(修改临时密码之后才可查看) show variables like 'validate_password%'; 8之前 validate_password_ 8之后validat ...
- mysql-8.0.16-winx64/Linux修改root用户密码
连接数据库等基础操作请自行解决哈,本篇是重点记录如何改密码. 一.查询用户密码: 查询用户密码命令: select host, user, authentication_string from mys ...
- 【转载】安装mysql8.0.11以及修改root密码、连接navicat for mysql。
1.1. 下载: 官网下载zip包,我下载的是64位的: 下载地址:https://dev.mysql.com/downloads/mysql/ 下载zip的包: 下载后解压:(解压在哪个盘都可以的) ...
随机推荐
- BZOJ 2200 道路与航线(图论)
BZOJ 2200 道路与航线 题目大意 有两种路,一种没负数,一种没环,求单源最短路. solution 存在负边权Dij一定不能用嘛,显然不是 根据题意能看出来是tarjan,将双向边缩点,得到的 ...
- CF55D Beautiful numbers 题解
题目 Volodya is an odd boy and his taste is strange as well. It seems to him that a positive integer n ...
- 在flask中使用flask-migrate管理数据库
Flask-Migrate是一个为Flask应用处理SQLAlchemy数据库迁移的扩展,使得可以通过Flask的命令行接口或者Flask-Scripts对数据库进行操作. 安装 pip3 insta ...
- 前端08 /jQuery标签操作、事件
前端08 /jQuery标签操作.事件 目录 前端08 /jQuery标签操作.事件 1.标签内文本操作 1.1 html标签元素中的所有内容 1.2 text 标签元素的文本内容 2.文档标签操作 ...
- (3)html-webpack-plugin的作用
在内存中生成index.html页面 在前面的内容中我们已经知道了如何在内存中打包main.js并引入到页面中. 同样的,我们也可以把index.html也打包放入到内存中. 安装html-webpa ...
- 【测试工具】这些APP实用测试工具,不知道你就out了!
本期,我将给大家介绍14款实用的测试工具,希望能够帮到大家!(建议收藏) UI自动化测试工具 1. uiautomator2 Github地址:https://github.com/openatx/u ...
- 并发编程AQS--------ReentrantLock
同步框架AbstractQueuedSynchronizer Java并发编程核心在于java.concurrent.util包 而juc当中的大多数同步器实现都是围绕着共同的基础行为,比如等待队列. ...
- 牛客练习赛66A题解
思路 令 \(sq=\sqrt x\) ,则答案必然在 $ sq^2$ 和 $ (sq+1)^2 $ 之间,两者比较一下谁离 \(x\) 最近,就是答案了. 代码 #include <bits/ ...
- MSSQL系列 (二):表相关操作、列操作、(唯一、主键、默认、检查、外键、非空)约束、临时表
1.创建表 --创建学生班级表 create table StuClass ( ClassId int primary key, --班级ID 主键约束 ClassName nvarchar(30) ...
- 遍历map的6种方式
1,平时开发中对map的使用很多,然后发现了很多map可能存在的各种问题:如HashMap 需要放置 1024 个元素,由于没有设置容量初始大小,随着元素不断增加,容量 7 次被迫扩大,resize ...