如何在SharePoint2010中實現大資料存放區(四步完成RBS解決方案)

來源:互聯網
上載者:User

標籤:

第一步、開啟資料庫的FILESTREAM支援

實際環境為Sharepoint2010 和 SQL Server2008 R2;資料庫預設安裝的時候可能沒有開啟FILESTREAM,此時需要我們核實是否已經開啟。開啟SQL組態管理員,如所示

在開啟FILESTREAM之後,在資料庫中執行下列語句

EXEC sp_configure filestream_access_level, 2
RECONFIGURE

第二、配置內容資料庫與檔案系統的映射

use [WSS_Content]
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 [WSS_Content]
if not exists (select groupname from sysfilegroups where
groupname=N‘RBSFilestreamProvider‘) alter database [WSS_Content]
add filegroup RBSFilestreamProvider contains filestream

use [WSS_Content]
alter database [WSS_Content] add file (name = RBSFilestreamFile,
filename = ‘C:\SharePointData\FileData‘) to filegroup RBSFilestreamProvider

其中[WSS_Content]為你sharepoint內容資料庫的名稱,‘C:\SharePointData\FileData’為需要將BLOB檔案儲存體的位置。

第三、安裝RBS提供者

將RBS_x64.msi複製到場中得每個伺服器(如果有多個伺服器),以管理員身份運行CMD,將命令提示行路徑定位到安裝檔案目錄下運行下面代碼。

msiexec /qn /lvx*  rbs_install_log.txt  /i RBS_X64.msi TRUSTSERVERCERTIFICATE=true FILEGROUP=PRIMARY DBNAME="WSS_Content" DBINSTANCE="sp2010" FILESTREAMFILEGROUP=RBSFilestreamProvider FILESTREAMSTORENAME=FilestreamProvider_1

其中 WSS_Content 為內容資料庫名稱 ,sp2010為資料庫執行個體名。

不建議直接運行安裝RBS提供者(RBS_x64.msi),因為如果直接運行此程式,程式會安裝一個30天得執行計畫,因此建議採用上述提示行的方式安裝。

如果只有一個伺服器則安裝好上面的就可以了,如果有多個伺服器,則必須在每個伺服器上均安裝此提供者,不過安裝代碼有所區別,如下:

msiexec /qn /lvx* rbs_install_log.txt /i RBS_X64.msi DBNAME="WSS_Content" DBINSTANCE="sp2010"  DDLOCAL="Client,Docs,Maintainer,ServerScript,FilestreamClient,FilestreamServer"

在安裝完成上述操作後可檢查內容資料庫中是否多出以“mssqlrbs”開頭的表,如果有說明安裝成功,如果沒有則需要將RBS_X64卸載,重新執行上述步驟。

第四、為內容資料庫啟用RBS

啟動sharepoint shell

運行下列代碼:

(1) $cdb = Get-SPContentDatabase "WSS_Content"
擷取到指定的內容資料庫(SPContentDatabase)對象執行個體,綠色所標註的"WSS_Content"需要更換成在你的環境中,實際的內容資料庫名稱。
(2) $rbss = $cdb.RemoteBlobStorageSettings
擷取內容資料庫的RBS設定(SPRemoteBlobStorageSettings)對象執行個體。
(3) $rbss.Installed()
檢查在內容資料庫上是否安裝了RBS,如果需要,更新相應的屬性值。
(4) $rbss.Enable()
在內容資料庫上啟用RBS。
(5) $pvdName = $rbss.GetProviderNames()[0]
擷取第一個註冊到內容資料庫上的RBS Provider的名稱。
(6) $rbss.SetActiveProviderName($pvdName)
為內容資料庫設定要啟用的RBS Provider。

然後,你可以執行"$rbss"來查看它的一些屬性值,如果設定正確,它輸出的內容應該如所示。
如果你啟用RBS FILESTREAM Provider的內容資料庫中,已經儲存了一個網站集合,那麼在你啟用了RBS Provider之後,網站集合裡面的文檔,並不會自動的馬上通過FILESTREAM,轉存到NTFS檔案系統上。只有新增的文檔才會被儲存到NTFS檔案系統上,網站集合裡面之前上傳的文檔,仍然會儲存在內容資料庫裡面。如果你希望現在將那些舊的文檔,統統轉存到我們所指定的NTFS檔案系統中,那麼可以繼續在SharePoint 2010 Management Shell中執行下面這個指令:
(7) $rbss.Migrate()
如果你希望設定一個文檔大小閾值,只有大小超過此閾值的文檔,才通過RBS FILESTREAM Provider儲存到NTFS檔案系統上,而小於此閾值的文檔,仍然儲存在內容資料庫中,那麼可以在SharePoint 2010Management Shell中繼續執行下面的指令(假設閾值是1048000位元組,也就是1M):
(8) $rbss.MinimumBlobStorageSize = 1048000

(9)$rbss.Update()

上述步驟操作成功後,可在文件庫上傳一個超過100KB (如果設定了閾值,則上傳超過閾值的大小)的文檔,然後檢查C:\SharePointData\FileData中是否有新添加的檔案。

如何在SharePoint2010中實現大資料存放區(四步完成RBS解決方案)

相關關鍵詞:
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.