当前位置: 首页 > article >正文

Linux系统MySQL重置root密码


MySQL是一种开源的关系型数据库管理系统,广泛用于Web应用程序的后台数据存储。在MySQL中,root是默认的超级用户,具有最高权限。然而,有时候我们可能会遇到忘记root密码的情况,或者需要重置root密码以增加数据库的安全性。本文将介绍如何重置MySQL的root密码。
 

步骤1:停止MySQL服务

首先,我们需要停止正在运行的MySQL服务。在Linux系统中,可以使用以下命令:

 sudo service mysql stop


在Windows系统中,可以通过服务管理器或者命令行停止MySQL服务。
 

步骤2:以安全模式启动MySQL

接下来,我们需要以安全模式启动MySQL,这样我们就可以在没有密码的情况下访问到root用户。

在Linux系统中,打开终端并使用以下命令启动MySQL:

  sudo mysqld_safe --skip-grant-tables &

如遇到错误:mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended

解决办法 
vim /etc/my.cnf 
把 
[mysqld_safe] 
err-log=/var/log/mysqld.log 
pid-file=/var/lib/run/mysql/mysqld.pid 
改成 
[mysqld_safe] 
err-log=/var/log/mysqld.log 

pid-file=/var/lib/mysql/mysqld.pid
 


删除一下文件:
/var/lib/mysql/ib_logfile0  
/var/lib/mysql/ib_logfile1  

如果 MySQL 正在运行,首先杀之: killall -TERM mysqld

safe_mysqld --skip-grant-tables &

  就可以不需要密码就进入 MySQL 了。

  然后就是

  >use mysql

  >update user set password=password("new_pass") where user="root";

  >flush privileges;

  重新杀 MySQL ,用正常方法启动 MySQL 。


在Windows系统中,打开命令提示符并导航到MySQL安装目录的bin文件夹,然后运行以下命令:

mysqld.exe --defaults-file="C:\Program Files\MySQL\MySQL Server X.X\my.ini" --console --skip-grant-tables


请注意,将X.X替换为您的MySQL版本号。
 

步骤3:登录MySQL并修改密码

现在,我们可以使用没有密码的root用户登录到MySQL。在Linux系统中,打开新的终端窗口,并输入以下命令:

  mysql -u root


在Windows系统中,打开新的命令提示符窗口,并输入以下命令:

mysql.exe -u root


一旦成功登录到MySQL控制台,您可以使用以下命令修改root用户的密码:

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


请将new_password替换为您想要设置的新密码。
 

步骤4:重新启动MySQL服务

完成密码修改后,我们需要停止安全模式下的MySQL,并重新启动MySQL服务。

在Linux系统中,打开终端并运行以下命令:

 sudo service mysql stop
 sudo service mysql start


在Windows系统中,关闭安全模式下的MySQL控制台窗口,并使用以下命令重新启动MySQL服务:

 net start mysql


步骤总结:

在MySQL中重置root用户密码的步骤如下:

  1. 停止MySQL服务。

  2. 启动MySQL服务,跳过权限表。

  3. 登录到MySQL服务器作为root用户。

  4. 更新root用户的密码。

  5. 刷新权限表,并重新启动MySQL服务。

以下是在Linux系统中使用命令行重置MySQL root密码的示例: 

# 停止MySQL服务

sudo systemctl stop mysql

# 启动MySQL服务,跳过权限表

sudo mysqld_safe --skip-grant-tables &

# 登录到MySQL服务器作为root用户

mysql -u root

# 更新root用户的密码

FLUSH PRIVILEGES;

SET PASSWORD FOR root@'localhost' = PASSWORD('new_password');

# 刷新权限表,并重新启动MySQL服务

FLUSH PRIVILEGES;

sudo systemctl start mysql

请将new_password替换为您想要设置的新密码。
 

注意:这些步骤会影响到MySQL服务的正常运行,请在有适当权限的情况下执行,并确保在操作过程中没有其他用户访问MySQL服务。
 

总结

在本文中,我们介绍了如何重置MySQL的root密码。首先,我们停止MySQL服务,然后以安全模式启动MySQL,并使用没有密码的root用户访问数据库。接着,我们修改root用户的密码,并重新启动MySQL服务。这些步骤将帮助您解决忘记MySQL root密码或者需要增加数据库安全性的情况。
 


http://www.kler.cn/a/226539.html

相关文章:

  • 如何用Docker+jenkins 运行 python 自动化?
  • 计算机网络——链路层(1)
  • C#验证字符串是否包含汉字:用正则表达式 vs 用ASCII码 vs 用汉字的 Unicode 编码
  • 【Springcloud篇】学习笔记二(四至六章):Eureka、Zookeeper、Consul
  • 3、部分图 Partial Plots
  • 【笔记】Android 常用编译模块和输出产物路径
  • MySQL 安装配置 windows
  • MyBatis笔记梳理
  • 项目02《游戏-04-开发》Unity3D
  • 在jetbrains IDEA/Pycharm/Android Studio中安装官方rust插件,开始rust编程
  • 【软件测试】系统测试
  • 再谈Redis三种集群模式:主从模式、哨兵模式和Cluster模式
  • Relation-graph关系图/流程图,VUE项目基础使用
  • nrm总结
  • 衡量绩效最重要的 ASO 指标和 KPI 是什么?
  • 2024美赛数学建模D题思路分析 - 大湖区水资源问题
  • sqli-labs-master less-1 详解
  • 学习Android的第一天
  • Linux 磁盘空间占用率100%的排查
  • SpringbootWeb案例