請問,MySQL資料庫能否設定單用戶模式?
就是說一次只能一個用戶或者連接訪問資料庫。就像SQLServer里面的MULTI USER和SINGLE USER模式。
uj5u.com熱心網友回復:
一個用戶的話,你就直接設定用戶權限就行了,如果是多個用戶,當前只能連接一個這個就不知道怎么搞了uj5u.com熱心網友回復:
max_connections 設定為1,這樣只允許一個連接連接資料庫
-- session1
mysql> show variables like 'max_connections';
+-----------------+-------+
| Variable_name | Value |
+-----------------+-------+
| max_connections | 200 |
+-----------------+-------+
1 row in set, 1 warning (0.00 sec)
mysql> set global max_connections = 1;
Query OK, 0 rows affected (0.00 sec)
mysql>
mysql> show variables like 'max_connections';
+-----------------+-------+
| Variable_name | Value |
+-----------------+-------+
| max_connections | 1 |
+-----------------+-------+
1 row in set, 1 warning (0.00 sec)
-- session 2
C:\>mysql -uroot -p
Enter password: ******
ERROR 1040 (HY000): Too many connections
uj5u.com熱心網友回復:
親,我的意思是訪問指定的資料庫只能有一個連接,比如說連接DB_XXX 這個資料庫,只能一個連接,您這樣修改連接數的話是整個服務器只能一個連接吧。uj5u.com熱心網友回復:
mysql的資源限制引數都是針對實體級的,而非資料庫級別
如果非要這么做,可以提供一個思路,首先只允許一個用戶,例如 'my_user'@'IP' 這個用戶訪問 DB_XXX,通過權限控制
那么如果控制 同一個用戶的多個連接了,通過審計init-connect軟體,將登陸日志錄入到物體表,通過觸發器去寫邏輯實作。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/7118.html
標籤:MySQL
