首頁 >資料庫 >mysql教程 >mysql proxy的意思是什麼

mysql proxy的意思是什麼

coldplay.xixi
coldplay.xixi原創
2020-10-09 11:18:223458瀏覽

mysql proxy是mysql官方提供的mysql中間件服務,上游可接入若干個【mysql-client】,後端可連接若干個【mysql-server】,【mysql-proxy】最基本的用法,就是作為一個請求攔截,請求中轉的中間層。

mysql proxy的意思是什麼

mysql proxy的意思是:

# 背景

今天同事分享的主題就是mysql-proxy,於是下來自己了解下,不求精通,只求知道這個玩意

# 簡介

mysql-proxy是mysql官方提供的mysql中間件服務,上游可接入若干個mysql-client,後端可連接若干個mysql-server。

它使用mysql協議,任何使用mysql-client的上游無需修改任何程式碼,即可遷移至mysql-proxy上。

mysql-proxy最基本的用法,就是作為一個請求攔截,請求中轉的中間層:

mysql proxy的意思是什麼

#進一步的,mysql-proxy可以分析與修改請求。攔截查詢和修改結果,需要透過編寫Lua腳本來完成。

mysql-proxy允許使用者指定Lua腳本對請求進行攔截,對請求進行分析與修改,它還允許使用者指定Lua腳本對伺服器的回傳結果

進行修改,加入一些結果集或去除一些結果集均可。

 

所以說,根本上,mysql-proxy是一個官方提供的框架,具有良好的擴展性,可以用來完成:

  • sql攔截與修改

  • 效能分析與監控

  • #讀寫分離

  • ##要求路由

 

# 用途

#1. 分享的同事使用proxy的目的是,因為測試環境碰到了測試/開發同學不小心全表update/delete操作,導致測試資料異常,從而影響專案進度,於是他接入mysql-proxy對sql語句進行了攔截檢查,並可以將sql語句傳送到DBA提供的一個sql review服務中去判斷sql語句是否有問題

2. 之前還有這麼一段經歷,之前訂單經過拆庫操作,訂單表分為了128個庫,是根據訂單號去拆庫的,然而不是所有的表都有訂單號碼(歷史架構的鍋),如有個需求是根據手機號碼去查詢訂單號,導致要遍歷查詢128去判斷是否存在,那麼就需要proxy介入,當時使用的是阿里的mycat中間件

# 不足

由於加入了一層proxy會導致網路請求的增加消耗,所以效能造成一定的影響;

更多相關免費學習推薦:mysql教學(影片)

以上是mysql proxy的意思是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn