当前位置: 首页 > 工具软件 > mysqltest > 使用案例 >

Mysql test开头的库,所有用户在这库上都有管理员权限

洪成济
2023-12-01

只针对test库和以test_为前缀的库:

 

select * from mysql.userwhere user='xx';

host:%

user:xx

pass:xxxxxxxxxxxxxxxxxx

看到只有select_priv:Y

其他都是N

 

但是在一台主机上登陆:

mysql -uxx -pxxxxxxxxxxxxxxxxxx -h192.168.100.20 -P3306

mysql>use test

可以在test下建表,删表以及其他写操作

 

用其他账号建立一个新库test2

再使用只读账号去写test2,则会提示权限不足

 

然后用其它账号删除test库后再建立test库,看只读账号是否可以写test

试验证明只读账号仍然可以写其他账号新建的test库【安全隐患】

 

所以为了安全起见:

建议在安装MySQL之后,立即删除test库,同时不允许建立test库,删除mysql.db中关于test和以test_为前缀的系统安装时自带的两个规则

 

这是 mysql 的默认规则,文档上写得很清楚,凡是名字以 test 这 4 个字母开头的 db,所有用户在这个库上都有管理员权限。所以为了安全,一般在装好 mysql 以后,都会删除 test 库。

 

 类似资料: