运行使用只读数据库的服务器场 (SharePoint Server 2010)

 

适用于: SharePoint Foundation 2010, SharePoint Server 2010

上一次修改主题: 2016-11-30

本文介绍如何运行 Microsoft SharePoint Server 2010 服务器场,在该服务器场中,某些或全部数据库已设置为只读(只读服务器场)。

如果满足以下任一条件,则服务器场将被视为只读服务器场:

  • 所有内容数据库设置为只读。

  • 服务应用程序数据库设置为只读。

    备注

    当 Search Service 应用程序的数据库设置为只读时,该应用程序不运行。

只读服务器场中的功能和用户体验取决于哪些数据库设置为只读。

使用只读内容和服务应用程序数据库的服务器场可能是灾难恢复环境的一部分,也可能是高可用性维护、更新或升级环境的一部分。

本任务中的过程:

  • 为用户准备只读体验

  • 将内容数据库设置为只读

  • 将服务应用程序数据库设置为只读

为用户准备只读体验

如果打算向用户提供访问只读网站或服务器场的权限,则应设置用户能够在此网站上执行哪些操作以及用户界面 (UI) 的差异程度。

使用只读内容数据库的网站

使用设置为只读的内容数据库的网站的用户体验具有以下特征:

  • 不需要写入内容数据库的常见任务完全可用。

  • 需要写入内容数据库的大多数常见任务不可用,原因是已在 UI 中禁用它们,或者不再允许用户应用更改。

  • 需要写入内容数据库的一些常见任务显示为可用,但返回错误。

有关只读网站上的用户体验的详细信息,请参阅只读网站上的用户体验 (SharePoint Server 2010)

使用只读服务应用程序数据库的服务器场

使用设置为只读的服务应用程序数据库的服务器场的用户体验具有以下特征:

  • 不需要写入服务数据库的常见任务完全可用。

  • 需要写入服务数据库的所有常见任务似乎可用,但返回错误。

将内容数据库设置为只读

在将内容数据库设置为只读之前,可能需要确定将哪个内容数据库与特定网站集相关联。

确定将哪个内容数据库与网站集相关联

  1. 验证您是否满足以下最低要求:请参阅 Add-SPShellAdmin

  2. 在“开始”菜单上,单击“所有程序”。

  3. 单击“Microsoft SharePoint 2010 产品”。

  4. 单击“SharePoint 2010 Management Shell”。

  5. 在 Windows PowerShell 命令提示符 (PS C:\>) 处,键入以下命令,然后按 Enter:

    Get-SPContentDatabase -Site <网站 URL>

    -Site 指定要了解其相关内容数据库的网站集。

    此命令返回与此网站相关联的内容数据库。

有关详细信息,请参阅Get-SPContentDatabase

备注

我们建议您在执行命令行管理任务时使用 Windows PowerShell。Stsadm 命令行工具已被弃用,仍然包含该工具是为了支持与之前产品版本的兼容性。

可以使用下面的过程,通过 SQL Server Management Studio 将读/写内容数据库设置为只读。还可以使用 Transact-SQL ALTER DATABASE 语句将内容数据库设置为只读。有关详细信息,请参阅 ALTER DATABASE (Transact-SQL) (https://go.microsoft.com/fwlink/?linkid=148619&clcid=0x804)。

重要

请勿对故障转移环境中已经执行了日志传送或镜像的数据库执行此过程。

将内容数据库设置为只读

  1. 验证您是否拥有以下管理凭据:您必须是每个数据库中的 db_owner 固定数据库角色的成员。

  2. 打开 SQL Server Management Studio。

  3. 右键单击您要更改为只读的内容数据库,然后单击“属性”。

  4. 选择“选项”页,然后在“其他选项”列表中,滚动至“状态”部分。

  5. 在“数据库为只读”行中,单击“False”旁边的箭头,选择“True”,然后单击“确定”。

  6. 对于所有其他内容数据库重复此过程。

    备注

    在将数据库设置为只读后,将停止所有连接(但设置只读标志的连接除外)。设置了只读标志后,将启用其他连接。

如果与只读内容数据库相关联的网站集锁定状态以前为“无”、“禁止添加”或“只读”,则该网站集会自动设置为只读。如果该网站集的锁定状态以前为“禁止访问”,则在数据库锁定状态更改时,它仍然保持“禁止访问”状态。

将服务应用程序数据库设置为只读

可以将任何服务应用程序数据库设置为只读。但是,如果将某些服务应用程序的数据库(包括与 Search 和 Project Server 关联的那些数据库)设置为只读,则这些应用程序将不运行。

将服务应用程序数据库设置为只读

  1. 验证您是否拥有以下管理凭据:您必须是每个数据库中 db_owner 固定数据库角色的成员。

  2. 打开 SQL Server Management Studio。

  3. 右键单击要更改为只读的数据库,然后单击“属性”。

  4. 选择“选项”页,然后在“其他选项”列表中,滚动至“状态”部分。

  5. 在“数据库为只读”行中,单击“False”旁边的箭头,选择“True”,然后单击“确定”。

  6. 根据需要对其他服务应用程序数据库重复此操作。

    备注

    在将数据库设置为只读后,将停止所有连接(但设置只读标志的连接除外)。设置了只读标志后,将启用其他连接。