10bet网址
MySQL 5.7参考手册
相关的文档10bet官方网站 本手册下载
PDF (Ltr)- 36.3 mb
PDF (A4)- 36.3 mb
手册页(TGZ)- 236.9 kb
手册页(邮政编码)- 348.5 kb
信息(Gzip)- 3.4 mb
信息(邮政编码)- 3.4 mb
本手册节选

6.2.9权限变更何时生效

如果mysqld启动服务器时没有——skip-grant-tables选项,它将在启动序列期间将所有授权表内容读入内存。在这一点上,内存中的表对于访问控制是有效的。

如果使用帐户管理语句间接修改授权表,服务器会注意到这些更改,并立即将授权表再次加载到内存中。帐户管理报表在第13.7.1节“帐户管理报表”.例子包括格兰特撤销设置密码,重命名用户

如果直接使用语句修改授权表,例如插入更新,或删除(这是不建议的),更改对特权检查没有影响,直到您告诉服务器重新加载表或重新启动它。因此,如果您直接更改授权表,但忘记重新加载它们,则更改已经更改没有影响直到重新启动服务器。这可能会让你想知道为什么你的改变似乎没有什么不同!

要告诉服务器重新加载授予表,请执行刷新特权操作。这可以通过签发一个冲洗的特权语句或通过执行mysqladmin flush-privilegesmysqladmin重载命令。

重新加载授权表对每个现有客户端会话的权限影响如下:

  • 表和列特权更改将随着客户机的下一个请求生效。

  • 数据库权限更改将在客户端下次执行使用db_name声明。

    请注意

    客户端应用程序可以缓存数据库名称;因此,如果不实际更改到不同的数据库,这种效果可能是不可见的。

  • 对于已连接的客户机,全局特权和密码不受影响。这些更改仅在后续连接的会话中生效。

参数启动服务器——skip-grant-tables选项,它不读取授权表或实现任何访问控制。任何用户都可以连接并执行任何操作,这是不安全的。要使服务器因此启动读取表并启用访问检查,请刷新特权。