移动所有数据库 (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 管理控制台管理单元中,停止所有与 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=0x804) 以及如何:还原数据库备份 (SQL Server Management Studio) (https://go.microsoft.com/fwlink/?linkid=183032&clcid=0x804)。
在 SQL Server 中,确保源服务器数据库的所有 SQL Server 登录名、固定服务器角色、固定数据库角色和权限均已在目标服务器上正确配置。有关详细信息,请参阅在新服务器上设置权限。
在 SQL Server 中,将数据库附加到新实例。有关详细信息,请参阅将数据库附加到 SQL Server 的新实例。
使用 SQL Server 连接别名指向新的数据库服务器,然后使用该连接别名更新所有 Web 服务器。连接别名是已定义的可用于连接 SQL Server 实例的备用名称。您必须在服务器场中的所有 Web 服务器和应用程序服务器中配置别名。有关详细信息,请参阅通过设置 SQL Server 连接别名将 Web 应用程序指向新数据库服务器。
备注
建议使用 SQL Server 客户端别名作为针对 SharePoint 环境强化 SQL Server 的一部分。有关详细信息,请参阅针对 SharePoint 环境强化 SQL Server (SharePoint Server 2010)。
重新启动服务。有关详细信息,请参阅重新启动服务器场中的服务。
下面是执行此过程所需的最低权限:
您必须是 SharePoint 组“Farm Administrators”的成员。
在运行 SharePoint 管理中心网站的计算机上,您必须是 Administrators 组的成员。
在移出数据库的数据库服务器上,您必须是以下组的成员:
Administrators 组
db_backupoperator 固定数据库角色
在移入数据库的数据库服务器上,您必须是以下组的成员:
Administrators 组
db_owner 固定数据库角色
在某些环境中,您必须配合数据库管理员来执行移动过程。请务必遵循任何适用的策略和准则来管理数据库。
准备新的数据库服务器
使用针对 SharePoint 环境强化 SQL Server (SharePoint Server 2010) 一文中的过程来配置新数据库服务器。
备注
新数据库服务器必须与现有数据库服务器运行相同版本的 Windows Server 和 Microsoft SQL Server。
关闭任何打开的管理会话
- 如果您已运行 Stsadm 命令行工具,请关闭任何打开的 Windows PowerShell 命令行管理程序窗口,以及任何打开的命令提示符窗口。
停止服务器场
在运行管理中心网站的服务器上,在“服务”管理单元中停止以下服务:
SharePoint 2010 管理
SharePoint 2010 定时服务
SharePoint 2010 跟踪服务
SharePoint 2010 用户代码主机
SharePoint 2010 VSS 编写器服务
SharePoint Foundation Search V4
World Wide Web 发布服务
SharePoint Server Search 14
Web Analytics Data Processing Service
Web Analytics Web Service
备注
最后两个服务是 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 的实例之间传送登录名和密码 (https://go.microsoft.com/fwlink/?linkid=122053&clcid=0x804) 中提供了示例脚本。
有关如何在实例之间传送 SQL Server 元数据的详细信息,请参阅 SQL Server 联机丛书文章当数据库在其他服务器实例上可用时管理元数据 (https://go.microsoft.com/fwlink/?linkid=122055&clcid=0x804)。
将数据库附加到 SQL Server 的新实例
- 在目标数据库服务器上,将数据库附加到新实例。有关详细信息,请参阅如何:附加数据库 (SQL Server Management Studio) (https://go.microsoft.com/fwlink/?linkid=194809&clcid=0x804) 和 sp_attach_db (Transact-SQL) (https://go.microsoft.com/fwlink/?linkid=194810&clcid=0x804)。
通过设置 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 数据库的新服务器的名称,然后单击“确定”。
对每个 Web 和应用程序服务器重复此过程。
(可选)。如果您的环境依赖于 System Center Data Protection Manager (DPM) 2010 或使用 Volume Shadow Copy Service (VSS) 框架的第三方应用程序进行备份和还原,则必须在每个 Web 服务器或应用程序服务器上运行 SQL Server 安装程序来安装 SQL Server 连接组件。有关详细信息,请参阅如何:安装 SQL Server 2008 R2(安装程序) (https://go.microsoft.com/fwlink/?linkid=186119&clcid=0x804)。
重新配置 Web Analytics 数据库位置
1.
> [!NOTE]
> 仅当正在运行 Web Analytics Service 应用程序且已重命名服务器而不使用 SQL Server 连接别名时,才需要执行此过程。
在 SharePoint 管理中心网站上,在“应用程序管理”下单击“管理服务应用程序”。
选择 Web Analytics Service 应用程序,然后单击“属性”。
将出现“编辑 Web Analytics Service 应用程序”向导。
单击“下一步”。
在向导的第二页上,将各个 Web Analytics 数据库的位置更新为新的 SQL Server 实例,然后单击“下一步”。
在管理中心的“系统设置”下,单击“管理服务器上的服务”。
停止并重新启动 Web Analytics Data Processing Service 和 Web Analytics Web Service。
备注
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 管理控制台“服务”管理单元中,启动所有与 SharePoint 和 Internet Information Services (IIS) 有关的服务。其中包括:
SharePoint 2010 管理
SharePoint 2010 定时服务
SharePoint 2010 跟踪服务
SharePoint 2010 用户代码主机
SharePoint 2010 VSS 编写器服务
SharePoint Foundation Search V4
World Wide Web 发布服务
SharePoint Server Search 14
Web Analytics Data Processing Service
Web Analytics Web Service