在 SharePoint Server 中设置内容数据库以使用附带 FILESTREAM 的 RBS

 

**上一次修改主题:**2018-03-02

**摘要:**了解如何设置 SharePoint Server 2016 和 SharePoint 2013 内容数据库以使用具有 FILESTREAM 的远程 BLOB 存储 (RBS)。

本文介绍如何设置内容数据库以使用借助了 FILESTREAM 提供程序的远程 BLOB 存储 (RBS)。如果您使用的是第三方提供程序,那么以下说明可能不适用。有关详细信息,请联系提供程序制造商。以下说明假定您已安装 RBS,以用于 SharePoint Server。若要安装和配置 RBS,请参阅在 SharePoint Server 场中安装和配置附带 FILESTREAM 的 RBS

本文内容:

  • 开始之前

  • 设置内容数据库以使用 RBS

开始之前

您必须对所有要设置为使用 RBS 的内容数据库执行此过程。

开始此操作之前,请查看有关先决条件的以下信息:

  • 用于执行此过程的用户帐户是 Web 上的 管理员 组的成员。

  • 用于执行此过程的用户帐户是运行 SQL Server 2014 Service Pack 1 (SP1)、SQL Server 2008 R2 Service Pack 1 (SP1)、SQL Server 2012 或 SQL Server 2014 的计算机上的 SQL Server dbcreatorsecurityadmin 固定服务器角色的成员。

设置内容数据库以使用 RBS

若要设置内容数据库以使用 RBS,必须在 SQL Server 中设置二进制大型对象 (BLOB) 存储,将内容数据库信息添加到前端或应用程序服务器上的 RBS 配置中,然后对 RBS 数据存储进行测试。

为了能够更好地理解这些说明,请在数据库服务器上安装 SQL Server Management Studio。可以在场中的任何前端服务器或应用程序服务器上执行以下过程。

备注

这些说明假设您使用的是 FILESTREAM RBS 提供程序。如果您使用另一个 RBS 提供程序,请参阅该提供程序的说明,以执行这些操作。

设置内容数据库以使用 RBS

  1. 确认要用于执行此过程的用户帐户是 Web 服务器上管理员组的成员,并且是运行 SQL Server 2014 SP1、SQL Server 2008 R2 Service Pack 1 (SP1)、SQL Server 2012 或 SQL Server 2014 的计算机上 SQL Server dbcreatorsecurityadmin 固定服务器角色的成员。

  2. 打开 SQL Server Management Studio。

  3. 在“连接到服务器”对话框中,指定服务器类型、服务器名称,以及对要连接的数据库服务器进行身份验证的方法,然后单击“连接”。

  4. 展开“数据库”。

  5. 右键单击要为其创建 BLOB 存储的内容数据库,然后单击“新建查询”。

  6. 在“查询”窗格中,按照规定的顺序复制并执行以下 SQL 查询。

    use [ContentDbName]
    if not exists (select * from sys.symmetric_keys where name = N'##MS_DatabaseMasterKey##')
    create master key encryption by password = N'Admin Key Password !2#4'
    
    use [ContentDbName]
    if not exists (select groupname from sysfilegroups where groupname=N'RBSFilestreamProvider')
    alter database [ContentDbName] add filegroup RBSFilestreamProvider contains filestream
    
    use [ContentDbName]
    alter database [ContentDbName] add file (name = RBSFilestreamFile, filename = 'c:\RBSStore') to filegroup RBSFilestreamProvider
    

    其中,[ContentDbName] 是内容数据库名称,c:\RBSStore 是将包含 RBS 数据存储的卷\目录。请注意,您只能设置一次 RBS 存储。如果尝试多次设置同一 RBS 存储,将收到错误。

    提示

    为了获得最佳性能以及简化疑难解答,作为一种普通的最佳实践,我们建议您在不包含操作系统、页面文件、数据库数据、日志文件或 tempdb 文件的卷上创建 RBS 数据存储。

  7. 右键单击“开始”,再单击“运行”,并在“运行”文本框中键入 cmd,然后单击“确定”。

  8. 在命令提示符处,复制并粘贴以下命令:

    msiexec /qn /i rbs.msi REMOTEBLOBENABLE=1 FILESTREAMPROVIDERENABLE=1 DBNAME=<ContentDbName> FILESTREAMSTORENAME=FilestreamProvider_1 ADDLOCAL=EnableRBS,FilestreamRunScript DBINSTANCE=<DBInstanceName>>
    

    其中,<ContentDbName> 是内容数据库的名称,<DBInstanceName> 是 SQL Server 实例的名称。此操作应大约在一分钟内完成。

测试 RBS 数据存储

  1. 连接到任何前端或应用程序服务器上的文档库。

  2. 将至少为 100 千字节 (KB) 的文件上载到文档库中。

  3. 在包含 RBS 数据存储的计算机上,单击“开始”,然后单击“计算机”。

  4. 导航到 RBS 数据存储目录。

  5. 找到修改日期最近的文件夹,而不是 $FSLOG 文件夹。打开此文件夹,并找到修改日期最近的文件。验证该文件的大小和内容是否与上载的文件相同。如果不同,请确保已正确安装并启用 RBS。

See also

SharePoint Server 中的 RBS 概述
将内容迁移到 SharePoint Server 的 RBS 或从中迁出内容

Install and configure RBS with SharePoint 2013 and SQL Server 2012