MYSQL中限制資源的使用

2021-08-31 17:55:52 字數 2405 閱讀 1623

自己檢視mysql.user 表就會發現裡面最後幾個字段:

mysql> select version();

+------------------------------------+

| version() |

+------------------------------------+

| 5.1.17-beta-community-nt-debug-log |

+------------------------------------+

1 row in set (0.00 sec)

*************************** 36. row ***************************

field: max_questions

type: int(11) unsigned

null: no

key:

default: 0

extra:

*************************** 37. row ***************************

field: max_updates

type: int(11) unsigned

null: no

key:

default: 0

extra:

*************************** 38. row ***************************

field: max_connections

type: int(11) unsigned

null: no

key:

default: 0

extra:

*************************** 39. row ***************************

field: max_user_connections

type: int(11) unsigned

null: no

key:

default: 0

extra:

39 rows in set (0.00 sec)

這三個字段可以用grant語句來生成。

1、max_queries_per_hour 用來限制使用者每小時執行的查詢數量

mysql> grant select on *.* to 'cu_blog'@'localhost' identified by '123456' with

max_queries_per_hour 5;

query ok, 0 rows affected (0.00 sec)

...mysql> select user();

+-------------------+

| user() |

+-------------------+

| cu_blog@localhost |

+-------------------+

1 row in set (0.00 sec)

當到了指定的次數時就會報錯

mysql> select user();

error 1226 (42000): user 'cu_blog' has exceeded the 'max_questions' resource (cu

rrent value: 5)

2、max_updates_per_hour 用來限制使用者每小時的修改資料庫資料的數量。

mysql> grant select on *.* to 'cu_blog'@'localhost' with max_updates_per_hour 5;

query ok, 0 rows affected (0.00 sec)

3、max_connections_per_hour用來控制使用者每小時開啟新連線的數量。

mysql> grant select on *.* to 'cu_blog'@'localhost' with max_connections_per_hou

r 5;

query ok, 0 rows affected (0.00 sec)

4、max_user_connections 限制有多少使用者連線mysql伺服器。

mysql> grant select on *.* to 'cu_blog'@'localhost' with max_user_connections 2;

query ok, 0 rows affected (0.00 sec)

5、要想將所有賬戶當前的記數重設為零,可以執行flush user_resources語句。還可以通過過載授權表來重設記數。

mysql> flush user_resources;

query ok, 0 rows affected (0.00 sec)

MYSQL中限制資源的使用

今天看到手冊,不小心看到了這裡,自己做了幾個例子。從mysql4.x開始,mysql就增加了以每個使用者為基礎,限制mysql伺服器的資源利用。自己檢視mysql.user 表就會發現裡面最後幾個字段 mysql select version version 5.1.17 beta communit...

mysql資源限制 MySQL 限制使用者使用資源

在mysql 5.7及後續版本中,可以按照賬號來限制每個賬號實際具有的資源限制。語法 grant with option,如 grant select on test.to user1 localhost with max queries per hour3max user connections5...

mysql使用者資源限制

mysql資料庫對使用者有限制,比如密碼更新多少次,該使用者最大連線數等 sql structs.h原始碼定義了結構體 typedef struct user conn user conn 可以看到,其中儲存了使用者名稱 客戶端host資訊,還有本使用者的更新數 連線數等。與之配套的,是乙個hash...