移動所有資料庫 (SharePoint Server 2010)
適用版本: SQL Server 2005, SQL Server 2008, SQL Server 2012
上次修改主題的時間: 2016-11-30
本文說明如何將所有與 Microsoft SharePoint Server 2010 關聯的資料庫從某部資料庫伺服器移至另一部資料庫伺服器。如果您的資料庫主控在其他伺服器上,此程序可適用於設定資料庫的主控資料庫伺服器。若只要移動內容資料庫,請參閱<移動內容資料庫 (SharePoint Server 2010)>。若只要移動服務應用程式資料庫,請參閱<重新命名或移除服務應用程式資料庫 (SharePoint Server 2010)>。
重要
在資料庫移動期間,使用者將無法使用所有伺服器陣列網站及資產。
下列主控於單一資料庫伺服器上的資料庫將無法使用本文程序移動:
設定資料庫
管理中心內容資料庫
內容資料庫
服務應用程式資料庫
移動所有資料庫
若要將所有資料庫從某部資料庫伺服器移至另一部資料庫伺服器,您必須在 SharePoint Server 2010 及 SQL Server 中執行處理動作。以下摘要列出移動所有資料庫的處理流程,在後述程序中會列出詳細步驟:
準備新資料庫伺服器。如需詳細資訊,請參閱<準備新的資料庫伺服器>。
關閉任何開啟的 Windows PowerShell 管理命令介面視窗及任何開啟的 Stsadm 命令提示字元視窗。如需詳細資訊,請參閱<關閉任何開啟的管理執行階段>。
在 [服務] Microsoft Management Console 嵌入式管理單元中,停止所有與 SharePoint Server 2010 及 Internet Information Services (IIS) 相關的服務。如需詳細資訊,請參閱<停止伺服器陣列>。
在 SQL Server 中,將資料庫從目前的執行個體卸離。如需詳細資訊,請參閱<卸離資料庫>。
使用 Windows 檔案總管,將來源伺服器上與資料庫關聯的 .mdf, .ldf 及 .ndf 檔案複製至或移至目的地伺服器。如需詳細資訊,請參閱<將資料庫檔案移至新伺服器>。
注意
您也可以備份所有資料庫,然後還原至新伺服器。備份並還原所有資料庫的程序並不在本文討論範圍內。如需詳細資訊,請參閱如何:備份資料庫 (SQL Server Management Studio) (https://go.microsoft.com/fwlink/?linkid=179208&clcid=0x404) 及如何:還原資料庫備份 (SQL Server Management Studio) (https://go.microsoft.com/fwlink/?linkid=183032&clcid=0x404)。
在 SQL Server 中,請確定所有來源伺服器上資料庫的 SQL Server 登入資訊、固定伺服器角色、固定資料庫角色及權限,都已在目的地伺服器上正確設定。如需詳細資訊,請參閱<在新伺服器上設定權限.>。
在 SQL Server 中,將資料庫附加至新的執行個體。如需詳細資訊,請參閱<將資料庫附加至新的 SQL Server 執行個體>。
使用 SQL Server 連線別名指向新的資料庫伺服器,然後使用該連線別名更新所有網頁伺服器。所謂連線別名,是個已定義的替代名稱,可用於連線至 SQL Server 執行個體。您必須在伺服器陣列中所有網頁伺服器及應用程式伺服器上設定別名。如需詳細資訊,請參閱<設定 SQL Server 連線別名,將 Web 應用程式指向新的資料庫伺服器>。
注意
建議使用 SQL Server 用戶端別名,以強化 SharePoint 環境中的 SQL Server。如需詳細資訊,請參閱<強化 SharePoint 環境中的 SQL Server (SharePoint Server 2010)>。
重新啟動服務。如需詳細資訊,請參閱<重新啟動伺服器陣列中的服務>。
下列是執行此程序的基本必要權限:
您必須是「SharePoint 伺服器陣列管理員」群組的成員。
在執行 SharePoint 管理中心網站的電腦上,您必須是「管理員」群組的成員。
在進行資料庫移動的來源資料庫伺服器上,您必須是下列身分的成員:
管理員群組
db_backupoperator 固定資料庫角色
在資料庫所移至的目的地資料庫伺服器上,您必須是下列身分的成員:
管理員群組
db_owner 固定資料庫角色
在某些環境中,您必須與資料庫管理員協調移動程序。請務必遵循任何適用於管理資料庫的原則和準則。
準備新的資料庫伺服器
請依照<強化 SharePoint 環境中的 SQL Server (SharePoint Server 2010)>一文中的程序,設定新資料庫伺服器。
注意
新資料庫伺服器所執行的 Windows Server 和 Microsoft SQL Server 版本必須與現有資料庫伺服器相同。
關閉任何開啟的管理執行階段
- 關閉任何開啟的 Windows PowerShell 管理命令介面視窗,如果執行 Stsadm 命令列工具,也請關閉任何開啟的命令提示字元視窗。
停止伺服器陣列
在執行管理中心網站的伺服器上,於 [服務] 嵌入式管理單元中,停止下列服務:
SharePoint 2010 Administration
SharePoint 2010 Timer
SharePoint 2010 Tracing
SharePoint 2010 User Code Host
SharePoint 2010 VSS 編寫器
SharePoint Foundation Search V4
World Wide Web Publishing 服務
SharePoint Server Search 14
Web Analytics 資料處理服務
Web Analytics Web 服務
注意
最後兩個服務屬於 Web Analytics Service 應用程式的一部分。如果執行 Web Analytics Service 應用程式,並選擇重新命名伺服器,就還必須重新設定 Web Analytics 資料庫位置。如需詳細資訊,請參閱<重新設定 Web Analytics 資料庫位置>。
在執行管理中心網站的伺服器上,於命令提示字元下,輸入 iisreset /stop。
卸離資料庫
在 SQL Server Management Studio 中,於原始資料庫伺服器上,將要移動的資料庫從其所在的執行個體加以卸離。如果您執行許多資料庫,可能需要執行 Transact-SQL 指令碼來卸離資料庫。
注意
如果有下列一項情況,就無法卸離資料庫:
-
資料庫正被鏡像。
-
資料庫上有資料庫快照集。
如需詳細資訊,請參閱:
-
將資料庫檔案移至新伺服器
- 使用 Windows 檔案總管找出與每個所移動資料庫關聯的 .mdf, .ldf 及 .ndf 檔案,然後複製至或移至執行 SQL Server 之新電腦上的目的地目錄。
在新伺服器上設定權限
在目的地資料庫伺服器上,開啟 SQL Server Management Studio,將登入資訊及權限從原始執行個體傳送至目的地執行個體。建議您以執行指令碼的方式來傳送權限。知識庫文章 918992:如何在 SQL Server 2005 和 SQL Server 2008 的執行個體之間傳送登入和密碼 (https://go.microsoft.com/fwlink/?linkid=122053&clcid=0x404) 中有提供範例指令碼。
如需在執行個體之間傳送 SQL Server 中繼資料的詳細資訊,請參閱《SQL Server 線上叢書》文章在另一個伺服器執行個體上提供可用的資料庫時,管理中繼資料\ (https://go.microsoft.com/fwlink/?linkid=122055&clcid=0x404)。
將資料庫附加至新的 SQL Server 執行個體
- 在目的地資料庫伺服器上,將資料庫附加至新的執行個體。如需詳細資訊,請參閱如何:附加資料庫 (SQL Server Management Studio) (https://go.microsoft.com/fwlink/?linkid=194809&clcid=0x404) 及 sp_attach_db (Transact-SQL) (https://go.microsoft.com/fwlink/?linkid=194810&clcid=0x404)。
設定 SQL Server 連線別名,將 Web 應用程式指向新的資料庫伺服器
開啟 SQL Server 組態管理員。在 [開始] 功能表上,依序指向 [所有程式]、[Microsoft SQL Server 2008] 和 [組態工具],然後按一下 [SQL Server 組態管理員]。
注意
如果未安裝 SQL Server 組態管理員,則必須執行 SQL Server 安裝程式以安裝組態管理員。
展開 [SQL Native Client 組態],以滑鼠右鍵按一下 [別名],然後按一下 [新增別名]。
在 [別名名稱] 欄位中,輸入原始 SQL Server 執行個體的名稱;在 [通訊協定] 中,確認已選取 [TCP/IP];在 [伺服器] 中,輸入主控 SharePoint Server 2010 資料庫的新伺服器名稱,然後按一下 [確定]。
在每部網頁伺服器及應用程式伺服器上重複此程序。
(選用) 如果您的環境仰賴 System Center Data Protection Manager (DPM) 2010 或是使用磁碟區陰影複製服務 (VSS) 架構的協力廠商應用程式來執行備份及復原,則必須在每一部網頁伺服器及應用程式伺服器上執行 SQL Server 安裝程式,來安裝 SQL Server 連線元件。如需詳細資訊,請參閱如何:安裝 SQL Server 2008 R2 (安裝程式) (https://go.microsoft.com/fwlink/?linkid=186119&clcid=0x404)。
重新設定 Web Analytics 資料庫位置
1.
> [!NOTE]
> 如果您執行的是 Web Analytics Service 應用程式,且如果您已經重新命名伺服器,而非使用 SQL Server 連線別名,則才需執行此程序。
在 SharePoint 管理中心網站上,按一下 \[應用程式管理\] 下的 \[管理服務應用程式\]。
選取 Web Analytics Service 應用程式,然後按一下 [內容]。
隨即出現 [編輯 Web Analytics Service 應用程式] 精靈。
按 [下一步]。
在此精靈的第二個頁面中,將每個 Web Analytics 資料庫位置更新為新的 SQL Server 執行個體,然後按 [下一步]。
在管理中心中,按一下 [系統設定] 下的 [管理伺服器上的服務]。
停止 Web Analytics 資料處理服務及 Web Analytics Web 服務,然後再重新啟動。
注意
SharePoint Web Analytics 功能需仰賴 SQL Server Service Broker 才能運作。SQL Server Service Broker 無法以手動方式啟動。SharePoint 計時器工作每天會執行一次,以確保每個必要資料庫上的 SQL Server Service Broker 處於啟用狀態。
移動資料庫之後,應手動執行狀況規則「Web Analytics: 確認 Web Analytics 臨時資料庫已啟用 SQL Server Service Broker」。若要手動執行此狀況規則,請遵循下列步驟:
在管理中心按一下 [監視]。
在 [狀況分析器] 區段中,按一下 [檢閱規則定義]。
隨即顯示 [所有規則] 頁面。
在 [類別: 設定] 下,按一下狀況規則 [Web Analytics: 確認 Web Analytics 臨時資料庫已啟用 SQL Server Service Broker]。
隨即開啟 [狀況分析規則定義] 對話方塊。
注意
為查看此狀況規則,您可能需要按一下 [所有規則] 頁面底端的向右箭按鈕。
在 [狀況分析規則定義] 對話方塊的功能區上,按一下 [立刻執行]。
重新啟動伺服器陣列中的服務
在執行管理中心網站的伺服器上,於命令提示字元下,輸入 iisreset /start。
在 Microsoft Management Console [服務] 嵌入式管理單元中,啟動所有與 SharePoint 及 Internet Information Services (IIS) 相關的服務。這包括下列服務:
SharePoint 2010 Administration
SharePoint 2010 Timer
SharePoint 2010 Tracing
SharePoint 2010 User Code Host
SharePoint 2010 VSS 編寫器
SharePoint Foundation Search V4
World Wide Web Publishing 服務
SharePoint Server Search 14
Web Analytics 資料處理服務
Web Analytics Web 服務