MySQL忘记root密码--不重启mysqd重置root密码

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: 找回丢失mysql root密码 一、启动修改丢失的mysql单实例root密码方法; 1.首先停止mysql /etc/init.d/mysql stop 2.
找回丢失mysql root密码
一、启动修改丢失的mysql单实例root密码方法;
1.首先停止mysql
 
  
/etc/init.d/mysql stop
2.使用--skip-grant-tables启动mysql,忽略授权登录验证
 
  
mysqld_safe --skip-grant-tables --user=mysql & -- 提示:在启动时加-- skip - grant - tables 参数,表示忽略授权验证
3.进入数据库系统
 
  
shell>mysql
4.修改mysqlroot密码:update
 
  
mysql>update mysql.user set password=password("123456") where user='root' and host='localhost';
mysql>flush privileges;
shell>mysqladmin -uroot -p123456 shutdown
5.重新启动mysql
 
  
shell>/etc/init.d/mysql start
shell>mysql -uroot -p123456
二、多实例丢失密码的方法:
1.关闭mysql
 
  
mysqld_mulit stop
2.启动时加--skip-grant-tables参数
 
  
mysqld_safe --defaults-files=/data/mysql/mysql3377/mysql3377.cnf --skip-grant-tables &
mysql -uroot -p -S /tmp/mysql3377.sock <==登录时空密码
3.修改密码方法:
 
  
update mysql.user set password=password("123456") where user='root'
flush privileges;
4.重启服务用新密码登录:
 
  
killall mysqld
mysqld_mulit restart 3377


三、不重启mysqld的方法

1、首先得有一个可以拥有修改权限的mysql数据库账号,当前的mysql实例账号(较低权限的账号,比如可以修改test数据库)或者其他相同版本实例的账号。把data/mysql目录下面的user表相关的文件复制到data/test目录下面。

cp mysql/user.* test/
chown mysql.mysql test/user.*

2、使用另一个较低权限的账号链接数据库,设置test数据库中的user存储的密码数据。

mysql - utest - p12345
 mysql> use test
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> update user set password=password('xxxx') where user='root';
Query OK, 0 rows affected (0.00 sec)
Rows matched: 5  Changed: 0  Warnings: 0

mysql>
复制代码

3、把修改后的user.MYD和user.MYI复制到mysql目录下,记得备份之前的文件。

mv mysql/user.MYD mysql/user.MYD.bak
mv mysql/user.MYI mysql/user.MYI.bak
cp test/user.MY* mysql/
chown mysql.mysql mysql/user.*

4、查找mysql进程号,并且发送SIGHUP信号,重新加载权限表。

[root@localhost mysql]# pgrep -n mysql
2184
[root@localhost mysql]#
[root@localhost mysql]# kill -SIGHUP 2184

5.登陆测试

复制代码
[root@localhost mysql]# mysql -uroot -pxxxx
mysql>




相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
12天前
|
关系型数据库 MySQL 网络安全
|
29天前
|
关系型数据库 MySQL 数据库
mysql中如何将默认用户名root改成其他?
mysql中如何将默认用户名root改成其他?
23 0
|
1月前
|
关系型数据库 MySQL 数据库
MySQL忘记root密码、远程无法连接的解决方法
MySQL忘记root密码、远程无法连接的解决方法
|
3月前
|
Ubuntu 关系型数据库 MySQL
百度搜索:蓝易云【ubuntu下Mysql安装与root密码重置教程】
请注意,以上步骤是针对Ubuntu系统的。如果你使用的是其他Linux发行版,请相应地调整命令。
110 1
|
3月前
|
关系型数据库 MySQL API
|
27天前
|
SQL 关系型数据库 MySQL
阿里云MySQL数据库价格、购买、创建账号密码和连接数据库教程
阿里云数据库使用指南:购买MySQL、SQL Server等RDS实例,选择配置和地区,完成支付。创建数据库和账号,设置权限。通过DMS登录数据库,使用账号密码访问。同地域VPC内的ECS需将IP加入白名单以实现内网连接。参考链接提供详细步骤。
367 3
|
1月前
|
缓存 关系型数据库 MySQL
MySQL登录时出现Access denied for user ‘root‘@‘localhost‘ (using password: YES)无法打开的解决方法
MySQL登录时出现Access denied for user ‘root‘@‘localhost‘ (using password: YES)无法打开的解决方法
|
1月前
|
关系型数据库 MySQL 数据库
【MySQL】——忘记密码后如何修改密码
【MySQL】——忘记密码后如何修改密码
40 0
|
2月前
|
关系型数据库 MySQL 数据库
连接mysql报Access denied for user 'root'@'localhost'错误的解决办法
连接mysql报Access denied for user 'root'@'localhost'错误的解决办法
|
2月前
|
关系型数据库 MySQL 数据库
MySql修改root密码
MySql修改root密码
21 0