笔者前几日在做数据库迁移的时候,发现了一个挺有意思的小东西:数据库访问限制(Host Match limit),简单地翻阅了下给官方资料,发现这个东西应用场景其实非常广泛,只是我们采用了其他可能没有原生数据库带的Access Limit 功能好地方式,特此摘记!
MySQL 官方文献传送门 戳👇
The server checks credentials first, then account locking state. A failure for either step causes the server to deny access to you completely. Otherwise, the server accepts the connection, and then enters Stage 2 and waits for requests.
上面那端话摘自文献第一端,大意就是MySQL校验访问者身份会先从访问者的有效认证(credentials)开始,这个有效认证实际上值得就是我们平时赋值一个新的Access User的登入名、密码以及访问时所用的主机名。
OK,上一张我们平时用的最多的可视化界面的图:
图中标识红色的部分也就是我们常用来设置某用户访问权限的地方,其中笔者设置的是localhost,即笔者这个Root用户访问的时候,MySQL会除了将 MySQL.User表里的Username、Password与输入的进行比较外,还会将在表中的Hostname与访问的Ho