设为首页
收藏本站
淘宝精选
开启辅助访问
登录
注册后绑定Q登陆
手机号登录
手机号码,快捷登录
微信登录
QQ登录
快捷导航
发布信息
搜索
搜索
支持我们
使用96IE来支持论坛
首页
任务
勋章
签到
签到等于每天打卡
导读
邀请码
装机必备的软件、去广告版
装机助手
装机网
精品操作系统下载
免费邀请码
记录
Doing
每日签到
本版
帖子
用户
PCOS技术网
»
首页
›
≡技术交流≡
›
电脑技术交流
›
mysql客户端连接服务器时验证匹配授权表原则 ...
返回列表
发新帖
查看:
457
|
回复:
0
mysql客户端连接服务器时验证匹配授权表原则
[复制链接]
amwdnuff
amwdnuff
当前离线
积分
10395260
IP卡
狗仔卡
签到天数: 2624 天
连续签到: 3 天
[LV.Master]至尊海神IIIIII
发表于 2010-8-8 14:10
|
广东
|
显示全部楼层
|
阅读模式
mysql客户端连接服务器时验证匹配授权表原则
我们常常会发现,我从客户端来连接服务器时,发现服务器端mysql库中的授权表有多条记录匹配我的这个连接,那么服务器会选择哪条记录来验证本次连接呢?
其实mysql会按照下面的方法解决这个问题
首先mysql启动的时候会读入mysql,然后进行排序;
然后按排序后的条目来匹配验证客户端的连接,mysql服务器会选择与客户端连接匹配的第一行记录来验证。
那么mysql会按照什么规则来排序呢?
首先以user表中的host值来排序,最具体的主机名或ip地址排在最前面;
其次如果host值相同,会再按照user值来排序,也是跟host值排序一样,最具体的user值排在最前面。
下面通过个例子来说明一下
例如:user表中的host和user值如下:
+-------------+----------+-| Host | User | +-------------+----------+-| % | devl | | 192.168.1.1 | dev1 | | 192.168.1.1 | | | 192.168.% | dev1 | +-------------+----------+-
那么按照上面所说的规则,user表被载入内存后排序,得到下面的样子:
+-------------+----------+-| Host | User | +-------------+----------+-| 192.168.1.1 | devl | | 192.168.1.1 | | | 192.168.% | dev1 | | % | dev1 | +-------------+----------+-
如果你能够连接服务器,但你的权限不是你期望的,你可能被鉴定为其它账户。要想找出服务器用来鉴定你的账户,可以使用CURRENT_USER()函数。它返回user_name@host_name格式的值
例如:select CURRENT_USER();
PCOS系统下载站:http://zhuangji.wang
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
抢沙发
千斤顶
显身卡
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册后绑定Q登陆
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页