如何遷移Reporting Services安裝
遷移是指將應(yīng)用程序數(shù)據(jù)文件移到新的 SQL Server 2008 實(shí)例。如果存在阻止升級(jí)的程序、大規(guī)模部署或運(yùn)行時(shí)間要求,或者要更改安裝的硬件或拓?fù)?,則必須遷移安裝。
Reporting Services 的遷移過(guò)程包括手動(dòng)步驟和自動(dòng)步驟。報(bào)表服務(wù)器遷移包括以下任務(wù):
- 備份數(shù)據(jù)庫(kù)、應(yīng)用程序和配置文件。
- 備份加密密鑰。
- 安裝 SQL Server 2008 的新實(shí)例。如果使用的是相同硬件,則可以將 SQL Server 2008 與現(xiàn)有的 SQL Server 2000 或 2005 安裝并行安裝。請(qǐng)注意,如果您并行安裝,則可能需要將 SQL Server 2008 安裝為命名實(shí)例。
- 將報(bào)表服務(wù)器數(shù)據(jù)庫(kù)和其他應(yīng)用程序文件從 SQL Server 2000 或 2005 安裝移到新的 SQL Server 2008 安裝中。
- 將任何自定義應(yīng)用程序文件移到新安裝中。
- 配置報(bào)表服務(wù)器。
- 編輯 RSReportServer.config,使其包括先前安裝中的任何自定義設(shè)置。
- 或者,為新的 Reporting Services Windows 服務(wù)組配置自定義訪問(wèn)控制列表 (ACL)。
- 測(cè)試安裝。
- 在確認(rèn)新實(shí)例完全正常之后,刪除未使用的應(yīng)用程序和工具。
請(qǐng)注意,如果要重用在以前的安裝中創(chuàng)建的現(xiàn)有報(bào)表服務(wù)器數(shù)據(jù)庫(kù),則用于承載報(bào)表服務(wù)器數(shù)據(jù)庫(kù)的 SQL Server 有版本限制。有關(guān)詳細(xì)信息,請(qǐng)參閱創(chuàng)建報(bào)表服務(wù)器數(shù)據(jù)庫(kù)。
即使要遷移(而不是升級(jí))安裝,也要考慮針對(duì)現(xiàn)有的安裝運(yùn)行升級(jí)顧問(wèn)以幫助確定可能會(huì)影響遷移的任何問(wèn)題。如果要遷移尚未安裝或配置的報(bào)表服務(wù)器,則該步驟尤其有用。通過(guò)運(yùn)行升級(jí)顧問(wèn),可以查明新 SQL Server 2008 安裝可能不支持的自定義設(shè)置。
此外,應(yīng)當(dāng)注意 SQL Server 2008 中進(jìn)行了多項(xiàng)將影響安裝遷移方式的重要改動(dòng):
- IIS 不再是必備組件。如果要將報(bào)表服務(wù)器安裝遷移到新計(jì)算機(jī)上,則無(wú)需添加 Web 服務(wù)器角色。另外,URL 和身份驗(yàn)證的配置步驟不同于以前的版本,用來(lái)診斷和解決問(wèn)題的方法和工具也是如此。
- 報(bào)表服務(wù)器 Web 服務(wù)、報(bào)告管理器和報(bào)表服務(wù)器 Windows 服務(wù)合并到一個(gè)報(bào)表服務(wù)器服務(wù)中。所有這三個(gè)應(yīng)用程序都在同一個(gè)帳戶下運(yùn)行。所有這三個(gè)應(yīng)用程序都從 RSReportServer.config 文件中讀取配置設(shè)置,這使得 RSWebApplication.config 被廢棄。
- 為了刪除重疊功能而對(duì)報(bào)表管理器和 SQL Server Management Studio 進(jìn)行了重新設(shè)計(jì)。每個(gè)工具都支持一組不同的任務(wù);這些工具不再能夠互換。
- SQL Server 2008 Reporting Services 不支持 ISAPI 篩選器。如果使用 ISAPI 篩選器,則必須在遷移之前重新設(shè)計(jì)報(bào)表解決方案。
- SQL Server 2008 Reporting Services 不支持 IP 地址限制。如果使用 IP 地址限制,則必須在遷移之前重新設(shè)計(jì)報(bào)表解決方案,或使用諸如防火墻、路由器或網(wǎng)絡(luò)地址轉(zhuǎn)換 (NAT) 等技術(shù)來(lái)配置被禁止訪問(wèn)報(bào)表服務(wù)器的地址。
- SQL Server 2008 Reporting Services 不支持客戶端安全套接字層 (SSL) 證書(shū)。如果使用客戶端 SSL 證書(shū),則必須在遷移之前重新設(shè)計(jì)報(bào)表解決方案。
- 如果使用 Windows 集成身份驗(yàn)證之外的身份驗(yàn)證類型,則必須將 RSReportServer.config 文件中的 <AuthenticationTypes> 元素更新為支持的身份驗(yàn)證類型。支持的身份驗(yàn)證類型包括 NTLM、Kerberos、Negotiate 和 Basic。SQL Server 2008 Reporting Services 不支持匿名、.NET Passport 和摘要式身份驗(yàn)證。
- 如果在報(bào)表環(huán)境中使用自定義級(jí)聯(lián)樣式表,則這些樣式表不會(huì)被遷移。必須在遷移后對(duì)它們進(jìn)行手動(dòng)移動(dòng)。
有關(guān) SQL Server 2008 Reporting Services 中更改的詳細(xì)信息,請(qǐng)參閱升級(jí)顧問(wèn)文檔和新增功能 (Reporting Services)。
在安裝新 Reporting Services 實(shí)例之前,請(qǐng)確保對(duì)當(dāng)前安裝中的所有文件進(jìn)行備份。
- 備份報(bào)表服務(wù)器數(shù)據(jù)庫(kù)的加密密鑰。此步驟對(duì)于成功遷移至關(guān)重要。而且,在遷移過(guò)程中,必須還原加密密鑰才能使報(bào)表服務(wù)器重新獲得對(duì)加密數(shù)據(jù)的訪問(wèn)權(quán)限。若要備份加密密鑰,可以使用 Reporting Services 配置工具(或者,如果要從 SQL Server 2000 遷移的話,可以使用 rskeymgmt 實(shí)用工具)。
- 使用任一支持的備份 SQL Server 數(shù)據(jù)庫(kù)的方法來(lái)備份報(bào)表服務(wù)器數(shù)據(jù)庫(kù)。有關(guān)詳細(xì)信息,請(qǐng)參閱將報(bào)表服務(wù)器數(shù)據(jù)庫(kù)移至其他計(jì)算機(jī)中有關(guān)如何備份報(bào)表服務(wù)器數(shù)據(jù)庫(kù)的說(shuō)明。
- 備份報(bào)表服務(wù)器配置文件。要備份的文件包括:
- Rsreportserver.config
- Rswebapplication.config
- Rssvrpolicy.config
- Rsmgrpolicy.config
- Reportingservicesservice.exe.config
- 報(bào)表服務(wù)器和報(bào)表管理器 ASP.NET 應(yīng)用程序的 Web.config。
- ASP.NET 的 Machine.config(如果您為報(bào)表服務(wù)器操作修改過(guò)它)。
- Rsreportserver.config
報(bào)表服務(wù)器數(shù)據(jù)庫(kù)包含已發(fā)布的報(bào)表、模型、共享數(shù)據(jù)源、計(jì)劃、資源、訂閱和文件夾,還包含系統(tǒng)屬性、項(xiàng)屬性以及對(duì)報(bào)表服務(wù)器內(nèi)容的訪問(wèn)權(quán)限。
如果您的遷移涉及到使用另一個(gè)數(shù)據(jù)庫(kù)引擎實(shí)例,則必須將報(bào)表服務(wù)器數(shù)據(jù)庫(kù)移到新的數(shù)據(jù)庫(kù)引擎實(shí)例中。如果要使用同一個(gè)數(shù)據(jù)庫(kù)引擎實(shí)例,請(qǐng)?zhí)?ldquo;配置報(bào)表服務(wù)器”。
若要移動(dòng)報(bào)表服務(wù)器數(shù)據(jù)庫(kù),請(qǐng)執(zhí)行以下操作:
- 選擇要使用的數(shù)據(jù)庫(kù)引擎實(shí)例。SQL Server 2008 Reporting Services 要求使用 SQL Server 2005 或 2008 來(lái)承載報(bào)表服務(wù)器數(shù)據(jù)庫(kù)。SQL Server 2000 不能再用來(lái)為 SQL Server 2008 Reporting Services 承載報(bào)表服務(wù)器數(shù)據(jù)庫(kù)。如果使用的是在 8.0 兼容模式下運(yùn)行的 SQL Server 2000 或 SQL Server 2005,則必須升級(jí)數(shù)據(jù)庫(kù)引擎或選擇另一個(gè)數(shù)據(jù)庫(kù)引擎實(shí)例。
- 啟動(dòng) SQL Server Management Studio 并連接到數(shù)據(jù)庫(kù)引擎。
- 如果數(shù)據(jù)庫(kù)引擎從未承載過(guò)報(bào)表服務(wù)器數(shù)據(jù)庫(kù),請(qǐng)?jiān)谙到y(tǒng)數(shù)據(jù)庫(kù)中創(chuàng)建 RSExecRole。有關(guān)詳細(xì)信息,請(qǐng)參閱如何創(chuàng)建 RSExecRole。
- 按照將報(bào)表服務(wù)器數(shù)據(jù)庫(kù)移至其他計(jì)算機(jī)中的說(shuō)明操作。
請(qǐng)記住,報(bào)表服務(wù)器數(shù)據(jù)庫(kù)和臨時(shí)數(shù)據(jù)庫(kù)相互依賴而且必須一起移動(dòng)。請(qǐng)不要復(fù)制數(shù)據(jù)庫(kù);復(fù)制不會(huì)將所有安全設(shè)置轉(zhuǎn)移至新安裝。請(qǐng)不要移動(dòng)用于計(jì)劃報(bào)表服務(wù)器操作的 SQL Server 代理作業(yè)。報(bào)表服務(wù)器將自動(dòng)重新創(chuàng)建這些作業(yè)。
如果安裝中包括自定義的報(bào)表項(xiàng)、程序集或擴(kuò)展插件,則必須重新部署這些自定義組件。如果沒(méi)有使用自定義組件,請(qǐng)?zhí)?ldquo;配置報(bào)表服務(wù)器”。
若要重新部署自定義組件,請(qǐng)執(zhí)行以下操作:
- 確定是支持程序集還是需要重新編譯程序集:
- 為 SQL Server 2000 版本創(chuàng)建的自定義身份驗(yàn)證擴(kuò)展插件必須進(jìn)行重新編譯。
- 必須使用呈現(xiàn)對(duì)象模型 (ROM) 重新編寫(xiě) SQL Server 2008 Reporting Services 的自定義呈現(xiàn)擴(kuò)展插件。
- SQL Server 2008 Reporting Services 不支持 HTML 3.2 和 HTML OWC 呈現(xiàn)器。
- 其他自定義程序集應(yīng)當(dāng)不需要重新編譯。
- 為 SQL Server 2000 版本創(chuàng)建的自定義身份驗(yàn)證擴(kuò)展插件必須進(jìn)行重新編譯。
- 將這些程序集移到新的報(bào)表服務(wù)器和報(bào)表管理器 \bin 文件夾中。在 SQL Server 2008 中,對(duì)于默認(rèn)的 SQL Server 2008 Reporting Services 實(shí)例,報(bào)表服務(wù)器二進(jìn)制文件位于 \Program files\Microsoft SQL Server\MSRS10.MSSQLSERVER\Reporting Services\ReportServer\bin。
- 修改配置文件,以便為自定義組件添加條目。所用程序集的種類不同,這些條目也會(huì)有所不同。有關(guān)在何處放置文件和添加配置條目的說(shuō)明,請(qǐng)參閱以下內(nèi)容:
為報(bào)表服務(wù)器 Web 服務(wù)和報(bào)表管理器配置 URL,并配置與報(bào)表服務(wù)器數(shù)據(jù)庫(kù)的連接。
如果要遷移擴(kuò)展部署,則應(yīng)使所有報(bào)表服務(wù)器節(jié)點(diǎn)脫機(jī)并按照一次遷移一個(gè)服務(wù)器的方式遷移各個(gè)服務(wù)器。一旦遷移了第一個(gè)報(bào)表服務(wù)器并且其成功連接到報(bào)表服務(wù)器數(shù)據(jù)庫(kù),則該報(bào)表服務(wù)器數(shù)據(jù)庫(kù)版本將自動(dòng)升級(jí)到 SQL Server 2008 數(shù)據(jù)庫(kù)版本。
![]() |
---|
如果擴(kuò)展部署中的所有報(bào)表服務(wù)器均聯(lián)機(jī)并且尚未被遷移,則它們可能會(huì)遇到 rsInvalidReportServerDatabase 異常,因?yàn)樗鼈冊(cè)谶B接到升級(jí)的報(bào)表服務(wù)器數(shù)據(jù)庫(kù)之后使用的仍是舊版架構(gòu)。 |
- 啟動(dòng) Reporting Services 配置工具,然后連接到剛安裝的 Reporting Services 實(shí)例。有關(guān)詳細(xì)信息,請(qǐng)參閱如何啟動(dòng) Reporting Services 配置。
- 為報(bào)表服務(wù)器和報(bào)表管理器配置 URL。有關(guān)詳細(xì)信息,請(qǐng)參閱如何配置 URL(Reporting Services 配置)。
- 配置報(bào)表服務(wù)器數(shù)據(jù)庫(kù),并從以前的安裝中選擇現(xiàn)有的報(bào)表服務(wù)器數(shù)據(jù)庫(kù)。成功配置之后,報(bào)表服務(wù)器服務(wù)將重新啟動(dòng),并且一旦將其與報(bào)表服務(wù)器數(shù)據(jù)庫(kù)建立了連接,該數(shù)據(jù)庫(kù)將自動(dòng)升級(jí)到 SQL Server 2008 Reporting Services。有關(guān)如何運(yùn)行“更改服務(wù)器向?qū)?rdquo;(該向?qū)Э捎脕?lái)創(chuàng)建或選擇報(bào)表服務(wù)器數(shù)據(jù)庫(kù))的詳細(xì)信息,請(qǐng)參閱如何創(chuàng)建報(bào)表服務(wù)器數(shù)據(jù)庫(kù)(Reporting Services 配置)。
- 還原加密密鑰。在針對(duì)報(bào)表服務(wù)器數(shù)據(jù)庫(kù)中預(yù)先存在的連接字符串和憑據(jù)啟用可逆加密時(shí),此步驟是必不可少的。有關(guān)詳細(xì)信息,請(qǐng)參閱備份和還原加密密鑰。
- 如果報(bào)表服務(wù)器安裝在新計(jì)算機(jī)上,并且您使用的是 Windows 防火墻,請(qǐng)確保該報(bào)表服務(wù)器偵聽(tīng)的 TCP 端口處于打開(kāi)狀態(tài)。默認(rèn)情況下,此端口為 80。有關(guān)詳細(xì)信息,請(qǐng)參閱如何將防火墻配置為允許報(bào)表服務(wù)器訪問(wèn)。
- 如果報(bào)表服務(wù)器安裝在 Windows Vista 或 Windows Server 2008 上,請(qǐng)創(chuàng)建角色分配并向“受信任的站點(diǎn)”中添加報(bào)表服務(wù)器站點(diǎn)以支持本地管理。有關(guān)詳細(xì)信息,請(qǐng)參閱如何在 Windows Vista 和 Windows Server 2008 上為本地管理配置報(bào)表服務(wù)器。
如果對(duì)先前安裝中的 RSReportServer.config 文件或 RSWebApplication.config 文件進(jìn)行過(guò)修改,則應(yīng)當(dāng)在新的 RSReportServer.config 文件中進(jìn)行同樣的修改。下面的列表概述了修改先前配置文件的某些原因,并提供了一些指向其他信息的鏈接,這些信息介紹如何在 SQL Server 2008 中配置同樣的設(shè)置。
自定義 | 信息 |
---|---|
具有自定義設(shè)置的報(bào)表服務(wù)器電子郵件傳遞 |
|
設(shè)備信息設(shè)置 |
|
遠(yuǎn)程實(shí)例上的報(bào)表管理器 |
在 SQL Server 2008 Reporting Services 中存在一個(gè)服務(wù)組,即 Reporting Services Windows 服務(wù)組??墒褂迷摻M為與 SQL Server 2008 Reporting Services 一起安裝的所有注冊(cè)表項(xiàng)、文件和文件夾創(chuàng)建安全 ACL。此 Windows 組的名稱以 SQLServerReportServerUser$<計(jì)算機(jī)名>$<實(shí)例名> 格式顯示。此組將取代 SQL Server 2005 Reporting Services 中的兩個(gè) Windows 服務(wù)組。如果您已將自定義 ACL 與任一 SQL Server 2005 Reporting Services Windows 組相關(guān)聯(lián),則需要將這些 ACL 應(yīng)用于 SQL Server 2008 Reporting Services 中新報(bào)表服務(wù)器實(shí)例的新組。
- 打開(kāi)瀏覽器,并在 URL 地址中鍵入報(bào)表服務(wù)器虛擬目錄和報(bào)表管理器虛擬目錄,對(duì)這些目錄進(jìn)行測(cè)試。有關(guān)詳細(xì)信息,請(qǐng)參閱如何驗(yàn)證 Reporting Services 安裝。
- 測(cè)試報(bào)表,并驗(yàn)證它們是否包含所需的數(shù)據(jù)。檢查數(shù)據(jù)源信息,查看是否仍指定了數(shù)據(jù)源連接信息。報(bào)表服務(wù)器在處理和呈現(xiàn)報(bào)表時(shí)使用 SQL Server 2008 報(bào)表對(duì)象模型,但是它不將 SQL Server 2000 或 2005 構(gòu)造替換為新的報(bào)表定義語(yǔ)言元素。若要了解有關(guān)如何在 SQL Server 2008 報(bào)表服務(wù)器上運(yùn)行現(xiàn)有報(bào)表的詳細(xì)信息,請(qǐng)參閱升級(jí)報(bào)表。
一旦成功將報(bào)表服務(wù)器遷移到 SQL Server 2008 Reporting Services 實(shí)例,則可能需要執(zhí)行以下步驟以刪除不再需要的程序和文件。
- 如果不再需要早期版本的 Reporting Services,則將其卸載。此步驟不會(huì)刪除下列項(xiàng),但是,如果不再需要這些項(xiàng),則可以手動(dòng)將其刪除:
- 舊的報(bào)表服務(wù)器數(shù)據(jù)庫(kù)
- RsExec 角色
- 報(bào)表服務(wù)器服務(wù)帳戶
- 報(bào)表服務(wù)器 Web 服務(wù)的應(yīng)用程序池
- 報(bào)表管理器和報(bào)表服務(wù)器的虛擬目錄
- 報(bào)表服務(wù)器日志文件
- 舊的報(bào)表服務(wù)器數(shù)據(jù)庫(kù)
- 如果此計(jì)算機(jī)上不再需要 IIS,則將其刪除。
- 刪除 RSActivate.exe(僅限 SQL Server 2000 安裝中)