全部產品
Search
文件中心

ApsaraDB RDS:通過WebShell登入SQL Server主機並使用SSRS報表格服務

更新時間:Jun 03, 2026

本文將為您介紹如何使用RDS執行個體的主機帳號登入到RDS SQL Server執行個體主機中。您可以在登入主機後使用SSRS(SQL Server Reporting Services)服務管理和操作SQL Server資料庫。

背景資訊

RDS SQL Server提供了WebShell功能,允許使用者通過Web介面登入到RDS SQL Server執行個體的作業系統中,並在該作業系統中執行命令、上傳下載檔案等操作。WebShell功能方便使用者對RDS SQL Server執行個體的管理和維護,特別是在無法使用SSH用戶端的情況下,提供了一種方便快捷的遠端管理方式。

SQL Server Reporting Services(SSRS)是微軟的一項企業級報表格服務,它可以協助使用者從SQL Server資料庫和其他資料來源中產生各種類型的報表,例如表格報表、圖表報表、交叉報表、多維資料報表等。SSRS服務可以串連到RDS SQL Server資料庫並將其作為資料來源,從而產生各種類型的報表。這種聯合使用可以讓企業和使用者更高效地管理和分析資料,並產生各種類型的報表,從而支援業務決策和管理。

應用情境

假設您是一家中小型企業的資料庫管理員,負責管理公司的SQL Server資料庫。由於公司的業務量不斷增加,資料庫的訪問量也越來越大。為了更好地管理和最佳化資料庫,您需要使用SSRS服務來分析和監控資料庫。但是由於公司的伺服器主機不在本地,您無法直接登入到主機進行操作。

基於以上情況,您可以使用RDS控制台建立一個主機帳號,並通過該帳號登入WebShell,最終登入到RDS SQL Server執行個體主機中。您可以在登入主機後使用SSRS服務輕鬆地管理和操作SQL Server資料庫,及時掌握資料庫的情況,從而更好地支援公司的業務發展。

前提條件

  • RDS執行個體需滿足如下條件:

    • 執行個體系列:基礎系列、高可用系列(2012及以上版本)、叢集系列

    • 執行個體規格:通用型、獨享型(不支援共用型)

    • 計費方式:訂用帳戶或隨用隨付(不支援Serverless執行個體)

    • 網路類型:專用網路。如需變更網路類型,請參見更改網路類型。

    • 執行個體建立時間:

      • 高可用系列和叢集系列執行個體的建立時間需在2021年01月01日或之後。

      • 基礎系列執行個體的建立時間需在2022年09月02日或之後。

      說明

      建立時間可在基本資料頁內的運行狀態中查看。

  • 登入帳號必須為阿里雲主帳號。

  • 在使用者帳號頁簽下,已建立超級許可權帳號(System Admin)。

  • 在主機帳號頁簽下,已建立帳號類型為超級許可權帳號(sysadmin)的主機帳號。

使用影響

本教程所使用到的SA許可權帳號為SQL Server資料庫的最高許可權,主機帳號為主機的最高許可權。由於超級許可權帳號或主機帳號所擁有的操作許可權已超出了RDS SQL Server的控制範圍,因此對於建立過該類型帳號的RDS SQL Server執行個體,該執行個體不再享受SLA保障,執行個體運行環境歸屬於使用者,但執行個體正常使用和售後服務仍不受影響。對於未建立該類型帳號的RDS SQL Server執行個體,仍享有完整SLA保障。

步驟一:通過WebShell登入RDS SQL Server主機

  1. 訪問RDS執行個體列表,在上方選擇地區,然後單擊目標執行個體ID。

  2. 在左側導覽列單擊帳號管理。

  3. 選擇主機帳號頁簽,單擊目標帳號操作列下的遠端連線(主)。

  4. 在彈出的遠端連線對話方塊中,輸入主機帳號密碼。

  5. 單擊確定。

    單擊確定後,系統會產生一個WebShell登入地址並自動登入到SQL Server執行個體主機。系統會以彈窗形式開啟一個新WebShell頁面,頁面開啟時可能會被瀏覽器攔截,如果出現此情況,請設定瀏覽器視窗的攔截方式為始終允許,以確保頁面正常顯示。頁面顯示如下:

    成功登入後顯示 Windows 案頭環境,案頭左上方有 Recycle Bin(資源回收筒)和 Cygwin64 Terminal 捷徑表徵圖,表明已成功串連到 SQL Server 執行個體主機。

步驟二:配置並使用SSRS服務

前提條件

在SQL Server主機中配置SSRS服務前,請確保SQL Server Reporting Services(MSSQLSERVER)服務狀態為開啟且運行中。查看或修改SSRS服務狀態的方法,請參見查看或修改SSRS服務狀態。

確認該服務的登入身份(Log On As)為 NT Service 賬戶。

注意事項

RDS SQL Server執行個體系列為高可用系列或叢集系列時,由於資料庫處於鏡像或Always On可用性群組狀態,可能會導致SSRS服務配置出錯。若出現該問題,請使用超級許可權帳號登入SQL Server執行個體,並執行以下命令進行處理:

說明

由於RDS執行個體會定期搭建鏡像或可用性群組,因此在配置SSRS服務時,可能會出現多次配置錯誤的情況。為解決該問題,每次出現配置錯誤時,您都需要使用超級許可權帳號登入SQL Server執行個體,並執行以下命令進行處理。

-- 高可用版執行個體(關閉資料庫的鏡像)
ALTER DATABASE [ReportServer] SET PARTNER OFF;
ALTER DATABASE [ReportServerTempDB] SET PARTNER OFF;
-- 叢集版執行個體(從ag-rds可用組中移除資料庫)
ALTER AVAILABILITY GROUP [ag-rds] REMOVE DATABASE [ReportServer];
ALTER AVAILABILITY GROUP [ag-rds] REMOVE DATABASE [ReportServerTempDB];

上述操作的目的是確保SSRS服務能夠正常配置和運行。對於叢集系列執行個體,為了保證資料的高可用性和資料庫的正常備份恢複,請在SSRS配置完成後,使用超級許可權帳號登入SQL Server執行個體,並執行以下命令將資料庫重新添加到可用性群組中。

ALTER AVAILABILITY GROUP [AG-RDS] ADD DATABASE [ReportServer]
ALTER AVAILABILITY GROUP [AG-RDS] ADD DATABASE [ReportServerTempDB]

操作步驟

  1. 使用超級許可權帳號登入SQL Server執行個體,並執行以下命令。

    DISABLE TRIGGER [_$$_tr_$$_rds_alter_database] ON ALL SERVER;
    說明

    如何串連SQL Server執行個體,請參見串連SQL Server執行個體。

  2. 單擊image..png>Reporting Services Configuration Manager。

  3. 在彈出的對話方塊中,確認報表伺服器名稱並單擊Connect。

    在 Report Server Instance 下拉框中確認執行個體為 MSSQLSERVER。

    說明

    如果您的RDS SQL Server執行個體系列為高可用系列或叢集系列,在串連報表時可能會因為資料庫鏡像或可用性群組的原因而失敗。如遇到該問題,請參見本文注意事項解決。

  4. 在左側導覽列根據您的業務情況設定Service Accout(服務帳號)、Web Service URL(Web服務URL)。

    說明

    配置方法,請參見官方文檔。

  5. 在左側導覽列選擇Database,然後單擊右側的Change Database,在主機中建立新的報表伺服器資料庫。

    1. 選擇Create a new report server database,單擊Next。

    2. 確認伺服器名稱,配置以下參數,單擊Next。

      配置項

      說明

      Server Name

      伺服器名稱,固定配置,無需修改。

      Authentication Type

      選擇身分識別驗證類型,請選擇SQL Server Account。

      Username

      請填寫RDS SQL Server執行個體使用者帳號頁簽下已建立的超級許可權帳號。

      Password

      請填寫RDS SQL Server執行個體使用者帳號頁簽下超級許可權帳號的密碼。

    3. 填寫報表伺服器資料庫名稱並選擇指令碼使用的語言,單擊Next。

      在 Database Name 中填寫 ReportServer,在 Language 下拉框中選擇 Chinese (Simplified, PRC)。

    4. 設定賬戶串連報表伺服器的憑據,單擊Next。

    5. 確認摘要,單擊Next,等待報表伺服器資料庫建立完成,單擊Finish。

  6. 使用超級許可權帳號登入SQL Server執行個體,並執行以下命令。

    USE [master]
    GO
    -- 更改資料庫的復原模式為FULL,使用NO_WAIT參數使更改立即生效
    ALTER DATABASE [ReportServer] SET RECOVERY FULL WITH NO_WAIT
    GO
    ALTER DATABASE [ReportServerTempDB] SET RECOVERY FULL WITH NO_WAIT
    GO
    -- 用於啟用伺服器上所有資料庫上的一個特定觸發器
    ENABLE TRIGGER [_$$_tr_$$_rds_alter_database] ON ALL SERVER;
  7. 後續建立資料來源等操作取決於您的業務需求,具體操作請參見步驟5~步驟8或官方文檔。

查看或修改SSRS服務狀態

  1. 登入SQL Server主機,在搜尋欄中輸入services.msc開啟服務視窗。

  2. 在本地服務視窗中,查看SQL Server Reporting Services (MSSQLSERVER)的運行狀態(Status)。

    確認該服務的狀態(Status)為 Running,啟動類型(Startup Type)為 Automatic,登入身份(Log On As)為 NT Service\... 賬戶。

    說明

    SSRS服務啟動類型說明如下:

    • Manual:服務需要手動啟動,不會在系統啟動時自動啟動。

    • Automatic:服務會在系統啟動時自動啟動。

    • Automatic (Delayed Start):服務會在系統啟動後一段時間內自動啟動。

    • Disabled:服務已被禁用,無法啟動。

  3. (可選)修改SSRS服務運行狀態,並啟動服務。

    1. 雙擊服務,在彈出的對話方塊中,修改Startup type屬性。

      將其設定為 Automatic,然後單擊 OK。

    2. 右鍵服務,在彈出的對話方塊中,單擊Start。

    3. 查看修改後的SSRS服務運行狀態。

      確認 SQL Server Reporting Services (MSSQLSERVER) 服務的 Status 為 Running,Startup Type 為 Automatic。

常見問題

通過RDS主機帳號遠端連線時提示指定的主機資訊不存在。如何處理?

主機帳號密碼預設僅42天有效,密碼到期會導致登入失敗,您可單擊主機帳號操作列下的重設密碼按鈕重新設定密碼後再登入即可。

說明

建議為帳號設定密碼到期策略,以管理密碼有效期間並增強資料安全性,設定後主機帳號將自動應用該策略,無需手動設定。

如何擷取RDS SQL Server執行個體的主機名稱和主機WebShell登入地址?

您可以先使用DescribeDBInstanceIpHostname介面擷取IpHostnameInfos(RDS執行個體主機名稱),再使用DescribeHostWebShell介面擷取LoginUrl(主機WebShell登入地址)。

說明
  • 擷取到的登入連結僅在兩分鐘內有效,因此請務必在擷取後立即使用,否則將無法成功登入主機。

  • 如果連結失效,請重新調用API擷取最新的登入連結。