MySQL:如何设置帐户资源限制

通过将全局 MAX_USER_CONNECTIONS 变量设置为非零值来限制服务器资源的使用。
这限制了任何一个帐户同时连接的数量,但不限制客户端在连接时可以执行的操作。
要为帐户设置资源限制,请使用带有 WITH 子句的 GRANT 语句来命名每个要限制的资源。
每个限制的默认值为零,表示没有限制。
例如,要设置用户 Francis 访问客户数据库的限制,请发出以下语句:

mysql> GRANT ALL ON customer.* TO 'francis'@'localhost' 
    ->	   WITH MAX_QUERIES_PER_HOUR 20
    ->     MAX_UPDATES_PER_HOUR 10
    ->     MAX_CONNECTIONS_PER_HOUR 5
    ->     MAX_USER_CONNECTIONS 2;

限制个人帐户的以下服务器资源:

  • MAX_QUERIES_PER_HOUR :帐户每小时可以发出的查询数
  • MAX_UPDATES_PER_HOUR :帐户每小时可以发出的更新次数
  • MAX_CONNECTIONS_PER_HOUR : 一个账户每小时可以连接到服务器的次数
  • MAX_USER_CONNECTIONS :允许的同时连接数。

以任何顺序在 WITH 子句中提供资源限制。
将 MAX_USER_CONNECTIONS 限制设置为 0 以将其设置为全局默认值,表示该帐户允许的最大同时连接数是 max_user_connections 系统变量的全局值。

要将任何每小时资源的现有限制重置为默认值“无限制”,请指定值 0,如下例所示:

mysql> GRANT USAGE ON *.* TO 'quinn'@'localhost' -> WITH MAX_CONNECTIONS_PER_HOUR 0;
日期:2020-09-17 00:11:10 来源:oir作者:oir