MySQL密码正确却无法本地登录的解决方法

请看下面的完整攻略。

问题描述

在使用MySQL数据库时,我们有时会遇到一个问题:输入正确的密码后,无法在本地登录。这种情况可能出现在新安装MySQL时,或者更新系统后,等等。那么,应该如何解决这个问题呢?

解决方法

1. 检查MySQL是否启动

首先,我们需要检查MySQL是否已经启动。要查看系统上是否正在运行MySQL,请使用以下命令:

sudo systemctl status mysql

如果MySQL未运行,请使用以下命令启动MySQL:

sudo systemctl start mysql

如果MySQL已经在运行中,请继续阅读下面的内容。

2. 检查MySQL的用户和密码

在启动MySQL前,确保使用什么用户以及什么密码来连接MySQL。如果你不确定使用的用户和密码是什么,可以通过以下命令来重置密码:

sudo mysql_secure_installation

按照提示设置密码后,使用以下命令登录MySQL:

mysql -u用户名 -p密码

如果你能够成功连接MySQL,则说明你的账户和密码正确。

3. 检查MySQL用户的主机

如果你已经确认了用户名和密码,并且MySQL已经在运行中,但仍然无法登录,那么可能是因为MySQL用户不被允许从本地主机登录。为了检查这个问题,我们可以使用以下命令:

SELECT user,host FROM mysql.user;

这个命令将会列出MySQL用户的列表和它们的主机名。确保你的本地主机名已经包含在其中。如果没有,使用以下命令添加允许从本地主机登录的用户:

GRANT ALL PRIVILEGES ON *.* TO '用户名'@'localhost' IDENTIFIED BY '密码' WITH GRANT OPTION;

然后,使用以下命令刷新权限表:

FLUSH PRIVILEGES;

现在,你就可以使用正确的用户名和密码从本地主机访问MySQL了。

示例

示例1:重新安装系统后无法登录MySQL

有一天,你升级了你的操作系统,然后发现不能从本地登录MySQL,即使密码输入正确也是如此。那么,你应该做什么?

首先,检查MySQL是否启动。使用以下命令查看MySQL服务的运行状态:

sudo systemctl status mysql

如果显示MySQL未运行,可以使用以下命令启动MySQL:

sudo systemctl start mysql

现在,检查MySQL的用户和密码是否正确。如果你不记得你的用户名或密码,可以使用以下命令重置密码:

sudo mysql_secure_installation

接下来,使用以下命令登录MySQL:

mysql -u用户名 -p密码

如果你仍然无法登录MySQL,请检查MySQL用户的主机名。使用以下命令来查看MySQL用户的列表和它们的主机名:

SELECT user,host FROM mysql.user;

如果不包含你的主机,可以使用以下命令添加一个新的允许从本地主机登录的用户:

GRANT ALL PRIVILEGES ON *.* TO '新用户名'@'localhost' IDENTIFIED BY '新密码' WITH GRANT OPTION;

如果MySQL仍然不能被本地登录,您可能需要重新安装MySQL。

示例2:修改了MySQL用户的主机名后无法登录

你在MySQL用户的主机名上做了一些修改,然后你发现你不能从本地登录MySQL。那么,你应该做什么?

首先,使用以下命令查看MySQL用户的列表和它们的主机名:

SELECT user,host FROM mysql.user;

现在,检查你的本地主机名是否出现在列表中。如果没有出现,使用以下命令为此用户添加一个新的主机名:

GRANT ALL PRIVILEGES ON *.* TO '用户名'@'新主机名' IDENTIFIED BY '密码' WITH GRANT OPTION;

请记得使用新的主机名替换 '新主机名'。然后,使用以下命令刷新权限表:

FLUSH PRIVILEGES;

现在,你的MySQL用户就能够从本地登录了。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:MySQL密码正确却无法本地登录的解决方法 - Python技术站

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

相关文章

  • 记一次因线上mysql优化器误判引起慢查询事件

    下面我会详细讲解“记一次因线上MySQL优化器误判引起慢查询事件”的完整攻略。 背景 在进行线上MySQL性能优化的过程中,经常会遇到一些奇怪的问题,比如出现奇怪的慢查询,尤其是当使用了ORM框架之后,更容易出现这些问题。在本次攻略中,我们将讨论一次因线上MySQL优化器误判引起的慢查询事件。 问题描述 某天,我们的应用开始出现了一些慢查询,比如说从一个表中…

    MySQL 2023年5月19日
    00
  • mysql 用户权限命令

                               网上搜索很多都不行:特此记录下自己亲测可以生效的命令                                                          本章持续维护 先介绍下环境: 阿里云linux版本:CentOS 7.4 64位 数据库版本:mysql  Ver 14.14 Distr…

    MySQL 2023年4月12日
    00
  • 详解MySQL系统变量的查看和修改

    MySQL系统变量是MySQL服务器的某些配置参数,可以通过查看和修改这些变量来调整服务器的行为或优化性能。本文将详细介绍MySQL系统变量的查看和修改方式,并结合实例说明。 查看MySQL系统变量 通过SHOW VARIABLES命令查看MySQL系统变量 在MySQL命令行客户端中,使用“SHOW VARIABLES”命令可以列出当前MySQL服务器的所…

    MySQL 2023年3月9日
    00
  • 查看当前mysql使用频繁的sql语句(详解)

    查看当前MySQL使用频繁的SQL语句 当我们在使用MySQL时,有时会遇到性能问题,例如某些SQL表现不佳,导致查询和数据加载时间过长。这时我们需要查看当前MySQL使用频繁的SQL语句。 以下是操作步骤: 步骤 1:启用 MySQL 慢查询日志 MySQL慢查询日志(Slow Query Log)功能可以跟踪查询服务器上执行缓慢的SQL。我们可以帮助我们…

    MySQL 2023年5月19日
    00
  • MySQL利用索引优化ORDER BY排序语句的方法

    当处理大量数据的排序时,MySQL使用ORDER BY语句很容易变得非常慢。这时,可以使用索引来优化ORDER BY语句,以提高查询速度。 以下是使用索引优化ORDER BY语句的步骤: 确定需要进行排序的列以及排序方向。 如果需要对多列排序,则可以将这些列依次添加到排序语句中。此外,可以限制需要排序的结果数量。 创建适当的索引。 在决定创建索引之前,可以使…

    MySQL 2023年5月19日
    00
  • Linux Centos 启动mysql ERROR * The server quit without updating PID file (/usr/local/mysql/data/mysql.pid).

    做了一些尝试;比如kill -9 进程id  发现根本就杀不死。 查看ERROR.LOG 2015-12-07 18:50:08 29710 [ERROR] /usr/local/mysql/bin/mysqld: unknown variable ‘scripts/mysql_install_db –user=mysql’ 第一感觉;百度了下。大部分都是…

    MySQL 2023年4月13日
    00
  • MySql运算符

    MySQL 数据库中的表结构确立后,表中的数据代表的意义就已经确定。而通过 MySQL 运算符进行运算,就可以获取到表结构以外的另一种数据。 1) 算术运算符 执行算术运算,例如:加、减、乘、除等。 2) 比较运算符 包括大于、小于、等于或者不等于,等等。主要用于数值的比较、字符串的匹配等方面。例如:LIKE、IN、BETWEEN AND 和 IS NULL…

    MySQL 2023年4月13日
    00
  • 大幅优化MySQL查询性能的奇技淫巧

    首先介绍几条优化MySQL查询性能的奇技淫巧: 1. 创建合适的索引 索引能够提高查询速度,但是不是所有的列都适合建立索引。一般建议给经常作为查询条件的列建立索引,例如主键、外键、频繁用于查询的字段等。过多的索引可能会导致写入降速,所以需要选择适当的列建立索引。 2. 优化查询语句 查询语句的优化也是提高查询性能的重要手段。例如使用JOIN语句的时候一定要注…

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