進入了 Server 2008 的時代了,因緣際會之下,我決定開始換使用 Server 2008,提早讓自己適應,也讓單位的安全性和功能性能夠提升上來,但沒想到這是一場可怕的練習,因為太新了,相關資料真的只有外求。
在 Windows Server 2008 上,允許安裝下列版本的 SQL Server 2005:
- SQL Server 2005 Developer Edition SP2,32 / 64 bit
- SQL Server 2005 Standard Edition SP2,32 / 64 bit
- SQL Server 2005 Enterprise Edition SP2,32 / 64 bit
- SQL Server 2005 Workgroup Edition SP2
- SQL Server 2005 Express Edition with Advanced Services SP2
簡單說,都得是 Service Pack2 (SP2) 的版本,才能正常運作。
安裝上,我們不僅要安裝 SQL Server 2005,我們還要一併安裝所需的報表服務 (Reporting Services),所以我們要先多一些手續,於「伺服器管理員」中新增角色並啟用 ASP.NET 和 IIS:
-
- 依序開啟「開始」→「程式集」→「系統管理工具」→「伺服器管理員」。
- 於「角色」欄中,點按「新增角色」。
- 於「新增角色精靈」視窗中,選擇「網頁伺服器 (IIS)」。
- 再點按「新增所需的功能」按鈕,再按「下一步」。
- 於「選取角色服務」中,選擇:
- 「一般 HTTP 功能」中的:
- 靜態內容
- 預設文件
- 瀏覽目錄
- HTTP 錯誤
- HTTP 重新導向
- 「應用程式開發」中的「ASP.NET」選項。
- 「安全性」中的「Windows 驗證」。
- 「管理工具」下的「IIS 6 管理相容性」,全部勾選:
- IIS Metabase 的相容性
- IIS 6 WMI 相容性
- IIS 6 的指令碼工具
- IIS 6 管理主控台
- 「一般 HTTP 功能」中的:
- 按「下一步」,開始安裝。
注意!若未啟用以上所有功能,報表服務的選項將不會出現在 SQL Server 2005 的安裝功能選項 對話方塊中!
執行 SQL Server 2005 的安裝程式:
- 安裝 SQL Server 元件更新。
- 開始「SQL Server 2005 安裝精靈」。
- 完成「系統組態檢查」。
- 註冊資訊
- 至少勾選安裝「SQL Server Database Services」和「Reporting Services」。
- 按下「進階」按鈕,開啟「Reporting Services」選項,確認其中的「報表管理員」和「共用工具」都已開啟,按下「下一步」開始安裝。
- 選擇「預設的執行個體」。
- 將服務的帳戶,依實際需求設定,我的習慣是以內建的「本機系統」來執行。
- 「驗證模式」選擇。
- 「定序設定」選擇。
- 在「報表伺服器安裝選項」中,建議採用「安裝預設組態」。
- 錯誤回報方式選擇。
- 開始安裝。
- 安裝完成。
- 完成組態設定。
更新 SQL Server 2005 SP2 (官方下載):
有幾項需要注意的,請確認「SQL Server 服務」已經啟動,因為在安裝程式會執行驗證檢查,確認伺服器上已經正常地執行 SQL Server 服務。但若希望避免系統更新後要「重新開機」,則可以在關閉「 驗證模式」對話視窗後,停止「SQL Server 服務」。
- 開啟 Microsoft SQL Server 2005 SP2 的安裝程式。
- 確認有正確偵測到本機正在執行的 SQL 服務。
- 確認驗證的資訊。
- 如之前討論到的,由於目前的 SQL 服務執行中,更新後需要「重新開機」以完成更新。
- 故於「服務」中,停止「SQL Server」和「SQL Server Reporting Services」兩項服務。
- 「正在執行處理序」視窗中,點按「重新整理」按鈕,將不會再有鎖定中的檔案,這樣子可以避免伺服器稍後需要重新開機。
- 點按「安裝」,準備安裝 Service Pack 2。
- 安裝過程中。
- 安裝完成。
- 如果是 Vista 的使用者,再繼續啟用「User Provisioning Tool」工具。
如此我們完成了 SQL Server 2005 SP2 的安裝了,接下是「報表服務 (Reporting Services)」的設定:
- 確認「服務」中的「SQL Server (MSSQLSERVER)」服務已啟動。
- 依序「開始」→「程式集」→「Microsoft SQL Server 2005」→「組態工具」,執行「Reporting Services 組態」。
- 於「報表伺服器安裝執行個體選取範圍」視窗中,選擇正確的伺服器名稱,並按「連接」按鈕。
- 點按左側欄中的「Windows 服務識別」,選擇所需的服務帳戶類型。
- 點按左側欄中的「 Web 服務識別」 ,為「 報表伺服器」與「報表管理員」選擇適當的選項:「ReportServer」或「Classsic NET AppPool」。
接下來,才是技訣的部份,在 Windows Server 2008 環境中,報表伺服器或報表管理員必須使用「網域使用者帳戶下執行的應用程式集區」,才能正常執行:
- 依序「開始」→「執行」,輸入「Inetmgr」,啟用「IIS 管理員」。
- 依序由左側欄中展開「(伺服器名稱)」→「 站台」→「Default Web Site」,以滑鼠右鍵點按「Reports」,選擇「管理應用程式」→「進階設定」。
- 在「進階設定」視窗中,確認「應用程式集區」和上頭的設定相同,按下「確定」按鈕。
- 於 IIS 管理員視窗中,於右側欄點選「基本設定」 。
- 於「編輯應用程式」視窗中,參考一下「實體路徑」,點按「連線身分」。
- 於選擇「特定使用者」。
- 輸入網域的使用者,點按「確定」按鈕。
- 於「編輯應用程式」視窗中,點按「測試設定」,確認連線設定正常,點按「關閉」按鈕。
- 同樣的方式 2 ~ 8,檢視「ReportServer」 內的設定。
- 按步驟五中的實體路徑,於該安裝路徑中 (例 C:\Program Files \Microsoft SQL Server \MSSQL.2 \Reporting Services \ReportServer 中,編輯 Rsreportserver.config:
在 區塊中,找到 NT Authority\NetworkService 編輯為網域登入的帳號。 - 於「伺服器管理員」中,依序開啟「設定」→「本機使用者和群組」→「群組」,雙擊「SQLServer2005ReportingServicesWebServiceUser $ComputerName$ InstanceName 」這群組。
- 將網域的使用者加入該群組中,點按「新增」。
- 確認機碼:「開始」→「執行」,輸入「regedit」,依序展開至相關位置。
- 64位元:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL.2\Setup
- 32位元:HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Microsoft SQL Server\MSSQL.2\Setup
- ApplicationPoolConfigured_RM 和 ApplicationPoolConfigured_RS 設定和上頭步驟五相同。
- ReportManagerIdentityConfigured 和 WebServiceIdentityConfigured 上頭步驟十相同。
此外,因應 Server 2008 的預設最高安全性、最低使用性的限制,我們要啟用指令碼。
- 依序「開始」→「執行」,輸入「Inetmgr」,啟用「IIS 管理員」。
- 依序由左側欄中展開「(伺服器名稱)」→「 站台」→「Default Web Site」→「ReportServer」,雙擊「處理常式對應」。
- 選擇右側欄中的「編輯功能權限」。
- 勾選「指命碼」,但不要選擇「執行」!
好了,終於完成了。
本來天真以為這應該很簡單,沒想到這篇文章,大概花了我三天時間才完成。
第一次真正在 Server 2008 上作業,看來有一段陣痛期要經歷,但這是必要的,也把這經驗分享給各位朋友。
祝好運,祝一切順利。