數據訪問代理不僅支持應用程序(如 JDBC)與 MySQL Client 命令行訪問,也支持 Navicat 數據庫圖形工具訪問。本文將介紹如何配置數據訪問代理與 Navicat 的連接,實現 Navicat 客戶端訪問。
創建數據庫賬號
進入數據訪問代理控制臺,左側導航欄中,單擊 實例。
在實例列表中,單擊目標實例名,進入該實例的詳情頁面。
單擊 賬號管理 頁簽,然后單擊 創建賬號 按鈕。
在 創建數據庫賬號 對話框中,配置賬號信息:
數據庫賬號:賬號名稱,此處必須填寫
odp_gui_user
。數據庫密碼:為該數據庫賬號設置一個密碼。
授權數據庫:選擇需要授權的數據庫并設置相應的權限。
單擊 確定。
配置 Navicat 連接
打開 Navicat 客戶端,配置一個連接。連接信息配置要求如下:
連接名:可根據業務需求,自定義連接名稱,如
remotedbp
。主機:輸入要連接的數據訪問代理實例的訪問地址,一般是一個公網地址。
端口:輸入要連接的數據訪問代理實例的訪問端口。
用戶名/密碼:輸入上一步創建的數據庫賬號名(即
odp_gui_user
)與密碼。
功能說明
數據訪問代理與 Navicat 完成連接后,在本地 Navicat 客戶端中,支持與不支持的操作分別如下:
支持訪問授權的數據庫
支持雙擊打開數據表(單庫單表、分庫分表均支持)
支持查詢數據表結構(單庫單表、分庫分表均支持)
支持在 SQL 窗口手動執行查詢命令(單庫單表、分庫分表均支持)
支持雙擊打開數據表后,插入、更新、刪除數據(單庫單表、分庫分表均支持)
支持雙擊打開數據表后,進行排序或篩選(單庫單表、分庫分表均支持)
支持部分 DDL:
不支持庫操作
不支持單庫單表的所有 DDL
分庫分表的建表僅支持 sharding DDL
支持分庫分表的 alter、drop 等
不支持視圖,包括查看與更新
不支持事務
不支持清空表
不支持庫級別的“運行 SQL 文件”
注意事項
在 雙擊打開數據表 與 SQL 窗口查詢 場景中,如果沒有手動加 hint,那么數據訪問代理后臺都會默認加上一個 SCAN_ALL
的 hint,表示 全表掃描,以保證在沒有分庫分表位的查詢中有著良好的用戶體驗。
但需要注意的是,查詢時,請勿在數據量很大的時候不加任何篩選條件地進行全表掃描,否則可能會給數據訪問代理后臺和物理庫造成較大壓力,引起業務系統查詢耗時增長,甚至崩潰。