zoukankan      html  css  js  c++  java
  • sharepoint 2010中启用RBS及所遇问题

    首先,介绍下环境

    机器名 作用
    RBS3 域控制器+sql server 2008 r2
    RBS2 sharepoint 2010 前端
    RBS1 sharepoint 2010 管理中心
    web应用程序 网站集 内容数据库 是否启用RBS
    sharepoint - 80 http://rbs1 WSS_Content
    http://rbs1/sites/newOne WSS_Content_newOne

                                                 

                                     
                                      

    一.在数据库服务器上启用FileStream

      1.按照如下路径打开SQL Server配置管理器

      开始->所有程序->Microsoft SQL Server 2008 R2->配置工具->SQL Server 配置管理器

      2.右键单击“SQL Server 服务”->属性,切换到FILESTREAM 标签,将该属性页设置成如图所示的情景

    点击“确定”后重启SQL Server 服务.

    二。为每个需要启用RBS的内容数据库设置BLOB存储

         这里只需要给WSS_Content_newOne启用RBS。

        打开SQL Server Management Studio,新建查询,按顺序输入并执行以下脚本,实际应用时把下文中的WSS_Content_newOne替换成实际的内容数据库

    1.  

    EXEC sp_configure filestream_access_level, 2
    RECONFIGURE

     2.

    use [WSS_Content_newOne]
    if not exists 
    (select * from sys.symmetric_keys 
    where name = N'##MS_DatabaseMasterKey##')
    create master key encryption by password = N'p@ssw0rd'

    3.

    use [WSS_Content_newOne]
    if not exists 
    (select groupname from sysfilegroups 
    where groupname=N'RBSFilestreamProvider')
    alter database [WSS_Content_newOne]
    add filegroup RBSFilestreamProvider contains filestream

    4.

    use [WSS_Content_newOne] 
    alter database [WSS_Content_newOne]
     add file (name = RBSFilestreamFile, filename = 
    'c:Blobstore') 
    to filegroup RBSFilestreamProvider

    三。在每台web服务器上安装RBS客户端。官网提供的RBS安装程序无效,我用这个版本的RBS.将RBS安装文件拷到web前端服务器和管理中心服务器的c盘

    1.在管理中心服务器用管理员身份运行命令提示行,输入如下命令,(将WSS_ConentnewOne替换成实际的内容数据库,rbs3替换成实际的数据库实例)

    msiexec /qn /lvx* c:
    bs_install_log.txt /i c:RBS.msi TRUSTSERVERCERTIFICATE=true FILEGROUP=PRIMARY DBNAME="WSS_Content_newOne" DBINSTANCE="rbs3" FILESTREAMFILEGROUP=RBSFilestreamProvider  FILESTREAMSTORENAME=FilestreamProvider_1

    注意c盘下的日志文件(rbs_install_log.txt)大小如果不在增大了,说明已经安装完毕。打开这个日志文件,在最后的20行,如果有“产品: SQL 远程 Blob 存储 – 已成功完成安装”等字样,说明安装成功。

    2.在web前端等其他sharepoint服务器场的服务器重复执行以下命令(注意上下两条命令是不同的哦,将WSS_ConentnewOne替换成实际的内容数据库,rbs3替换成实际的数据库实例)

    msiexec /qn /lvx* c:
    bs_install_log.txt /i c:RBS.msi DBNAME="WSS_Content_newOne" DBINSTANCE="rbs3" ADDLOCAL=Client,Docs,Maintainer,ServerScript,FilestreamClient,FilestreamServer

    四。为每个内容数据库启用RBS(注意替换内容数据库名称哦)

    $cdb = Get-SPContentDatabase "WSS_Content_newOne"
    $rbss = $cdb.RemoteBlobStorageSettings
    $rbss.Installed()
    $rbss.Enable()
    $rbss.SetActiveProviderName($rbss.GetProviderNames()[0])
    $rbss.Migrate()
    $rbss
    View Code

    五。验证
        上传一个1M左右的图片后,看看数据库服务器的c:Blobstore目录下的某个目录中是否有新文件,可以用图片编辑工具打开的

    六。疑问

       我目前的环境(如上)是一个web程序下有多个网站集,每个网站集都对应一个内容数据库。我并不是把所有的内容数据库都启用RBS,我只给其中一个内容数据库启用RBS。

    在启用RBS之前http://rbs1/sites/newOne和http://rbs2/sites/newOne都可以访问,但是在给WSS_Content_newOne启用了RBS之后,只有http://rbs1/sites/newOne能够访问,而http://rbs2/sites/newOne总是提示该页无法显示。如果一个web应用程序只用一个内容数据库的话,则不会出现此问题。该问题让我头疼不已,目前还没有解决。如有遇到相同问题,并且完美解决的大神,还望赐教啊!

  • 相关阅读:
    TCP定时器 之 重传/延迟ACK/保活 定时器初始化
    指针03-指针和字符串
    指针02
    指针01
    switch语句分析
    结构体分析
    参数、返回值、局部变量、数组分析
    多维数组分析
    循环语句分析
    if语句分析
  • 原文地址:https://www.cnblogs.com/Percy/p/4500902.html
Copyright © 2011-2022 走看看