移動 Windows SharePoint Services 資料庫

Bryan Jeffries
Microsoft Corporation

發行日期:2003 年 11 月

摘要

瞭解如何將 Windows SharePoint Server 使用的資料庫移至同一台伺服器的其他磁碟中,或移至另一台執行 Microsoft SQL Server 2000 的伺服器。您不需要熟悉 Microsoft SQL Server 工具就能夠運用此文件。

本頁內容

簡介
關於設定及內容資料庫
尋找資料庫檔案
移動資料庫

簡介

當您使用預設值安裝 Microsoft® Windows® SharePoint™ Services 時,安裝程式會自動安裝並且使用 Microsoft SQL Server™ 2000 Desktop Engine (Windows) (WMSDE),來建立網站的資料庫。以此方式安裝 Windows SharePoint Services 時,根據預設,會將所有檔案 (包括資料庫) 放置在伺服器電腦的 \Program Files 目錄中。

您可能會想要移動支援 Windows SharePoint Services 的資料庫。如果包含 Program Files 目錄的磁碟沒有足夠的磁碟空間可以符合資料庫需求,請將資料庫移至伺服器電腦上的其他磁碟中,或移至另一台執行 SQL Server 2000 的伺服器。如果您想要利用 SQL Server 2000 中功能更強大的資料庫維護工具,則必須將資料庫移至執行 SQL Server 2000 的伺服器。

您應該先備份資料庫,然後才進行移動作業。如需有關備份及還原資料庫和網站的資訊,請參閱《Microsoft Windows SharePoint Services 系統管理員指南》中的<使用 SQL Server 2000 工具備份及還原資料庫>及<備份及還原網站>(英文)。

注意 如果要在伺服器之間移動 Microsoft Windows SharePoint Services 資料庫,您必須是這兩個伺服器的本機系統管理員群組成員,才能夠從伺服器移動資料庫及將資料庫移至伺服器。

關於設定及內容資料庫

Windows SharePoint Services 使用兩個資料庫來儲存所有網站資料,包括文件庫中的文件。設定資料庫包含伺服器的全域設定值,而內容資料庫包含所有的網站內容,如清單項目及文件。每一個伺服器可能會有一個以上內容資料庫,但是只能有一個設定資料庫。在使用預設來安裝 Windows SharePoint Services 時,安裝程式會建立名為 STS_Config 的設定資料庫以及名為 STS_Computer_Name_1 的內容資料庫。

注意 如果要尋找電腦名稱,請在命令提示字元鍵入 echo %computername%

尋找資料庫檔案

每個資料庫 (包含設定資料庫) 都是利用兩個檔案來識別: 副檔案為 .mdf 的資料庫檔案,以及副檔案為 .ldf 的交易記錄檔。 在移動每個資料庫之前,您必須取得資料庫的這兩個檔案路徑。如果您已使用預設來安裝 Windows SharePoint Services,則資料庫檔案會在 \Program Files\ Microsoft SQL Server\MSSQL$SHAREPOINT\Data 目錄中。您可以在這個目錄中找到下列檔案:

  • STS_Config.mdf

  • STS_Config_log.LDF

  • STS_Computer_Name_1.mdf

  • STS_Computer_Name_1_log.LDF

如果預設位置中沒有資料庫檔案,請依照下列程序來取得完整的資料庫檔案名稱。

注意 這項程序會使用 OSQL 命令列公用程式,所以您可以執行 SQL 陳述式、系統程序及指令碼檔案。

尋找資料庫檔案

  1. 開啟 SharePoint 管理中心頁面。

    在 [開始] 功能表中,指向 [所有程式],按一下 [系統管理工具],然後按一下 [SharePoint 管理中心]。

  2. 如果要尋找設定資料庫的名稱,請在 [伺服器設定] (Server Configuration) 區段中,按一下 [為設定資料庫伺服器進行設定] (Set configuration database server)。

  3. 請記下 [為設定資料庫伺服器進行設定] (Set configuration database server) 頁面上 [SQL Server 資料庫名稱] (SQL Server database name) 欄位中的資料庫名稱。

  4. 如果要尋找內容資料庫的名稱,請回到 SharePoint 管理中心頁面的首頁。在 [虛擬伺服器設定] (Virtual Server Configuration) 區段中,按一下 [設定虛擬伺服器設定] (Configure virtual server settings)。

    針對 [虛擬伺服器清單] (Virtual Server List) 頁面中所列出的每個虛擬伺服器,執行下列步驟:

    • 按一下虛擬伺服器名稱。

    • 在 [虛擬伺服器設定] (Virtual Server Settings) 頁面的 [虛擬伺服器管理] (Virtual Server Management) 區段中,按一下 [管理內容資料庫] (Manage content databases)。

      請記下列出的資料庫名稱。

    • 如果還有更多的虛擬伺服器,請回到 [虛擬伺服器清單] (Virtual Server List) 頁面,並且重複步驟 1 及步驟 2。

  5. 啟動 OSQL 公用程式。請在命令提示字元中,輸入:

    osql –E –S %computername%\SharePoint
  6. 若要取得設定資料庫的檔案名稱,請依照這三項步驟,在 OSQL 命令提示字元中輸入下列命令,並且在每命令行後按下 ENTER 鍵:

    USE Configuration_Database_Name
    SELECT filename FROM sysfiles
    GO

    輸入各個命令時,提示會累加值數。請記下所顯示的兩個路徑。

  7. 針對每個內容資料庫,請依照這三項步驟,在 OSQL 命令提示字元中輸入下列命令,並且在每命令行後按下 ENTER 鍵:

    USE Content_Database_Name
    SELECT filename FROM sysfiles
    GO

    輸入各個命令時,提示會累加值數。 針對每個內容資料庫,記下所顯示的兩個路徑。

  8. 按 CTRL+C 結束 OSQL 公用程式。

移動資料庫

使用這一節中的程序,將支援 Windows SharePoint Services 的資料庫移至伺服器電腦上的其他磁碟中,或移至另一台執行 Microsoft SQL Server 2000 的伺服器。

將資料庫移至同一台伺服器的其他硬碟機中

這項程序引導您將每個資料庫設定為離線、卸離資料庫、將資料庫移至同一台伺服器上的其他磁碟、重新附加資料庫以及重新啟動資料庫的整個作業。

將資料庫移至其他硬碟機

  1. 在命令提示字元中輸入下列命令,停止 Web 伺服器:

    iisreset /stop
  2. 在命令提示字元中輸入下列命令,停止 SharePoint 計時器服務:

    net stop sptimer
  3. 在命令提示字元中輸入下列命令,啟動 OSQL 命令列公用程式:

    osql –E –S %computername%\SharePoint
  4. 若要卸離資料庫,請輸入下列命令,並且在每命令行後按下 ENTER 鍵:

    EXEC sp_detach_db 'Database_Name', 'true'
    GO

    輸入各個命令時,提示會累加值數。

    注意 您必須為設定資料庫及各個內容資料庫各別執行一次這個步驟。

  5. 使用 Windows 檔案總管,將每個資料庫移至新位置。移動各個資料庫的資料庫檔 (.mdf) 及交易檔 (.ldf)。

  6. 在執行 OSQL 公用程式的命令視窗中輸入下列命令,使用檔案的新位置來重新附加每個資料庫:

    EXEC sp_attach_db 'Database_Name', 'd:\New_Location\Database_Name.mdf',
    'd:\New_Location\Database_Name_log.LDF'
    GO

    注意 您必須為設定資料庫及各個內容資料庫各別執行一次這些步驟。

  7. 按 CTRL+C 結束 OSQL 公用程式。

  8. 在命令提示字元中輸入下列命令,重新啟動 SharePoint 計時器服務:

    net start sptimer
  9. 在命令提示字元中輸入下列命令,重新啟動 Web 伺服器:

    iisreset /start

將資料庫移至執行 Microsoft SQL Server 2000 的資料庫移伺服器

這項程序引導您將資料庫檔案從預設位置移至其他伺服器、重新附加資料庫以及更新設定資料庫以指向新位置的整個作業。在啟動之前,請選擇或建立網域帳戶,在將 SQL Server 2000 資料庫移至新的伺服器之後,使用該網域帳戶來連線至 SQL Server 2000 資料庫。 如果要保護安全性,請授予這個帳最低使用權限,這個使用權限將支援具有 SQL Server 資料庫的資料庫擁有者 (dbo) 功能。如需詳細資訊,請參閱 Microsoft SQL Server 2000 文件。

注意 在下列程序中,要移出資料庫的伺服器稱為來源伺服器,要移入資料庫的伺服器稱為目的伺服器。

移動資料庫

  1. 在來源伺服器上的命令提示字元之後輸入下列命令,停止 Web 伺服器:

    iisreset /stop
  2. 在來源伺服器上的命令提示字元之後輸入下列命令,停止 SharePoint 計時器服務:

    net stop sptimer
  3. 在來源伺服器上的命令提示字元之後輸入下列命令,停止 WMSDE 資料庫:

    net stop mssql$sharepoint
  4. 使用 Windows 檔案總管,將每個資料庫移至目的伺服器中的新位置。

    注意 您必須為設定資料庫及各個內容資料庫各別執行一次這個步驟。移動各個資料庫的資料庫檔 (.mdf) 及交易檔 (.ldf)。

附加資料庫

  1. 在目的伺服器的 Windows 命令提示字元中輸入下列命令,啟動 OSQL 命令列公用程式:

    osql –E –S %computername%

    注意 如果您在安裝 SQL Server 過程中已指定執行個體名稱,請將指定的執行個體名稱附加至 %computername%,如下所示:

    osql –E –S %computername%\Instance_Name
  2. 在執行 OSQL 公用程式的命令視窗中輸入下列命令,並且在每命令行後按下 ENTER 鍵,使用檔案的新位置來附加每個資料庫:

    EXEC sp_attach_db 'Database_Name', 'd:\New_Location\Database_Name.mdf',
    'd:\New_Location\Database_Name,_log.LDF'
    GO

    注意 您必須為設定資料庫及各個內容資料庫各別執行一次這個步驟。

  3. 按 CTRL+C 結束 OSQL 公用程式。

指派執行資料庫所使用的網域帳戶

  1. 在來源伺服器的工作列上按一下 [開始],指向 [所有程式],再指向 [系統管理工具],然後按一下 [Internet Information Services (IIS) Manager]。

  2. 在 [Internet Information Services (IIS) Manager] 中,展開本機電腦並且展開 [應用程式集區] 資料夾。

    會列出伺服器的所有應用程式集區。 根據預設,應用程式集區 STSAdminAppPool 和 STSAppPool1 與 Windows SharePoint Services 虛擬伺服器相關聯。如果您已建立虛擬伺服器的其他應用程式集區,此處也會列出這些應用程式集區。

  3. 針對與虛擬伺服器相關的應用程式集區,執行下列步驟:

    1. 在應用程式集區上按一下滑鼠右鍵,然後按一下 [內容]。

    2. 在 [識別碼] (Identity) 索引標籤上,按一下 [可設定] (Configurable)。

    3. 在 [使用者名稱] 欄位中,輸入在目的伺服器上執行資料庫所使用的網域帳戶。 所輸入的網域帳戶必須具有 SQL Server 資料庫的資料庫擁有者 (dbo) 使用權限。

    注意 您可以按一下 [預先定義] (Predefined),重設預設的帳戶及密碼。

    1. 在 [密碼] 欄位中,輸入網域帳戶的密碼,並且按一下 [確定]。

  4. 在來源伺服器上,將網域帳戶加入 IIS_WPG 和 STS_WPG 本機群組。

設定 Windows SharePoint Services 中的設定資料庫

  1. 在來源伺服器的 [Internet Information (IIS) Services Manager] 中,展開本機電腦,再展開 [網站],以滑鼠右鍵按一下 [SharePoint Central 管理中心網站],再按 [啟動]。

  2. 開啟 SharePoint 管理中心頁面。

    在 [開始] 功能表中,指向 [所有程式],按一下 [系統管理工具],然後按一下 [SharePoint 管理中心]。

  3. 在 [伺服器設定] (Server Configuration) 區段中,按一下 [為設定資料庫伺服器進行設定] (Set configuration database server)。

  4. 在 [為設定資料庫伺服器進行設定] (Set configuration database server) 頁面上的 [資料庫伺服器] 欄位中,輸入目的伺服器的名稱。

  5. 在 [設定資料庫] (Set Configuration Database) 頁面上,按一下 [連接至現有的設定資料庫] (Connect to existing configuration database),並且按一下 [確定]。

  6. 在 [管理中心] 頁面的 [伺服器設定] (Server Configuration) 區段中,按一下 [設定預設的內容資料庫伺服器] (Set default content database server)。

  7. 在 [設定預設的內容資料庫伺服器] (Set Default Content Database Server) 頁面上的 [資料庫伺服器] (Database server) 欄位中,輸入目的伺服器的名稱,然後按一下 [確定]。

設定 Windows SharePoint Services 中的內容資料庫

  1. 在 [管理中心] 頁面的 [虛擬伺服器設定] (Virtual Server Configuration) 下方,按一下 [設定虛擬伺服器設定] (Configure virtual server settings)。

  2. 按一下含有要移動之資料庫的虛擬伺服器連結。

  3. 在 [虛擬伺服器設定] (Virtual Server Settings) 頁面的 [虛擬伺服器管理] (Virtual Server Management) 下方,按一下 [管理內容資料庫] (Manage content databases)。

  4. 為 [內容資料庫] (Content Databases) 之下列出的各個內容資料庫,執行下列的動作:

    1. 按一下資料庫連結。

    2. 請記下 [管理內容資料庫設定] (Manage Content Database Settings) 頁面上 [SQL Server 資料庫名稱] (SQL Server database name) 欄位中的資料庫名稱。

    3. 請記下 [管理內容資料庫設定] (Manage Content Database Settings) 頁面上 [在警告訊息產生前的網站數目] (Number of sites before a warning message is generated) 和 [這個資料庫可以建立的網站數目上限] (Maximum number of sites that can be created in this database) 欄位中的資料庫容量設定。 如果您需要將資料庫加入目的伺服器,就會需要這些資訊。

    4. 選取 [移除內容資料庫] (Remove content database) 核取方塊,並且按一下 [確定],中斷資料庫與來源伺服器的連線。

  5. 將每個內容資料庫附加至目的伺服器。為 [內容資料庫] (Content Databases) 之下列出的各個內容資料庫,執行下列的動作:

    1. 按一下 [新增內容資料庫] (Add a content database)。

    2. 在 [資料庫名稱] (Database Name) 欄位中輸入內容資料庫的名稱。

    3. 在 [在警告訊息產生前的網站數目] (Number of sites before a warning message is generated) 和 [這個資料庫可以建立的網站數目上限] (Maximum number of sites that can be created in this database) 欄位中,輸入您所儲存的內容資料庫容量設定,並且按一下 [確定]。

  6. 如果您要移動一個以上虛擬伺服器的資料庫,請針對其他每個虛擬伺服器重複步驟 2 到步驟 5。

  7. 在來源伺服器上的命令提示字元之後輸入下列命令,重新啟動 SharePoint 計時器服務:

    net start sptimer
  8. 在來源伺服器上的命令提示字元之後輸入下列命令,重新啟動 Web 伺服器:

    iisreset /start

結論

遵循這份文件描述的步驟過程,您已經瞭解如何在執行 Microsoft Windows SharePoint Services 的伺服器上尋找資料庫,並且將資料庫移至同一台伺服器的其他磁碟中,或移至另一台執行 Microsoft SQL Server 2000 的伺服器。移動資料庫並且重新啟動 IIS 後,請瀏覽網站並且檢視頁面、文件庫及清單,測試新位置中的資料庫。

顯示: