MySQL忘记root密码错误号码1045的解决办法

当我们忘记 MySQL 的 root 密码时,使用 root 账户登陆 MySQL 数据库失败,可能会遇到错误号码为 1045 的错误提示。错误提示信息如下所示:

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

这种错误提示意味着在没有提供正确的密码的情况下, root 用户不能登录 MySQL,因此我们需要尝试重置 root 用户的密码。以下是在 Linux 操作系统中解决此问题的步骤:

1. 停止 MySQL 服务

在使用以下命令之前,确保你已经停止了 MySQL 服务,在命令行中输入以下命令:

sudo systemctl stop mysql

2. 创建并编辑 MySQL 配置文件

现在我们要为 MySQL 创建一个新的配置文件。在命令行中输入以下命令:

sudo vim /etc/mysql/reset-passwd.cnf

创建了一个新的文件之后,使用以下内容配置它:

[mysqld]
skip-grant-tables

然后保存并退出文件。

3. 启动 MySQL 服务

使用以下命令启动 MySQL 服务:

sudo systemctl start mysql

4. 重置 MySQL root 密码

重置 root 密码,输入以下命令:

mysql -u root

进入 mysql 命令行后输入以下命令:

FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY '<新密码>';

这里把新密码替换为你想要的密码,然后保存并退出文件。退出 mysql 命令行。

5. 重启 MySQL 服务

我们已经完成了密码的重置,现在需要删除之前创建的配置文件。在命令行中输入以下命令:

sudo rm /etc/mysql/reset-passwd.cnf

然后重启 MySQL 服务:

sudo systemctl restart mysql

现在你可以使用新密码重新连接 MySQL 服务器。以下是使用命令行的示例说明:

示例1 重置密码为“password”

在示例1中,我们将 root 密码重置为“password”。具体过程如下:

  1. 停止 MySQL 服务
sudo systemctl stop mysql
  1. 创建并编辑 MySQL 配置文件
sudo vim /etc/mysql/reset-passwd.cnf

创建一个新文件并添加以下内容:

[mysqld]
skip-grant-tables
  1. 启动 MySQL 服务
sudo systemctl start mysql
  1. 重置 MySQL root 密码
mysql -u root
FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password';
  1. 重启 MySQL 服务
sudo rm /etc/mysql/reset-passwd.cnf
sudo systemctl restart mysql

示例2 重置密码为“123456”

在示例2中,我们将 root 密码重置为“123456”。具体过程如下:

  1. 停止 MySQL 服务
sudo systemctl stop mysql
  1. 创建并编辑 MySQL 配置文件
sudo vim /etc/mysql/reset-passwd.cnf

创建一个新文件并添加以下内容:

[mysqld]
skip-grant-tables
  1. 启动 MySQL 服务
sudo systemctl start mysql
  1. 重置 MySQL root 密码
mysql -u root
FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
  1. 重启 MySQL 服务
sudo rm /etc/mysql/reset-passwd.cnf
sudo systemctl restart mysql

通过上面的步骤,你可以重置并成功登录到 MySQL 数据库使用新的 root 密码。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:MySQL忘记root密码错误号码1045的解决办法 - Python技术站

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

相关文章

  • MongoDB基础命令以及操作示例详解

    MongoDB是一种开源、高性能、无模式的文档型数据库,使用它可以快速存储和检索大量数据。下面是MongoDB最基本的命令和操作示例。 MongoDB基础命令 连接到MongoDB 可以通过命令行连接到MongoDB数据库。首先打开命令行窗口,输入下面的命令来连接到MongoDB实例: mongo –host {host} –port {port} –…

    database 2023年5月21日
    00
  • PostgreSQL使用MySQL外表的步骤详解(mysql_fdw)

    PostgreSQL使用MySQL外表的步骤详解(mysql_fdw) MySQL外表(fdw)允许PostgreSQL服务器访问远程MySQL服务器上的数据,就好像它们存在于PostgreSQL本地一样。这可以极大地简化数据集成,特别是在需要合并来自不同数据库的数据时。 下面是使用mysql_fdw的步骤以及具体操作: 步骤一:安装mysql_fdw 首先…

    database 2023年5月22日
    00
  • 使用SpringCache进行缓存数据库查询方式

    使用SpringCache进行缓存数据库查询,可以大大提高系统的性能,下面是使用SpringCache进行缓存数据库查询的完整攻略: 什么是SpringCache SpringCache是SpringFramework提供的一个轻量级的缓存框架,它提供了一套缓存注解,可以很容易地实现缓存。 SpringCache的特点在于它可以与多种缓存提供商集成,比如内存…

    database 2023年5月22日
    00
  • SQL(MSSQLSERVER)服务启动错误代码3414的解决方法

    SQL Server 是一种常用的关系型数据库管理系统。但在使用过程中,可能会遇到服务启动错误的问题,其中,错误代码 3414 是比较常见的一种。下面,我来为大家介绍一下详细的解决方法。 步骤一:查看错误日志 当 SQL Server 启动失败时,需要查看 下载 SQL Server 错误日志文件,以获取更多有关启动过程中出现的错误的详细信息。在日志文件中,…

    database 2023年5月18日
    00
  • SQL 创建层次视图

    创建层次视图是SQL语言的一项强大功能,可以以层次方式组织数据,方便我们查询和分析。 下面是创建层次视图的完整攻略,包含了两个实例: 什么是层次视图 层次视图是一种特殊的视图,其中包含了上下级关系的数据。例如,员工表中可以包含每个员工的上级经理,这些数据可以用于创建层次视图。 创建层次视图的步骤 首先,需要在数据库中创建一个包含上下级关系的数据表。假设我们有…

    database 2023年3月27日
    00
  • MySQL EXPLAIN输出列的详细解释

    下面详细讲解一下MySQL EXPLAIN输出列的详细解释。 1. EXPLAIN的作用 在MySQL中,通过使用EXPLAIN命令可以分析查询语句的执行计划,从而提高SQL语句的执行效率。EXPLAIN命令会显示MySQL如何处理查询语句,可以帮助我们理解查询语句执行的具体过程和优化查询语句。 2. EXPLAIN的输出列 下面是展示EXPLAIN输出列的…

    database 2023年5月22日
    00
  • SQL Server2019数据库之简单子查询的具有方法

    SQL Server 2019是一种商业关系型数据库管理系统,它支持使用SQL(Structured Query Language)进行数据管理和数据查询。在SQL Server 2019中,子查询被广泛地用于处理复杂的数据操作。本文将会详细讲解如何使用简单的子查询来处理常见的数据查询问题,并提供两个使用示例。 什么是子查询? 子查询是一条SQL语句,它被嵌…

    database 2023年5月21日
    00
  • Oracle如何使用PL/SQL调试存储过程

    当我们在开发Oracle数据库中的存储过程时,调试是必不可少的环节。PL/SQL是Oracle数据库中的过程语言,它支持自带调试器,可以为我们调试存储过程提供极大的帮助。 下面,我将为你详细讲解“Oracle如何使用PL/SQL调试存储过程”的完整攻略。 准备工作 在使用PL/SQL调试存储过程前,我们需要进行一些准备工作。具体操作步骤如下: 配置Oracl…

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