MySQL 5.7和8.0版本忘记root密码的解决方法
发表于:2025-01-20 作者:千家信息网编辑
千家信息网最后更新 2025年01月20日,MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化
千家信息网最后更新 2025年01月20日MySQL 5.7和8.0版本忘记root密码的解决方法
MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。
1、遗忘MySQL 5.7数据库的root密码解决办法
方法1(推荐):
[root@mysql ~]# systemctl stop mysqld #停止MySQL服务[root@mysql ~]# mysqld --user=root --skip-grant-tables #使用mysqld指令启动mysql服务,跳过授权表#上述命令执行后,会一直占用当前终端,需要再开启一个终端,#也不要想着放到后台运行了,放到后台3306端口不会监听的[root@mysql ~]# ss -anpt | grep 3306 #再开启一个终端,确定端口在监听LISTEN 0 80 :::3306 :::* users:(("mysqld",pid=8282,fd=33))[root@mysql ~]# mysql -uroot #直接使用root用户登录,无需密码mysql> update mysql.user set authentication_string=password('1234') -> where User='root' and Host='localhost'; #更改root密码为"1234"mysql> flush privileges; #刷新权限[root@mysql ~]# kill 8282 #将之前mysqld启动时占用的终端进程号kill掉,切忌不要使用-9选项[root@mysql ~]# systemctl start mysqld #启动MySQL服务,使用新密码登录即可
如果上面的过程中,使用kill -9来结束mysqld占用的终端,那么再次启动可能会报错,sock文件被锁定,此时,需要将你mysql的sock文件删除掉,我这里的sock文件在/tmp下,分别时mysql.sock.lock和mysql.sock这两个文件,删除后再次启动MySQL即可。
方法2:
[root@mysql01 ~]# mysql --version #确定MySQL版本mysql Ver 14.14 Distrib 5.7.28, for linux-glibc2.12 (x86_64) using EditLine wrapper[root@mysql01 ~]# vim /etc/my.cnf #编辑主配置文件[mysqld] #在mysqld这行下写入下面内容skip-grant-tables .................#省略部分内容[root@mysql01 ~]# systemctl restart mysqld #重启MySQL服务,使配置文件生效[root@mysql01 ~]# mysql -uroot #跳过密码验证,直接登录数据库#修改root密码为pwd@123,并刷新权限mysql> use mysql;mysql> update user set authentication_string = passwoord('pwd@123') where user = 'root';mysql> flush privileges; #刷新权限mysql> exit#配置密码验证,使用新密码登录[root@mysql01 ~]# vim /etc/my.cnf #编辑主配置文件[mysqld] skip-grant-tables #删除此行[root@mysql01 ~]# systemctl restart mysqld #重启使更改生效#使用新密码即可成功登录[root@mysql01 ~]# mysql -uroot -ppwd@123
2、遗忘MySQL 8.0数据库的root密码解决办法
[root@mysql01 ~]# mysql --version #查看MySQL版本mysql Ver 8.0.18 for linux-glibc2.12 on x86_64 (MySQL Community Server - GPL)[root@mysql01 ~]# vim /etc/my.cnf #编辑主配置文件[mysqld] #在mysqld这行下写入下面内容skip-grant-tables .................#省略部分内容[root@mysql01 ~]# systemctl restart mysqld #重启MySQL服务,使配置文件生效[root@mysql01 ~]# mysql -uroot #跳过密码验证,直接登录数据库#将root密码设置为空mysql> use mysqlmysql> update user set authentication_string='' where user = 'root';mysql> flush privileges;mysql> exit#开启密码验证并重新登录数据库[root@mysql01 ~]# vim /etc/my.cnf #编辑主配置文件[mysqld] skip-grant-tables #删除此行[root@mysql01 ~]# systemctl restart mysqld #重启使更改生效[root@mysql01 ~]# mysql -uroot #直接登录数据库mysql> alter user root@localhost identified by 'pwd@111';mysql> flush privileges;mysql> exit#使用新密码进行登录测试[root@mysql01 ~]# mysql -uroot -ppwd@111
数据
密码
数据库
文件
登录
配置
终端
服务
内容
新密
验证
权限
方法
版本
再次
办法
后台
端口
网站
语言
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
杨浦区项目软件开发价格表格
服务器宝塔安全组
湖南服务器电源供应商
inca数据库default
限制服务器内存
外包软件开发费会计分录
以太坊搭建数据库
视频解析服务器中标
检察院招计算机网络技术员吗
服务器存储技术方案
舆情属于网络安全么
数据库订单总额
我国网络安全法的先后顺序
前后端需要租服务器吗
只有ldf数据库
数据库插入数据保存后搜不到
国庆节网络安全工作会议
网站sql数据库在哪里
服务器运行时间长
网络技术部门对联大全
网络安全教育内容的目的
广联达市政算量软件开发平台
电商分析数据软件开发
为什么网络安全与你息息相关
2018年我国网络安全现状
不错的云服务器代理平台
外贸服务器一定要设在国外吗
软件开发人才外派
云南网络安全实验室
网络安全 创新 大赛