mysql只给用户授权了某个具体数据库,却能看到information_schema数据库

如下图,通过root用户新建了个普通用户,只把wechat_qy库的某个表的权限给了该用户,如下图:

mysql只给用户授权了某个具体数据库,却能看到information_schema数据库_第1张图片

但是登录该账号后,不但显示了 wechat_qy库,还显示了information_schema库,感觉很奇怪,明明没有把这个库赋权给普通用户,怎么会显示该数据库的信息?然后又登录了其他非root账户,发现每个用户都有这个库,感觉应该是默认都会显示这个库。网上查了下资料(参考此链接https://www.jianshu.com/p/5903e8c002ed),原来确实是这样的,每个用户建立后无论是否授权都能看到该数据库信息,该数据库记录的是用户被授权的信息,information_schema库的表是只读表,其实是视图。如COLUMNS表(视图)就记录了该用户拥有权限的数据库表和列的信息mysql只给用户授权了某个具体数据库,却能看到information_schema数据库_第2张图片

你可能感兴趣的:(数据库,#,mysql)