解决 MySQL 不输入用户和密码也连接成功的问题

摘要:
前言安装并启动MySQL 5.6.46分析数据库后,您可以通过根帐户登录(此时不需要输入密码),并在MySQL数据库的用户表中查看数据,如下所示:四个初始记录中的密码字段均为空字符串。此外,还有一条记录表明用户名字段也是空字符串。用户名和密码字段都是空字符串,表示可以在不输入用户名和密码的情况下进行连接(如果输入了其他字符,则连接失败)。用户名字段存在,但密码字段为空,表示可以在不输入密码的情况下进行连接(如果输入了其他字符,则连接失败)。对

前言

MySQL 5.6.46 版本

分析

数据库安装并启动后,通过 root 账号登录(此时可不用输密码)在mysql 库中可以看到 user 表中的数据如下:

解决 MySQL 不输入用户和密码也连接成功的问题第1张

4 条初始记录中的密码字段都为空字符串,且有 1 条记录用户名字段也为空串

用户名与密码字段都为空串说明不用输入用户名密码也可以连接(输入其他字符则连接失败)

用户名字段存在,但密码字段为空串说明只输入用户名但不输入密码也可以连接(密码输入其他字符则连接失败)

解决

  1. 通过 root 用户连接后,修改当前登录用户的密码

    因为使用空的用户名登录时,没有 mysql 库的权限,user 表在 mysql 库中

    mysql>SET PASSWORD = PASSWORD('admin');
    

    修改密码后 user 表中记录(Password字段数据为密文存储):

    解决 MySQL 不输入用户和密码也连接成功的问题第2张

  2. 执行 SQL 删除 user 表中密码为空的记录

    mysql>use mysql;
    mysql>delete from user where password is null or password = '';
    

    删除密码字段为空的记录后 user 表中记录:

    解决 MySQL 不输入用户和密码也连接成功的问题第3张

此时再连接就需要输入连接密码了

免责声明:文章转载自《解决 MySQL 不输入用户和密码也连接成功的问题》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇QString,QByteArray和QBitArray之间的转换Debug 路漫漫-08:Keras 版本升级函数变换导致的问题下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

mysql ERROR 1045 (28000): Access denied for user 'ODBC'@'localhost' (using password: NO)错误解决办法

我的电脑是win10,所用的是mysql5.7.14 近期在学习mysql数据库的时候,遇到了这个错误,我的密码错误了。突如其来的问题,很是蒙蔽,因为我没对数据库设置过密码。通过网上查询,可以通过进入mysql命令行的方式,来直接修改数据库的密码。具体步骤如下: 在mysql数据库的my.ini文件中找到mysqld这一项: 用记事本打开,找到mysql...

mysql编码修改

一、查看character_set 变量 show variables like '%character%'; 二、对8个变量解释(mysql5.7,不同版本存在有的变量名没有) 变量名 解释 character_set_client 主要用来设置客户端使用的字符集。 character_set_connection 主要用来设置连接数据库时的字符集...

MySQL8.0在Windows下的安装和使用

前言 MySQL在Windows下有2种安装方式:1.图形化界面方式安装MySQL 2.noinstall方式安装MySQL。在这里,本文只介绍第二种方式:以noinstall方式安装MySQL,以及MySQL的一些基本用法。 据说,第一种是傻瓜教程,简单些,但是我报了一系列依赖错误,最终也没解决,心累... mysql安装 https://blog....

【Go语言】连接数据库SQLite、MySQL、Oracle

本文目录 1.Go连接SQLite 1_1.SQLite推荐驱动 1_2.SQLite连接示例代码 2.Go连接MySQL 2_1.MySQL推荐驱动 2_2.MySQL连接示例代码 3.Go连接Oracle 3_1.Oracle推荐驱动以及准备事项 3_2.Oracle连接示例代码 说明:go语言连接数据库不像Java那么方便,本文分...

MySQL 同时 delete 多张表的数据

三张表 article ,tag,article_tag article 文章表 create tablearticle( article_id int primary keyauto_increment, article_title varchar(100) ); insert into article(article_title) va...

通过python给mysql建表

一.python连接mysql from sqlalchemy import create_engine # 数据库数据 HOSTNAME = '127.0.0.1' # linux本地 PORT = '3306' DATABASE = 'mydb' USERNAME = 'admin' PASSWORD = '...