在Linux环境下mysql的root密码忘记解决方法(三种)

yizhihongxing

下面就详细讲解一下在 Linux 环境下 mysql 的 root 密码忘记了之后应该如何解决,包括三种解决方法:

方法一:使用 mysql 安全模式重置 root 密码

  1. 首先,关闭 mysql 服务:
sudo systemctl stop mysql
  1. 然后,在安全模式下启动 mysql 服务,并跳过权限验证:
sudo mysqld_safe --skip-grant-tables &

在这里需要注意的是,一定要加上 & 符号,以使 mysqld_safe 在后台运行。

  1. 接着,登录到 mysql 服务中:
mysql -u root
  1. 接下来,修改 root 用户的密码:
use mysql;
update user set authentication_string=password('new_password') where user='root';
flush privileges;

其中,new_password 为你所设置的新密码。

  1. 最后,重启 mysql 服务:
sudo systemctl restart mysql

这样,就完成了使用安全模式重置 root 密码的过程。

方法二:使用默认权限登录并修改密码

  1. 在 mysql 登录界面,使用默认权限登录:
mysql -u root
  1. 登录之后,查看当前数据库中用户的信息:
select user,host,authentication_string from mysql.user;

在这个查询结果中,会显示所有用户的信息,我们需要找到 root 用户对应的那一行。

  1. 更新 root 用户的密码:
update mysql.user set authentication_string=password('new_password') where user='root';
flush privileges;

其中,new_password 为你所设置的新密码。

  1. 最后,退出 mysql 并重启服务:
quit;
sudo systemctl restart mysql

这样,就完成了使用默认权限登录并修改密码的过程。

方法三:使用 mysql_config_editor 重置 root 密码

  1. 首先,创建一个包含 mysql 用户名和密码的配置文件:
mysql_config_editor set --login-path=local --host=localhost --user=root --password

在这个命令中,--password 表示将会自动弹出密码设置对话框,从而避免了在命令行中输入密码的操作。

  1. 修改 root 用户的密码:
mysql --login-path=local -e "ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'new_password';"

其中,new_password 为你所设置的新密码。

  1. 最后,重启 mysql 服务:
sudo systemctl restart mysql

这样,就完成了使用 mysql_config_editor 重置 root 密码的过程。

以上就是在 Linux 环境下 mysql 的 root 密码忘记了之后解决方法的三种方案,希望对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:在Linux环境下mysql的root密码忘记解决方法(三种) - Python技术站

(0)
上一篇 2023年5月22日
下一篇 2023年5月22日

相关文章

  • Firebase和Cassandra的区别

    Firebase和Cassandra是两种拥有不同数据存储架构的数据库。Firebase是一种实时数据库,而Cassandra是一种分布式数据库。 Firebase Firebase是由Google推出的一种实时数据库,能够支持实时同步数据变更,通过对数据进行监听,一旦数据发生变更,所有客户端都能够实时感知到。Firebase也提供了API访问,可以通过RE…

    database 2023年3月27日
    00
  • 在SQL SERVER中查询数据库中第几条至第几条之间的数据SQL语句写法

    要在SQL SERVER中查询数据库中第几条至第几条之间的数据,可以通过LIMIT或OFFSET和FETCH NEXT语句来实现,具体步骤如下: 使用ORDER BY语句对表中的数据进行排序 在查询数据之前,需要使用ORDER BY语句对表中的数据进行排序,以便能够准确地指定要查询的数据范围。例如,以下语句将按照id字段升序排序: SELECT * FROM…

    database 2023年5月19日
    00
  • 源码编译安装MySQL8.0.20的详细教程

    源码编译安装MySQL8.0.20的详细教程 1. 准备工作 在开始编译和安装之前,必须完成以下准备工作: 下载MySQL源代码包 安装必要的依赖库和工具 (gcc, make, cmake, ncurses-devel, etc.) 创建MySQL用户和组 下载MySQL源代码包可以通过官方网站进行下载,也可以使用wget命令进行下载: wget http…

    database 2023年5月22日
    00
  • linux jexus服务设置开机启动

    Linux Jexus服务设置开机启动 什么是Jexus服务器? Jexus是一款支持多平台的ASP.NET服务器软件,可以代替微软的IIS来运行ASP.NET网站。它是完全免费的,并且非常易于使用。在Linux服务器上安装Jexus可以方便地为ASP.NET应用程序提供服务,使得运行ASP.NET应用程序的过程更加简单。 如何设置Jexus服务开机启动? …

    database 2023年5月22日
    00
  • mongodb字段值自增长实现代码

    下面是关于 MongoDB 字段值自增实现的完整攻略: 1. 使用文档中的字段来实现自增长 要实现 MongoDB 字段值自增长的功能,我们可以使用相应文档中的字段来实现。一般来说,我们可以选择将字段值设为自增长的数值,具体步骤如下: 首先,你需要确定需要自增长的字段的名称,一般选择使用 count 字段来实现。 随后,在插入文档时,你需要将这个字段的默认值…

    database 2023年5月22日
    00
  • MySQL备份类型

    MySQL是一种用于管理数据的关系型数据库管理系统。MySQL备份是一种旨在保护数据库免遭数据丢失、损坏或被误删除等的操作,以便恢复数据库的数据的过程。MySQL备份有多种类型,包括物理备份、逻辑备份和增量备份。本文将详细介绍这三种类型。 物理备份 物理备份是备份数据库的一个镜像,包含所有数据和对象。它从硬盘级别上备份数据库,对所有表、数据和结构都会进行备份…

    MySQL 2023年3月10日
    00
  • Oracle Faq(如何在ORACLE中更改表的列名和顺序 )

    下面是详细的Oracle Faq攻略,其中包含了如何在ORACLE中更改表的列名和顺序的过程。 问题概述 如何在ORACLE中更改表的列名和顺序? 解决方案 1. 更改表的列名 要更改表的列名,可以使用Oracle的ALTER TABLE语句。以下是ALTER TABLE语句的语法: ALTER TABLE table_name RENAME COLUMN …

    database 2023年5月21日
    00
  • Linux内核设备驱动之内存管理笔记整理

    我来详细解析一下“Linux内核设备驱动之内存管理笔记整理”的攻略。 概述 本文旨在介绍 Linux 内核设备驱动中的内存管理部分,包括内存的分配、释放、映射等方面,并对常用的内存管理 API 做简单的示例介绍。 内存分配 在 Linux 内核中,内存的分配可以通过kmalloc 和 vmalloc 两个函数实现。 kmalloc kmalloc 函数可以用…

    database 2023年5月22日
    00
合作推广
合作推广
分享本页
返回顶部