MYSQL 匿名帐号的负担

本文介绍了在Ubuntu 8.04系统下使用MySQL 5.0.51a版本时遇到的新创建用户无法使用预设密码登录的问题,并通过删除匿名用户解决了该问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 
系统环境:
Ubuntu 
8.04
MYSQL Server version: 
5.0.51a-3ubuntu5 (Ubuntu)
以上是我的系统环境,随着工程开发的需要我们一般需要在mysql中添加一些非root帐户(testmysql)以方便自己的开发和测试。
不过无意中我们发现了一个问题
ERROR 1045: Access denied for user: 'testmysql@localhost' (Using password: YES)
,新用户添加之后无法用预设的密码登录,而使用空密码登录所设定的帐户是可以的,这是为什么呢?
首先root帐户是可以登录的,那我们就使用root登录吧,然后让我们打开user表(所在位置:mysql --> user):
mysql> use mysql;
mysql
> select Host,User  from user;
+------------+------------------+
| Host       | User             |
+------------+------------------+
| %          |                  | 
| %          | testmysql        | 
| 127.0.0.1  | root             | 
| localhost  | debian-sys-maint | 
| localhost  | root             | 
| wpc-laptop | root             | 
+------------+------------------+
6 rows in set (0.00 sec)

原来如此我们好像有一个匿名帐户,因为这个帐户密码是空,会不会和这个帐户有关呢?我一向比较大胆,那就不管那么多了,直接干掉它。
mysql> delete from user where User='';
Query OK, 
1 row affected (0.00 sec)

mysql
> select Host,User  from user;
+------------+------------------+
| Host       | User             |
+------------+------------------+
| %          | testmysql        | 
| 127.0.0.1  | root             | 
| localhost  | debian-sys-maint | 
| localhost  | root             | 
| wpc-laptop | root             | 
+------------+------------------+
5 rows in set (0.00 sec)
不错,好像没有了。
那我们再去实验一下,

终于可以登录了,不错不错。
实验成功,那到底是为什么呢?我去网上搜索了一下,没有找到很有用的东西。只能臆断了,估计是系统将非root用户全部作为匿名用户对待了。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值