我有一些通过VPN连接到MySQL的用户,所以我们按照“grant select foo。* to user @ ipaddress1”的方式获得许可,等等。
本周,VPN上使用的IP更改为address2,因此user @ ipaddress1不再有效。
在MySQL中处理更新用户和授予信息来反映这种变化的最好方法是什么?
请注意,授予是一个严重的混乱,因为有些用户被排除在特定表中的特定列,所以我们必须做排除对象周围的补助金。
显然,正确的做法是:
RENAME USER user@ipaddress1 TO user@ipaddress2;
http://dev.mysql.com/doc/refman/5.0/en/rename-user.html
这照顾所有的赠款。
如果您的VPN用户有专用子网,则以下语法运行良好。
GRANT ALL ... user_name@'192.168.1.%'
只需更新用户表中的主机字段即可:
update mysql.users set Host = newIP where Host = oldIP; flush privileges;