全部產品
Search
文件中心

Data Management:使用DMS MCP

更新時間:Nov 04, 2025

模型上下文協議(Model Context Protocol, MCP)主要為大模型和外部工具之間搭建資訊傳遞的通道。本文為您介紹如何配置Data Management MCP,以便使用多雲通用的MCP Server安全地訪問託管在DMS的資料庫

背景資訊

傳統資料庫的MCP存在如下痛點:

  • 異構資料庫相容性不足:僅支援串連和操作同類型資料庫,無法跨資料庫平台統一管理。

  • 帳號與許可權管理缺失:缺乏獨立的帳號密碼集中管理能力,依賴手動維護,存在安全隱患。

  • SQL操作受限:僅支援手動輸入基礎的標準SQL,無法解析複雜或非標準文法。

  • 缺乏NL2SQL支援:本身不支援自然語言查詢(NL2SQL),需額外接入外部大模型來擷取NL2SQL能力。

DMS MCP可以很好地解決上述問題,並為AI大模型提供統一的資料接入和訪問能力,且可以通過標準化介面解決相容性、安全等問題。同時,通過DMS MCP可以獲得更多新特性,包含擷取Schema資訊,並產生DAO(Data Access Object,Data Access Objects)代碼或進行結構分析,以及通過SQL自動路由,準確擷取資料,為上層業務提供資料支援。

DMS MCP的核心特性

  • 安全訪問

    • 帳號密碼安全託管:DMS安全管理資料庫帳號密碼,無需人工維護,有效防止敏感資訊泄露。

    • 支援內網訪問:支援通過內網訪問資料庫,無需暴露公網地址,有效保障資料的安全與隱私。

    • 細粒度許可權管控:支援執行個體、庫、表、欄位及行層級的精細化存取控制,避免越權操作,保障資料安全。

    • 識別與攔截高危SQL:DMS內建多種安全規則,可即時識別、攔截潛在高危SQL,防範安全風險。

    • SQL審計追蹤:支援記錄所有SQL的動作記錄,支援完整追溯與合規審計,滿足監管要求。

  • 智能問數

    • 內建NL2SQL演算法:根據您輸入的自然語言問題,智能匹配資料表、理解表中的業務含義,產生並執行SQL查詢,快速擷取結果。

    • 個人化知識庫:DMS內建中繼資料和問數知識庫,支援自訂業務知識和查詢模式,打造貼合業務情境的專屬智能問數能力。

  • 支援多種資料來源

    • 多種資料來源管理:支援管理40多種主流資料庫和數倉,可以實現統一接入和訪問多種類型的資料。

    • 多環境統一管理:支援集中管理開發、測試、生產等不同環境下的資料來源,提升營運效率。

    • 多平台無縫整合:覆蓋阿里雲、AWS等主流雲平台以及自建資料庫和數倉,有效降低維護成本。

應用流程圖

如下為您展示在用戶端請求訪問資料的流程。

使用情境

情境一:結合通義靈碼等AI IDE,產生DAOData Access Objects、ORM(Data Access Object

如下為您介紹在此情境下,傳統生產與智能開發(使用DMS MCP)流程之間的差異。

  • 傳統生產流程:首先通過資料庫開發工具手動執行建表SQL,其次在IDE(整合式開發環境)編寫DAO代碼,再通過資料庫工具構建資料,最後預覽資料。

  • 智能開發流程:首先通過AI IDE設計表,其次通過DMS MCP自動執行建表SQL、IDE自動產生DAO代碼、MCP智能構建資料,最後預覽資料。

情境二:通過DMS NL2SQL直接擷取資料統計結果

市場分析部門可以使用DMS NL2SQL能力,直接使用自然語言擷取資料統計結果,便於分析資料趨勢。

費用說明

當前DMS MCP服務處於公測階段,可以免費使用。

如果您需要諮詢本方案的更多資訊,歡迎填寫表單留下您的資訊或進入DingTalk群(群號:129600002740)聯絡DMS支援人員。

準備工作

在您使用DMS MCP能力訪問託管在DMS的資料庫執行個體之前,您需要將對應的資料庫執行個體錄入至DMS中,並為執行個體開啟安全託管。錄入執行個體的方式如下:

方法一:通過DMS MCP工具錄入阿里雲資料庫執行個體

說明
  • 該方式僅支援錄入阿里雲資料庫執行個體。

  • 通過該工具錄入的執行個體,DMS預設為其開啟安全託管

DMS MCP Server提供addInstance工具,協助您快速將執行個體錄入至DMS中。您僅需要在接入DMS MCP的智能體(對話式AI應用)中告訴大模型您需要錄入執行個體,以及執行個體的詳細資料(執行個體ID、資料庫帳號、密碼和地區),大模型會自動調用對應工具。

方法二:通過DMS控制台錄入阿里雲或他雲/自建資料庫執行個體

說明

該方式支援錄入阿里雲或他雲/自建資料庫執行個體。如下以錄入阿里雲RDS MySQL資料庫為例。

  1. 登入Data Management 5.0
  2. 在控制台首頁左側的資料庫執行個體地區,單擊新增執行個體add表徵圖。

    說明

    您還可以在功能表列中選擇資料資產 > 執行個體管理,單擊新增,進行新增執行個體操作。

  3. 新增執行個體頁面,錄入執行個體資訊。

    類別

    配置項

    說明

    資料來源

    -

    預設選擇阿里雲-MySQL。您可以以重新選擇資料庫類型。

    基本資料

    資料庫類型

    選擇資料庫執行個體的類型。

    說明

    在選擇資料庫類型後,DMS會自動重新整理基本資料頁面的配置項。

    執行個體地區

    選擇資料庫執行個體所在的地區。

    其他主賬號

    若您選擇跨阿里雲帳號執行個體,則會出現該配置項。選擇資料庫執行個體所屬的主帳號。

    說明

    如果主帳號不在挑選清單中,您可以單擊添加用戶,添加資料庫執行個體購買者的主帳號。具體操作,請參見添加使用者

    錄入方式

    選擇資料庫執行個體的錄入方式。支援執行個體ID串連串地址兩種錄入方式。

    執行個體ID串連串地址

    輸入執行個體ID串連串地址

    說明

    串連串地址的組成形式為內網地址+內網連接埠。以RDS MySQL舉例,rm-XXXXXXX.mysql.rds.aliyuncs.com:3306。

    安全託管

    保持開啟狀態。

    開啟安全託管,可以避免使用者直接接觸賬密、實現細粒度的許可權管控。

    訪問方式

    訪問方式如下:

    • 帳號+密碼登入:您需要手動輸入已建立好的資料庫帳號及密碼。

    • KMS憑據登入:手動選擇在KMS建立的RDS憑據以登入資料庫。

      說明

      目前僅錄入RDS執行個體時,會出現該參數。

    增值功能包

    您可以按需選擇功能包。

    • 安全協同穩定變更(二選一):安全協同支援穩定變更的所有能力,其提供DevOps功能,可以靈活自訂研發流程、審批次程序;穩定變更支援為資料庫提供更加穩定啟動並執行解決方案,如無鎖變更、SQL審核。

      說明

      若不選擇安全協同和穩定變更功能包,則執行個體預設為自由操作。

    • Sensitive Data Discovery and Protection:此功能可以實現對敏感性資料進行管控和脫敏,根據您的業務需求選擇是否開啟此功能。詳細資料,請參見開通Sensitive Data Discovery and Protection

    安全規則

    當功能包選擇安全協同時,會出現該配置項。

    您可以選擇系統預設或自建的安全規則對資料庫進行精細化的管控。

    分類分級模板

    當開啟Sensitive Data Discovery and Protection時,才會出現分類分級模板的配置項。

    進階資訊

    -

    進階資訊地區的參數值可以保持預設。參數說明,請參見雲資料庫錄入

  4. 填寫完成以上資訊後,單擊左下角的測試連接

    說明

    如果測試連接失敗,請按照報錯提示檢查您錄入的執行個體資訊。

  5. 出現串連成功提示後,單擊提交

    至此資料庫已成功錄入至DMS。

錄入執行個體操作,請參見雲資料庫錄入他雲/自建資料庫錄入

使用模式

DMS MCP Server支援兩種使用模式。

模式

模式適用情境

模式一:多執行個體模式

該模式適用於管理和訪問多環境多資料庫執行個體的情境。您可以將執行個體全部錄入至DMS中,再通過DMS MCP Server管理資料庫執行個體。

模式二:單資料庫模式

該模式適用於專註訪問單個資料庫的情境。您可以在Server中配置CONNECTION_STRING參數,指定需要訪問的資料庫。後續啟動服務時,DMS MCP Server會直接存取指定的資料庫。

配置格式:CONNECTION_STRING = dbName@host:port

您可以在DMS頁面左側的資料庫列表地區,找到並雙擊資料庫名稱,通過SQL視窗快速擷取CONNECTION_STRING的值。

快速使用

方案一:使用PyPI包運行

  1. 擷取具有訪問阿里雲Data Management許可權(AliyunDMSFullAccess)的AccessKeySTS Token

    添加許可權操作,請參見授權管理

  2. 將如下配置添加至MCP用戶端的設定檔中。

    • 多執行個體模式

      {
        "mcpServers": {
        "dms-mcp-server": {
          "command": "uvx",
          "args": [
            "alibabacloud-dms-mcp-server@latest"
          ],
          "env": {
            "ALIBABA_CLOUD_ACCESS_KEY_ID": "access_id",
            "ALIBABA_CLOUD_ACCESS_KEY_SECRET": "access_key",
            "ALIBABA_CLOUD_SECURITY_TOKEN": "sts_security_token optional, required when using STS Token" 
            }
          }
        }
      }
    • 單資料庫模式

      {
        "mcpServers": {
          "dms-mcp-server": {
            "command": "uvx",
            "args": [
              "alibabacloud-dms-mcp-server@latest"
            ],
            "env": {
              "ALIBABA_CLOUD_ACCESS_KEY_ID": "access_id",
              "ALIBABA_CLOUD_ACCESS_KEY_SECRET": "access_key",
              "ALIBABA_CLOUD_SECURITY_TOKEN": "optional sts_security_token, required when using STS Token",
              "CONNECTION_STRING": "dbName@host:port"
            }
          }
        }
      }

方案二:使用託管在DMS的MCP服務

  1. 登入Data Management 5.0
  2. 開通MCP服務。

    1. 將滑鼠指標放在右下角的MCP表徵圖image上,然後在彈出的對話方塊單擊立即開通

      image

    2. 選擇MCP服務的開通範圍。

      • 全部資料庫準備工作中錄入的所有資料庫。

      • 指定資料庫準備工作中錄入的其中一個資料庫。

        說明

        若選中指定資料庫,還需選擇目標資料庫。

    3. 單擊確認開通

      image

  3. MCP服務開通成功後,查看MCP配置資訊。

    說明

    您可以將滑鼠指標放在右下角的MCP表徵圖image上,並在彈出的對話方塊查看MCP配置資訊。

  4. 根據實際情況,將DMS MCP服務整合到您的AI Agent中並使用。

    說明
    • 在使用DMS MCP服務時,認證資訊Bearer Token需要參考步驟3MCP配置樣本Authorization進行填寫。

    • 若您需要更改MCP服務的資料庫範圍,可以先取消MCP服(將滑鼠指標放在MCP表徵圖image上,然後單擊取消服務,並在彈出的對話方塊單擊確認取消),然後重新開通MCP服務

方案三:使用託管在其他平台的DMS MCP服務

您可以在阿里雲百鍊ModelScope魔搭Function AI中使用DMS MCP服務。

DMS MCP支援的工具

工具名稱

描述

適用模式

addInstance

將執行個體錄入至DMS。如果執行個體已存在,則返回已執行個體的資訊。

多執行個體模式

listInstances

搜尋DMS中的執行個體列表。

多執行個體模式

getInstance

根據host和port擷取執行個體詳細資料。

多執行個體模式

searchDatabase

根據schemaName搜尋資料庫。

多執行個體模式

getDatabase

擷取特定資料庫的詳細資料。

多執行個體模式

listTable

搜尋指定資料庫下的資料表。

多執行個體模式&單資料庫模式

getTableDetailInfo

擷取特定資料庫表的詳細資料。

多執行個體模式&單資料庫模式

executeScript

執行SQL指令碼並返回結果。

多執行個體模式&單資料庫模式

createDataChangeOrder

建立資料變更工單,用於提交 DDL/DML 操作申請

多執行個體模式&單資料庫模式

getOrderInfo

查詢工單的詳細資料,包括狀態、審批次程序、執行日誌等

多執行個體模式&單資料庫模式

submitOrderApproval

提交工單至審批次程序,等待審核通過後執行

多執行個體模式&單資料庫模式

generateSql

將自然語言問題轉換為可執行檔 SQL 查詢語句

多執行個體模式

askDatabase

自然語言查詢資料庫(NL2SQL + 執行SQL)。

單資料庫模式

fixSql

對存在文法或邏輯錯誤的 SQL 進行自動修複

多執行個體模式&單資料庫模式

answerSqlSyntax

針對 SQL 文法問題提供解釋與建議

多執行個體模式&單資料庫模式

optimizeSql

分析並最佳化 SQL 陳述式,提升執行效率

多執行個體模式&單資料庫模式