天天看點

【原創】MySQL Proxy - read_handshake()

       握手資訊是在初始連接配接建立後(通過 connect_server())由伺服器發送到用戶端的。握手資訊中包含關于 mysql 版本、用于處理連接配接資訊的線程 id 、用戶端和伺服器 ip 位址等細節資訊。這些資訊通過 proxy.connection 結構提供。 

proxy.connection.server.mysqld_version: mysql 伺服器版本 

proxy.connection.server.thread_id: 線程 id 

proxy.connection.server.scramble_buffer: 存放 scramble password 的 buffer 

proxy.connection.server.dst.name: 伺服器的 ip 位址 

proxy.connection.client.src.name: 用戶端的 ip 位址 

       例如,你可以列印出握手資料資訊,并通過 ip 位址拒絕一些用戶端的連接配接,具體如下: 

       注意到,你必須通過 proxy.proxy_send_result 才能傳回錯誤包資訊給用戶端。

繼續閱讀