mysql服務CONNECTION_CONTROL和CONNECTION_CONTROL_FAILED_LOGIN_ATTEMPTS插件安裝及注意事項


本次以Mysql5.7.32為例(5.7.X默認帶這個插件的,默認不開啟)

支持動態安裝

-- 進入數據庫執行下面兩個SQL

INSTALL PLUGIN CONNECTION_CONTROL SONAME 'connection_control.so'; INSTALL PLUGIN CONNECTION_CONTROL_FAILED_LOGIN_ATTEMPTS SONAME 'connection_control.so';

驗證安裝之后是否已經啟用

如下圖顯示表示一起用

-- 查看所有插件
show plugins;

 

 

查看開啟后默認參數

show variables like 'connection_control%';

 

 參數解釋:

connection_control_failed_connections_threshold:失敗嘗試的次數,默認為3,表示當連接失敗3次后啟用連接控制,0表示不開啟

connection_control_max_connection_delay:響應延遲的最大時間,默認約25天
connection_control_min_connection_delay:響應延遲的最小時間,默認1000微秒,1秒

 

 

參數可通過SET語句直接設置

SET GLOBAL connection_control_failed_connections_threshold = 5;
SET GLOBAL connection_control_min_connection_delay = 30000;
SET GLOBAL connection_control_max_connection_delay = 100000;

 

 

通過配置文件安裝

-- my.cnf文件在[mysqld]模塊下面添加如下內容,參數自己根據實際情況來

plugin-load-add=connection_control.so connection-control=FORCE connection-control-failed-login-attempts=FORCE connection_control_min_connection_delay= 30000 connection_control_max_connection_delay= 108000 connection_control_failed_connections_threshold=5

--配置好后重啟mysql所有服務,按照上面的驗證一下是否安裝成功

 

注意:connection_control_min_connection_delay所設置的值小於wait_timeout的值,該插件不會生效,務必注意

我這邊wait_timeout默認值為28800ms

 

 

驗證插件功能

驗證方法,用同一個用戶,故意用錯誤密碼登錄嘗試5次(我設置的5次),在第六次時候會處於等待時間,等待時長是connection_control_min_connection_delay這個設置的時間

 

 

 查看錯誤記錄

-- 執行下面這個SQL,看是否有錯誤記錄,錯誤記錄會記錄在information_schema.connection_control_failed_login_attempts表
 select * from information_schema.connection_control_failed_login_attempts;

 

 

 

以上操作需要謹慎,沒發生意外則正常開啟,參考官網:https://dev.mysql.com/doc/refman/5.7/en/connection-control-installation.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM