Установка и настройка RBS с помощью FILESTREAM в ферме SharePoint Server
ОБЛАСТЬ ПРИМЕНЕНИЯ:2013 2016 2019 Subscription Edition SharePoint в Microsoft 365
SharePoint Server использует функцию RBS для хранения больших двоичных объектов (BLOB) за пределами базы данных контента. Дополнительные сведения об RBS см. в статье Overview of RBS in SharePoint Server.
Если не указано иное, информация в данной статье касается удаленного хранилища больших двоичных объектов, использующего поставщика FILESTREAM. Чтобы получить указания по использованию другого поставщика, обратитесь к разработчику поставщика.
Совет
В этом решении используется поставщик FILESTREAM RBS, который входит в состав SQL Server 2019, SQL Server 2017, SQL Server 2016, SQL Server 2016 с пакетом обновления 1 (SP1), SQL Server 2014, с пакетом обновления 1 (SP1), с пакетом обновления 2 (SP2) и SQL Server 2008. Чтобы установить и настроить RBS с использованием другого поставщика, воспользуйтесь инструкциями в статье Установка и настройка RBS с помощью стороннего поставщика (SharePoint Server).
Перед началом работы
Потребуется всего один раз установить и настроить в ферме удаленное хранилище больших двоичных объектов с использованием поставщика объектов FILESTREAM. Тем не менее, чтобы включить RBS для отдельных баз данных контента, используя другие поставщики, необходимо настроить RBS для использования этих поставщиков. Дополнительные сведения см. в статье Install and configure RBS with a 3rd party provider for SharePoint Server.
Перед выполнением этой операции ознакомьтесь со следующими сведениями о необходимых компонентах:
Учетная запись, используемая для выполнения действий, описанных в разделе Подготовка хранилища BLOB-объектов для каждой базы данных контента, должна быть участником предопределенной роли базы данных db_owner на каждой базе данных, для которой вы настраиваете RBS.
Учетная запись, под которой выполняется установка клиентской библиотеки с помощью процедуры, описанной в разделе Установка клиентской библиотеки RBS в SQL Server и на всех серверах переднего плана или приложений, должна быть участником группы "Администраторы" на всех компьютерах, на которых устанавливается библиотека.
У учетной записи, под которой активируется RBS в разделе Включение удаленного хранилища больших двоичных объектов (RBS) для каждой базы данных контента, должны быть достаточные разрешения для запуска Microsoft PowerShell.
Включение объекта FILESTREAM на сервере базы данных
По умолчанию компонент FILESTREAM устанавливается при установке SQL Server. Но он не включен. Необходимо включить и настроить FILESTREAM на компьютере под управлением SQL Server, на котором размещены базы данных SharePoint Server. Вам следует:
Включить FILESTREAM для доступа к Transact-SQL.
Настроить FILESTREAM для доступа к потоковому вводу-выводу файлов.
Разрешить удаленным клиентам получать потоковый доступ к данным FILESTREAM, если требуется организовать доступ для удаленных клиентов.
Инструкции по включению FILESTREAM для ввода-вывода файлов представлены в статье Включение и настройка FILESTREAM. Эти параметры нужно настроить только один раз для каждого сервера базы данных, на котором предполагается использовать удаленное хранилище больших двоичных объектов.
Подготовка хранилища BLOB-объектов для каждой базы данных контента
После включения и настройки FILESTREAM подготовьте к работе хранилище больших двоичных объектов в файловой системе, как описано в следующей процедуре. Необходимо подготовить к работе хранилище больших двоичных объектов для каждой базы данных контента, с которой будет использоваться хранилище.
Подготовка к работе хранилища больших двоичных объектов
Убедитесь, что пользовательская учетная запись, посредством которой выполняются эти действия, принадлежит к предопределенной роли базы данных db_owner в каждой базе данных, для которой настраивается удаленное хранилище больших двоичных объектов.
Откройте SQL Server Management Studio.
Подключитесь к экземпляру SQL Server, на котором размещена база данных контента.
Разверните узел Базы данных.
Щелкните базу данных контента, для которой необходимо создать хранилище больших двоичных объектов, и затем щелкните Создать запрос.
Вставьте следующие SQL-запросы в панель Запрос и затем выполните их в указанном порядке. В каждом случае замените [WSS_Content] именем базы данных контента, а c:\BlobStore — томом\каталогом, в котором нужно создать хранилище BLOB-объектов. В ходе подготовки к работе в указанном расположении создается папка. Учтите, что инициализировать хранилище больших двоичных объектов можно только один раз. При попытке повторной инициализации того же хранилища больших двоичных объектов на экран выводится сообщение об ошибке.
Совет
В целях повышения производительности, упрощения диагностики и т. п. рекомендуется создавать хранилище больших двоичных объектов в томе, который не содержит операционной системы, файлов подкачки, данных базы данных, файлов журналов или файла tempdb.
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:\Blobstore') to filegroup RBSFilestreamProvider
Установка клиентской библиотеки RBS в SQL Server и на всех серверах переднего плана или приложений
Клиентскую библиотеку RBS необходимо установить на узле SQL Server и на всех серверах переднего плана или приложений в ферме SharePoint. Такая библиотека устанавливается только один раз на каждом веб-сервере, но RBS настраивается отдельно для каждой связанной базы данных контента. Клиентская библиотека состоит из библиотеки DLL на стороне клиента, связанной с пользовательским приложением, и набора хранимых процедур, установленных в SQL Server.
Предостережение
Не устанавливайте клиентную библиотеку RBS, запустив файл RBS_amd64.msi (или RBS.msi) и запустив мастер установки удаленного хранилища BLOB-объектов SQL. Этот мастер задает некоторые значения по умолчанию, которые не рекомендуется использовать для SharePoint Server.
Установка клиентской библиотеки RBS в SQL Server.
Убедитесь, что учетная запись пользователя, под которой выполняются эти действия, является участником группы "Администраторы" на компьютере, на котором устанавливается библиотека.
На узле SQL Server скачайте правильный клиент RBS для версии SQL Server и используемого уровня SharePoint.
SharePoint Server Subscription Edition поддерживает поставщик FILESTREAM, включенный в SQL Server 2019 и более поздних версий SQL Server.
SharePoint Server 2019 поддерживает поставщик FILESTREAM, включенный в SQL Server 2016 и SQL Server 2017.
SharePoint Server 2016 поддерживает поставщик FILESTREAM, включенный в SQL Server 2014 и SQL Server 2016.
SharePoint 2013 поддерживает поставщики FILESTREAM, которые входят во все версии SQL Server 2008 R2, SQL Server 2012 и SQL Server 2014.
Из пакета дополнительных компонентов нужно скачать только файл RSB.msi, но он должен соответствовать типу процессора на вашем сервере (x86 или x64).
Для SharePoint Server Subscription Edition выберите правильную установку из следующего списка:
Для SharePoint Server 2019 выберите правильную установку из следующего списка:
Пакет дополнительных компонентов для Microsoft SQL Server 2016 с пакетом обновления 1
Пакет дополнительных компонентов Microsoft SQL Server 2016 с пакетом обновления 2 (SP2)
Пакет дополнительных компонентов Microsoft SQL Server 2016 с пакетом обновления 3 (SP3)
Для SharePoint Server 2016 выберите правильный установочный пакет из следующего списка:
Пакет дополнительных компонентов Microsoft SQL Server 2014 с пакетом обновления 2 (SP2)
Пакет дополнительных компонентов для Microsoft SQL Server 2016 с пакетом обновления 1
Для SharePoint 2013 выберите правильный установочный пакет из следующего списка:
Скопируйте и вставьте следующую команду в окно командной строки. Замените WSS_Content именем базы данных, а DBInstanceName — именем экземпляра SQL Server. Эту команду необходимо запустить только один раз, указав имя базы данных и имя экземпляра SQL Server. Выполнение этой операции займет примерно одну минуту.
msiexec /qn /lvx* rbs_install_log.txt /i RBS_amd64.msi TRUSTSERVERCERTIFICATE=true FILEGROUP=PRIMARY DBNAME="WSS_Content" DBINSTANCE="DBInstanceName" FILESTREAMFILEGROUP=RBSFilestreamProvider FILESTREAMSTORENAME=FilestreamProvider_1
Установка клиентской библиотеки RBS на всех серверах приложений и серверах переднего плана SharePoint
Убедитесь, что учетная запись пользователя, под которой выполняются эти действия, является участником группы "Администраторы" на компьютере, на котором устанавливается библиотека.
На любом веб-сервере скачайте правильный клиент RBS в зависимости от используемой версии SQL Server и уровня SharePoint. Выберите правильный установочный пакет из одного из следующих списков.
SharePoint Server Subscription Edition поддерживает поставщик FILESTREAM, включенный в SQL Server 2019 и более поздних версий SQL Server.
SharePoint Server 2019 поддерживает поставщик FILESTREAM, включенный в SQL Server 2016 и SQL Server 2017.
SharePoint Server 2016 поддерживает поставщик FILESTREAM, включенный в SQL Server 2014 и SQL Server 2016.
SharePoint 2013 поддерживает поставщики FILESTREAM, которые входят во все версии SQL Server 2008 R2, SQL Server 2012 и SQL Server 2014.
Вам нужно только скачать файл RSB.msi из пакета дополнительных компонентов, но убедитесь, что вы скачали версию x64.
Для SharePoint Server Subscription Edition выберите правильную установку из следующего списка:
Для SharePoint Server 2019 выберите правильную установку из следующего списка:
Пакет дополнительных компонентов для Microsoft SQL Server 2016 с пакетом обновления 1
Пакет дополнительных компонентов Microsoft SQL Server 2016 с пакетом обновления 2 (SP2)
Пакет дополнительных компонентов Microsoft SQL Server 2016 с пакетом обновления 3 (SP3)
Для SharePoint Server 2016 выберите правильный установочный пакет из следующего списка:
Пакет дополнительных компонентов Microsoft SQL Server 2014 с пакетом обновления 2 (SP2)
Пакет дополнительных компонентов для Microsoft SQL Server 2016 с пакетом обновления 1
Для SharePoint 2013 выберите правильный установочный пакет из следующего списка:
Скопируйте и вставьте следующую команду в окно командной строки. Замените WSS_Content именем базы данных, а DBInstanceName — именем экземпляра SQL Server. Выполнение этой операции займет примерно одну минуту.
msiexec /qn /lvx* rbs_install_log.txt /i RBS_amd64.msi DBNAME="WSS_Content" DBINSTANCE="DBInstanceName" ADDLOCAL=Client,Docs,Maintainer,ServerScript,FilestreamClient,FilestreamServer
Примечание.
При попытке установить удаленное хранилище больших двоичных объектов SQL Server 2012 для дополнительной базы данных в том же экземпляре SQL Server возникнет ошибка. Дополнительные сведения см. в разделе KB2767183.
Для последующих баз данных контента, для которых нужно включить RBS, измените команду
msiexec
примерно так, как показано ниже.msiexec /qn /lvx* rbs_install_log_ContentDbName.txt /i RBS_amd64.msi REMOTEBLOBENABLE=1 FILESTREAMPROVIDERENABLE=1 DBNAME="WSS_Content_2" ADDLOCAL="EnableRBS,FilestreamRunScript" DBINSTANCE="DBInstanceName"
Повторите эту процедуру для всех серверов переднего плана и серверов приложений в ферме SharePoint.
Примечание.
При установке веб-служб Visio на серверах приложений SharePoint Server, на которых не установлен поставщик RBS, при попытке открыть схему Visio с этого сервера возникает ошибка Visio. Чтобы открыть схемы Visio на этом сервере, необходимо установить клиент RBS на серверах SharePoint Server, на которые запущена служба графики Visio.
Чтобы подтвердить установку клиентской библиотеки удаленного хранилища больших двоичных объектов
Файл журнала rbs_install_log.txt создается в одном расположении с файлом RBS_amd64.msi. Откройте файл журнала rbs_install_log.txt с помощью текстового редактора и прокрутите файл до конца. В последних 20 строках файла должна содержаться запись: Product: SQL Remote Blob Storage - Installation completed successfully (Продукт: удаленное хранилище больших двоичных объектов SQL установка успешно выполнена).
На компьютере с пакетом обновления 1 (SP1) или SQL Server 2008 убедитесь, что таблицы RBS были созданы в базе данных контента. В базе данных контента должно быть несколько таблиц с именами, начинающимися на mssqlrbs.
Включение удаленного хранилища больших двоичных объектов (RBS) для каждой базы данных контента
Удаленное хранилище больших двоичных объектов необходимо включить на одном из веб-серверов в ферме SharePoint. Если удаленное хранилище больших двоичных объектов было установлено на сервере в ходе описанной выше процедуры, какой именно сервер будет выбран для этого, совершенно не важно. Эту процедуру необходимо выполнить один раз для каждой базы данных контента.
Примечание.
Включить RBS можно только с помощью Microsoft PowerShell.
Включение RBS с помощью Microsoft PowerShell
Убедитесь, что вы являетесь участником следующих групп:
Предопределенная роль сервера securityadmin для экземпляра SQL Server.
Предопределенная роль базы данных db_owner во всех базах данных, которые должны обновляться.
Группа администраторов для сервера, на котором выполняются командлеты PowerShell.
Запустите командную консоль SharePoint.
В командной строке Microsoft PowerShell введите следующую команду.
$cdb = Get-SPContentDatabase <ContentDatabaseName> $rbss = $cdb.RemoteBlobStorageSettings $rbss.Installed() $rbss.Enable() $rbss.SetActiveProviderName($rbss.GetProviderNames()[0]) $rbss
Где <ContentDatabaseName> — это имя базы данных контента.
Дополнительные сведения см. в статье Get-SPContentDatabase.
Назначение разрешений db_owner для веб-приложения
Важно!
Убедитесь, что веб-приложение, которое получает доступ к базе данных контента, поддерживающей удаленные хранилища больших двоичных объектов, является участником предопределенной роли базы данных db_owner для этой базы данных.
Проверка установки удаленного хранилища больших двоичных объектов
Чтобы убедиться, что система работает правильно, проверьте установку RBS на одном сервере переднего плана в ферме SharePoint.
Проверка удаленного хранилища больших двоичных объектов
На компьютере, где размещается удаленное хранилище больших двоичных объектов, нажмите кнопку Пуск и выберите пункт Компьютер.
Перейдите в каталог удаленного хранилища больших двоичных объектов.
Убедитесь, что папка пуста.
В ферме SharePoint отправьте файл размером не менее 100 КБ в библиотеку документов.
На компьютере, где размещается удаленное хранилище больших двоичных объектов, нажмите кнопку Пуск и выберите пункт Компьютер.
Перейдите в каталог удаленного хранилища больших двоичных объектов.
Перейдите к списку файлов и откройте файл, для которого указана самая поздняя дата изменения. Это должен быть отправленный вами файл.
См. также
Обзор удаленного хранилища BLOB-объектов в SharePoint Server
Принятие решения об использовании удаленного хранилища BLOB-объектов в SharePoint Server
Установка и настройка RBS с использованием SharePoint 2013 и SQL Server 2012
Удаленное хранилище больших двоичных объектов (RBS) (SQL Server)