疑難排解安裝和升級問題 (Reporting Services)

您可以使用本主題來疑難排解及解決您在安裝或升級 Reporting Services 時所遇到的問題。如需有關 Reporting Services 安裝必要條件、記錄檔和設定的詳細資訊,請參閱<如何:疑難排解 Reporting Services 的安裝問題>。

本主題包含下列問題的相關資訊:

  • 升級到 Windows Vista 或 Windows Server 2008 之後,看不到效能計數器

  • 修復 SQL Server 2000 Reporting Services 升級失敗時發生錯誤

  • 從 SQL Server 2005 升級後,ReportServerExternalURL 和 PassThroughCookies 組態屬性未設定

  • SQL Server 2000 Reporting Services 安裝中斷了 SQL Server 2008 Reporting Services 的預設執行個體

  • 在執行 SQL Server 2008 Reporting Services 的電腦上,安裝 SQL Server 2005 Reporting Services 的預設執行個體失敗

  • 從 SQL Server 2005 升級至 SQL Server 2008 之後,使用 Windows 驗證時發生 401 未經授權錯誤

  • 在包含 64 位元執行個體的並存部署中,解除安裝 SQL Server 2008 Reporting Services 的 32 位元執行個體會中斷 64 位元執行個體

  • 在二月版 CTP 之後安裝 SSL 憑證後,從二月版 CTP 升級到更新版的 SQL Server 2008 Reporting Services 時出現錯誤訊息

升級到 Windows Vista 或 Windows Server 2008 之後,看不到效能計數器

如果您在執行 Reporting Services 的電腦上,將作業系統升級為 Windows Vista 或 Windows Server 2008,在升級之後將不會設定 Reporting Services 效能計數器。

重新恢復 Reporting Services 效能計數器

  1. 刪除下列登錄機碼:

    • HKLM\SYSTEM\CurrentControlSet\Services\MSRS 2008 Web Service

    • HKLM\SYSTEM\CurrentControlSet\Services\MSRS 2008 Windows Service

  2. 開啟命令視窗,然後在命令提示字元下輸入下列命令:

    • run<.NET 2.0 Framework 目錄**>\InstallUtil.exe<報表伺服器 Bin 目錄>\ReportingServicesLibrary.dll**

      [!附註]

      以 .NET Framework 2.0 檔案的實體路徑來取代 <.NET 2.0 Framework 目錄>,並以報表伺服器 bin 檔案的實體路徑來取代 <報表伺服器 Bin 目錄>。

  3. 重新啟動 Reporting Services 服務。

若要上述步驟是否有效,請開啟網頁瀏覽器,並導覽至報表管理員 URL 或報表伺服器 URL。然後,開啟效能監視器來確認計數器是否有在運作。

回到頁首

修復 SQL Server 2000 Reporting Services 升級失敗時發生錯誤

如果從 SQL Server 2000 升級到 SQL Server 2008 Reporting Services 失敗,您可以執行修復並嘗試修正問題。不過,當您在執行修復後嘗試存取 Reporting Services 時 (例如開啟報表管理員或嘗試轉譯報表),可能會收到下列錯誤訊息:

「報表伺服器資料庫的版本可能不是有效格式,或是無法讀取。找到的版本為 'C.0.6.54',必須是版本 'C.0.9.45' (rsInvalidReportServerDatabase)。」

若要修正這個問題,您必須將 RSExecRole 加入至 Reporting Services 資料庫中的 db_owner 角色。

將 RSExecRole 加入至 Reporting Services 資料庫中的 db_owner 角色

  1. 開啟 SQL Server Management Studio,連接至主控 ReportServer 和 ReportServerTempDB 資料庫的資料庫。

  2. 在 [物件總管] 中,展開下列節點:[資料庫][ReportServer][安全性][角色][資料庫角色]

  3. 用滑鼠右鍵按一下 [db_owner],然後按一下 [屬性]

  4. [資料庫角色屬性] 頁面上,按一下 [加入]

  5. [選取資料庫使用者或角色] 頁面上輸入 RSExecRole,然後按兩次 [確定]

  6. 對 ReportServerTempDB 重複這些步驟。

  7. 重新啟動報表伺服器服務。您可能必須重新啟動服務兩次。如需詳細資訊,請參閱<啟動與停止報表伺服器服務>。

回到頁首

從 SQL Server 2005 升級後,ReportServerExternalURL 和 PassThroughCookies 組態屬性未設定

當您從 SQL Server 2005 升級到 SQL Server 2008 Reporting Services 時,升級程序不會設定 ReportServerExternalURL 和 PassThroughCookies 組態屬性。ReportServerExternalURL 是一個選擇性的屬性,只應在使用 SharePoint 2.0 Web 組件且允許使用者擷取報表並且以新的瀏覽器視窗開啟報表時,才設定這個屬性。如需有關 ReportServerExternalURL 的詳細資訊,請參閱<組態檔中的 URL (Reporting Services)>。只有在使用自訂驗證方法時,才需要 PassThroughCookies。如需有關 PassThroughCookies 的詳細資訊,請參閱<啟用報表管理員傳遞自訂驗證 Cookie>。

[!附註]

當您使用自訂驗證時,建議您移轉安裝,而不要執行升級。如需有關移轉 Reporting Services 的詳細資訊,請參閱<如何:移轉 Reporting Services 安裝>。

依預設,這些屬性不存在於 SQL Server 2008 Reporting Services 組態。如果您在 SQL Server 2005 中設定了這些屬性,而且仍然需要這些屬性的功能,您必須在升級程序之後將這些屬性手動加入至 RSReportServer.config 檔案。如需詳細資訊,請參閱<如何:修改 Reporting Services 組態檔>。

回到頁首

SQL Server 2000 Reporting Services 安裝中斷了 SQL Server 2008 Reporting Services 的預設執行個體

如果您必須在相同電腦上同時執行 SQL Server 2000 Reporting Services 和 SQL Server 2008 Reporting Services,先安裝 SQL Server 2000 執行個體。如果不這麼做,預設執行個體的 SQL Server 2008 Reporting Services 服務項目會在您安裝 SQL Server 2000 Reporting Services 時遭到覆寫,而且 SQL Server 2008 執行個體會中斷。這是因為 SQL Server 2000 Reporting Services 只會安裝為預設執行個體,但是安裝程序不會偵測到預設執行個體已由 SQL Server 2008 Reporting Services 執行個體使用。如果您嘗試修復 SQL Server 2008 執行個體,SQL Server 2008 執行個體會獲得修復,而 SQL Server 2000 執行個體則會中斷。

回到頁首

在執行 SQL Server 2008 Reporting Services 的電腦上,安裝 SQL Server 2005 Reporting Services 的預設執行個體失敗

如果您嘗試在已經執行 SQL Server 2008 Reporting Services 執行個體的電腦上安裝 SQL Server 2005 Reporting Services 的預設執行個體,SQL Server 2005 Reporting Services 執行個體安裝會失敗,並出現下列錯誤訊息:

「具有相同名稱的執行個體已安裝在這部電腦上。若要繼續 SQL Server 安裝程式,請提供唯一的執行個體名稱。」

不論 SQL Server 2008 Reporting Services 執行個體是預設或具名執行個體,也不論電腦上是否已存在相同名稱的 SQL Server 2008 Reporting Services 執行個體,都會發生這個問題。

若要解決這個問題,請使用下列其中一個選項:

  • 如果必須將 SQL Server 2005 Reporting Services 當做電腦上的預設執行個體執行,您必須在安裝 SQL Server 2008 Reporting Services 執行個體之前,先安裝 SQL Server 2005 Reporting Services 執行個體。

  • 如果不必將 SQL Server 2005 Reporting Services 當做預設執行個體,您可以在安裝 SQL Server 2008 Reporting Services 執行個體之後,將 SQL Server 2005 Reporting Services 執行個體安裝為具名執行個體。

回到頁首

從 SQL Server 2005 升級至 SQL Server 2008 之後,使用 Windows 驗證時發生 401 未經授權錯誤

如果您從 SQL Server 2005 Reporting Services 升級到 SQL Server 2008 Reporting Services,而且對報表伺服器服務帳戶使用 NTLM 驗證及內建帳戶,當您在升級後存取報表伺服器或報表管理員時,可能會遇到 401 未經授權錯誤。

之所以發生這個錯誤,是因為 Windows 驗證的預設 SQL Server 2008 Reporting Services 組態中出現變更。當報表伺服器服務帳戶是 Network Service 或 Local System 時,會設定交涉。如果報表伺服器服務帳戶不是上述其中一個內建帳戶時,則會設定 NTLM。若要在升級後修正這個問題,您可以編輯 RSReportServer.config 檔案,並將 AuthenticationType 設為 RSWindowsNTLM。如需詳細資訊,請參閱<如何:在 Reporting Services 中設定 Windows 驗證>。

回到頁首

在包含 64 位元執行個體的並存部署中,解除安裝 SQL Server 2008 Reporting Services 的 32 位元執行個體會中斷 64 位元執行個體

當您在電腦上並存安裝 SQL Server 2008 Reporting Services 的 32 位元執行個體與 64 位元執行個體後,如果解除安裝 32 位元執行個體,會移除四個 Reporting Services 登錄機碼。這會中斷 Reporting Services 的 64 位元執行個體。當您解除安裝 32 位元執行個體時,會移除的 Reporting Services 登錄機碼如下:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSRS 2008 Web Service\Performance:Counter NamesHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSRS 2008 Windows Service\Performance:Counter NamesHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSRS 2008 Web Service\Performance:Counter TypesHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSRS 2008 Windows Service\Performance:Counter Types

若要修正這個問題,您可以修復 64 位元執行個體。雖然建議您使用修復,不過您也可以使用登錄編輯程式以手動方式重新加入登錄機碼。

警告注意事項注意

不當編輯登錄可能會造成系統嚴重受損。在變更登錄之前,應備份電腦上的所有重要資料。

使用登錄編輯程式重新加入效能登錄機碼

  1. 開啟登錄編輯程式:

    1. 按一下 [開始],並按一下 [執行]

    2. [執行] 對話方塊的 [開啟] 方塊中,輸入 regedit。

  2. 在 [登錄編輯程式] 中,選取下列登錄機碼:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSRS 2008 Web Service\Performance

  3. 以滑鼠右鍵按一下 [Performance] 節點,指向 [新增],然後按一下 [多字串值]

  4. 輸入 Counter Names,然後按 ENTER 鍵。

  5. 重複上述步驟,在此節點中新增 Counter Types 登錄機碼。

  6. 導覽到下列登錄機碼:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSRS 2008 Web Service\Performance

  7. 以滑鼠右鍵按一下 [Performance] 節點,指向 [新增],然後按一下 [多字串值]

  8. 輸入 Counter Names,然後按 ENTER 鍵。

  9. 重複上述步驟,在此節點中新增 Counter Types 登錄機碼。

修復 64 位元執行個體或手動重新加入登錄機碼後,可以使用效能監視器設定您要監視的 Reporting Services 效能物件。

回到頁首

在二月版 CTP 之後安裝 SSL 憑證後,從二月版 CTP 升級到更新版的 SQL Server 2008 Reporting Services 時出現錯誤訊息

將 SQL Server 2008 Reporting Services 從二月版 CTP 升級為 Release Candidate 0 (RC0) 或更新版本時,如果您在安裝或升級為二月版 CTP 後在 Internet Information Services (IIS) 中的預設網站上安裝安全通訊端層 (SSL) 憑證,您會在升級時收到下列錯誤:

「SQL Server 安裝程式無法擷取 SSL 憑證名稱。」

這個問題會造成升級無法繼續。若要避免這個問題,請在升級為 RC0 或 RTM 之前先移除預設網站上的 SSL 憑證,然後在升級成功後將憑證重新套用到預設的 IIS 網站上。

回到頁首