Як зменшити розмір БД на MS SQL Server за допомогою технології FileStream

Якщо у вас використовується Microsoft SQL Server, ви можете істотно скоротити розмір бази даних системи, використовуючи технологію зберігання даних FileStream. Суть даної технології в тому, що великі неструктуровані дані (типу текстових файлів, зображень і т.п.) більше не зберігаються в БД, а переносяться на файлову систему. Даний спосіб зберігання даних дозволить вам, наприклад, використовувати безкоштовну версію Microsoft SQL Server Express Edition для роботи з системою документообігу FossDoc набагато більш тривалий час до моменту вичерпання ліміту на розмір БД - 10Гб (якщо ви його досягнете взагалі).

Як запустити режим FileStream на вашому сервері?

Важливо! FileStream буде працювати при виконанні наступних умов:

  • у вас встановлений Microsoft SQL Server версії 2008 і вище;
  • на SQL Server використовується тільки Windows-авторизація для підключення до БД.

Додатково у вас повинен бути встановлений продукт Microsoft SQL Server Management Studio, який можна завантажити з сайту розробника.

  1. Запустіть додаток Microsoft SQL Server Configuration Manager, який входить до складу установки Microsoft SQL Server, підключіться до сервера і виберіть ваш екземпляр сервера. Виконайте з контекстного меню пункт "Властивості":

SQL Server Configuration Manager

  1. У діалозі властивостей відзначте все три опції на закладці "FILESTREAM", як показано на мал.:

Властивості FILESTREAM служби SQL Server

Натисніть Застосувати.

  1. Запустіть Microsoft SQL Server Management Studio та підключіться до вашого сервера. Створіть слідуючий запит:

EXEC spconfigure filestreamaccess_level, 2

RECONFIGURE

SQL Server Management Studio

Виконайте даний запит.

  1. Відкрийте будь-яким редактором (наприклад "notepad") файл App.config вашого примірника серверу:

"C:\Program Files\FOSS\FossDoc Application Server\Instances**{папка вашого примірника}**\App.config"

Всередині файлу знайдіть рядок з параметром: "AllowSnapshotIsolation", і змініть значення value="false", в результаті повинно бути:

‹add key="Foss.FossDoc.ApplicationServer.DatabaseProvider.MSSQL.Transaction.AllowSnapshotIsolation" value="false" ⁄›"

Також у рядку з параметром "FileStreamEnabled" встановіть значення value="true", в результаті повинно бути:

‹add key="Foss.FossDoc.ApplicationServer.DatabaseProvider.MSSQL.FileStreamEnabled" value="true" ⁄›"

Збережіть зміни.

  1. Перезапустіть службу вашого серверу FossDoc

Служба сервера FossDoc

Що повинно вийти в результаті?

Для того щоб переконатися в тому, що режим FileStream був успішно запущений на вашому сервері, перейдіть в папку MSSQL\DATA в каталозі, де у вас встановлений SQL Server. Наприклад, якщо у вас встановлений SQL Server Express Edition, то за замовчуванням шлях для даної папки: C:\Program Files\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\DATA. За даним шляхом у вас повинна з'явиться папка виду "Ім'я сервера_bin", в якій сервер буде зберігати всі бінарні файли.

Якщо режим FileStream так і не був запущений, дізнатися з якої причини це сталося можна за допомогою log-файлу сервера FossDoc - MYSQL.log. Зверніться на форум техпідтримки, додайте даний файл, і ми відповімо, що необхідно зробити, щоб усунути цю проблему.

Discard
Save
This page has been updated since your last edit. Your draft may contain outdated content. Load Latest Version

On this page

Review Changes ← Back to Content
Повідомлення Статус Space Raised By Last update on