在 SQL Server 实例之间移动内容数据库 (Office SharePoint Server 2007)

您可以在 Microsoft SQL Server 2005 实例之间、从运行 Microsoft Office SharePoint Server 2007 的任何服务器向任何 Office SharePoint Server 2007 服务器或在 Office SharePoint Server 2007 Web 应用程序之间移动内容数据库。

Important 重要说明:

本文仅介绍如何移动内容数据库,并未提供关于移动与 Office SharePoint Server 2007 关联的其他数据库的信息。

Important 重要说明:

如果您断开与内容数据库的连接并重新连接该数据库,请注意,该内容数据库中的内容在下次被爬网时,将会出现完全爬网,即使已请求了增量爬网也是如此。因为完全爬网将会对爬网程序遇到的所有内容进行重新爬网(无论这些内容先前是否已被爬网),所以完全爬网所需的时间明显多于增量爬网。

如果运行的是 Microsoft Office Server 的基础结构更新,则当您使用内置工具还原或重新附加数据库时,将保留每个内容数据库的标识符 (ID)。使用内置工具时的默认更改日志保留行为如下所示:

  • 还原服务器场时,保留所有数据库的更改日志。

  • 重新附加数据库时,保留内容数据库的更改日志。

  • 仅还原内容数据库时,不保留内容数据库的更改日志。

当保留数据库 ID 和更改日志时,搜索将根据爬网规则定义的定期计划继续爬网。当不保留更改日志时,搜索将在下一个预定爬网过程中执行完全爬网。

有关详细信息,请参阅移动内容数据库 (Office SharePoint Server 2007)保护和还原服务器场 (Office SharePoint Server 2007)

如果要还原到不同的服务器场,则必须在还原过程中将数据库访问帐户设置为数据库服务器上 Administrators 组的成员。这是使该帐户能够复制数据库安全设置的必要条件。还原过程完成后可以移除此访问级别。

在 SQL Server 实例之间移动内容数据库

在移动过程中,您将使用 Office SharePoint Server 2007 工具和 SQL Server 2005 工具。您可以使用 SharePoint 管理中心网站或 Stsadm 命令行工具。以下过程介绍了这两个工具的使用步骤。此过程涉及以下阶段:

  1. 通过使用 Office SharePoint Server 2007 工具,从 Office SharePoint Server 2007 Web 应用程序中移除内容数据库。移除内容数据库不会删除该数据库;它只会移除数据库与 Web 应用程序之间的关联。此任务类似于分离 SQL Server 中的数据库,因为数据库的内容保持不变。

    备注

    记录内容数据库的确切名称。如果要从多个 Web 应用程序移动或复制多个内容数据库,请记录与每个 Web 应用程序关联的内容数据库。

  2. 通过使用 SQL Server 2005 工具,从源实例中分离数据库。

  3. 将 .mdf 和 .ldf 文件从源目录复制或移动到目标目录。

  4. 通过使用 SQL Server 2005 工具,将数据库重新附加到目标实例。

  5. 通过使用 Office SharePoint Server 2007 工具,将内容数据库添加到目标 Office SharePoint Server 2007 Web 应用程序。确保使用完全相同的名称重新附加内容数据库。否则 Office SharePoint Server 2007 将创建新数据库。

  6. 通过使用 Office SharePoint Server 2007 工具,对新重新附加的内容数据库执行完全爬网。

Important 重要说明:

若要完成此过程,必须是本地计算机上 Administrators 组的成员。在 SQL Server 2005 中,您至少必须具有以下角色:

运行 SQL Server 2005 或 SQL Server 实例的源服务器上的数据库的 db_owner 固定数据库角色,负责分离数据库。

运行 SQL Server 2005 或 SQL Server 实例的目标服务器上的 dbcreater 固定服务器角色,负责附加数据库。

备注

记录内容数据库的确切名称。如果要从多个 Web 应用程序中移动或复制若干内容数据库,请记录与各 Web 应用程序关联的内容数据库。

使用管理中心在 SQL Server 实例之间移动内容数据库

  1. 在管理中心内“应用程序管理”页上的“SharePoint Web 应用程序管理”部分,单击“内容数据库”。

  2. 在“管理内容数据库”页上,单击您要移动的内容数据库。

    备注

    如果未显示内容数据库,则它可能与另一个 Web 应用程序关联。若要选择另一个 Web 应用程序,请在“Web 应用程序”菜单上单击“更改 Web 应用程序”。

  3. 在“管理内容数据库设置”页的“删除内容数据库”部分,选中“删除内容数据库”复选框,然后单击“确定”。

    备注

    移除内容数据库不会删除该数据库;它只会移除数据库与 Web 应用程序之间的关联。

  4. 对要移动的每个内容数据库重复步骤 2 和 3。

  5. 在 SQL Server 2005 Management Studio 中,打开 SQL Server 的源实例,然后展开“数据库”节点。

  6. 右键单击该内容数据库,指向“任务”,再单击“分离”。对要移动的每个内容数据库重复此步骤。

    备注

    使用此过程只移动内容数据库。不要分离任何其他数据库。

  7. 在 Windows 资源管理器中,浏览至内容数据库的 .mdf 和 .ldf 文件所在的位置。

  8. 为要移动的数据库选择 .mdf 和 .ldf 文件,并将它们复制或移动到目标目录。

  9. 在 SQL Server 2005 Management Studio 中,打开 SQL Server 的源实例。

  10. 右键单击“数据库”节点,指向“任务”,然后单击“附加”。

  11. 在“附加数据库”对话框中,浏览到将 .mdf 和 .ldf 文件转移到的位置,选择要附加的数据库的 .mdf 文件,再单击“确定”。

  12. 对要移动的每个内容数据库重复步骤 10 和 11。

  13. 在管理中心内“应用程序管理”页上的“SharePoint Web 应用程序管理”部分,单击“内容数据库”。

  14. 在“管理内容数据库”页上,单击“添加内容数据库”。

  15. 在“添加内容数据库”页上,验证“Web 应用程序”菜单是否显示了正确的 Web 应用程序。

  16. 在“数据库名称”框中,键入已转移内容数据库的确切名称,然后单击“确定”。

  17. 对要添加的每个数据库重复步骤 15 和 16。确保从“Web 应用程序”菜单中为每个数据库选择正确的 Web 应用程序。

  18. 对每个转移的内容数据库启动完全爬网。有关启动完全爬网的信息,请参阅启动完全爬网 (Office SharePoint Server 2007)

使用 Stsadm 命令行工具在 SQL Server 实例之间移动内容数据库

  1. 在安装 SharePoint 产品和技术的驱动器上,转到 Stsadm 命令行工具所在的以下目录:%COMMONPROGRAMFILES%\Microsoft Shared\Web server extensions\12\Bin。

    Important 重要说明:

    如果已安装包含 Office 服务器基础结构更新 (https://go.microsoft.com/fwlink/?linkid=121886&clcid=0x804) 的软件更新,则不必运行 preparetomove 操作。跳过步骤 2 并继续执行步骤 3。

  2. 键入以下命令,然后按 Enter:

    stsadm -o preparetomove –contentdb <内容数据库名称>

    若要确定数据库名称,请使用 enumcontentdbs 操作。

    有关 preparetomove 操作的详细信息,请参阅 Preparetomove:Stsadm 操作 (Office SharePoint Server)

  3. 键入以下命令,然后按 Enter:

    stsadm -o deletecontentdb -url <URL 名称> -databasename <数据库名称> -[databaseserver <数据库服务器名称>]

    有关 Deletecontentdb 操作的详细信息,请参阅 Deletecontentdb:Stsadm 操作 (Office SharePoint Server)

    备注

    必须针对要移动的每个内容数据库执行此操作。移除内容数据库不会删除该数据库;此操作只会移除数据库与 Web 应用程序之间的关联。

  4. 在 SQL Server 2005 Management Studio 中,打开 SQL Server 的源实例,然后展开“数据库”节点。

  5. 右键单击要分离的内容数据库,指向“任务”,然后单击“分离”。对要移动的每个内容数据库重复此步骤。

    备注

    只能使用此过程来移动内容数据库。不要分离任何其他数据库。

  6. 在 Windows 资源管理器中,浏览至内容数据库的 .mdf 和 .ldf 文件所在的位置。

  7. 选择文件,然后将它们复制或移动到目标目录中。

  8. 在 SQL Server 2005 Management Studio 中,打开 SQL Server 的目标实例。

  9. 右键单击“数据库”节点,指向“任务”,然后单击“附加”。

  10. 在“附加数据库”对话框中,浏览到将 .mdf 和 .ldf 文件转移到的位置,选择要附加的数据库的 .mdf 文件,再单击“确定”。

  11. 对要移动的每个内容数据库重复步骤 8 和 9。

  12. 在安装 SharePoint 产品和技术的驱动器上,切换到以下目录:%COMMONPROGRAMFILES%\Microsoft shared\Web server extensions\12\Bin

  13. 键入以下命令,然后按 Enter:

    stsadm -o addcontentdb -url <URL 名称> -databasename <数据库名称> [-databaseserver <数据库服务器名称>] [-databaseuser <数据库用户名称>] [-databasepassword <数据库密码>] [-sitewarning <网站警告计数>] [-sitemax <网站最大计数>]

    有关 Addcontentdb 操作的详细信息,请参阅 Addcontentdb: Stsadm operation (Windows SharePoint Services)

    备注

    您必须为每个想要移动的内容数据库执行此操作。您可以创建批处理脚本来执行此操作。

  14. 对每个转移的内容数据库启动完全爬网。有关详细信息,请参阅启动完全爬网 (Office SharePoint Server 2007)

另请参见

概念

移动内容数据库 (Office SharePoint Server 2007)
将内容数据库从 Windows Internal Database 或 SQL Server Express Edition 迁移到 SQL Server 的实例 (Office SharePoint Server 2007)