Настройка базы данных MS SQL

Для настройки сервера баз данных необходимо запустить SQL Server Managment Studio и выполнить следующие действия:

  1. В окне «Обозреватель объектов» (Object Explorer) правой кнопкой мышки кликнуть на «Базы данных» (Database) → «Восстановить базу данных» (Restore Database).
    1. В разделе «Общие» (General):
      • В поле «В базу данных» (To database) ввести название создаваемой из бэкапа базы данных – streamline.
      • В разделе «Источник для восстановления» (Source for restore) выбрать «Устройство» (From device: ).
      • Выбрать бэкап из папки C:\SL_Files\DB_Backup\.
      • В окне «Восстанавливаемые резервные наборы данных» (Select the backup sets to restore) выбрать последнюю версию бэкапа (отметить галочкой).
    2. В разделе «Параметры» (Options) (или «Файлы» (Files) для MS SQL Server 2016), в окне «Восстановить файлы базы данных как» (Restore the database files as:) в колонке «Восстановить как» (Restore as) нужно переписать названия для файлов данных и лога БД – для файла данных ввести название streamline.mdf, для файла лога streamline_log.lgf.
      • Нажать на «ОК».
  2. Создать учетную запись «advanta»:
    • В окне «Обозреватель объектов» (Object Explorer) раскрыть «Безопасность» (Security), нажать правой кнопкой мышки на «Имена входа» (Logins)и выбрать «Создать имя входа» (New Login).
    • В разделе «Общие» (General):
      • В поле «Имя входа» (Login name) ввести advanta.
      • Выставить опцию «Проверка подлинности SQL Server» (SQL Server authentication).
      • Убрать опцию «Требовать использование политики паролей» (Enforce password policy).
      • Ввести пароль учетной записи (введенный пароль затем понадобится указать на сервере приложения для доступа к базе данных).
      • Выставить используемый язык «Язык по умолчанию» (Default language) выбрав в выпадающем меню «Русский» (Russian).
    • Нажать «ОК».
  3. Открыть созданную учетную запись. Перейти на страницу «Сопоставление пользователей» (User Mapping):
    • В окне «Пользователи, сопоставленные с этим именем входа» (User mapped to this login) в столбце «Схема» (Map) установить галочку напротив базы streamline.
    • В окне «Членство в роли базы данных для: streamline» (Database role membership for: streamline) выставить права db_owner.

      ВНИМАНИЕ!

      Схема базы данных должна оставаться dbo! В противном случае структура базы данных нарушается и последующее обновление системы будет невозможно.
      db_owner – это права доступа пользователя на таблицу в базе данных, а не схема!
    • Нажать «ОК».
  4. Включить функцию интеграции со средой CLR, для чего выполнить следующие действия:
    • в окне Обозреватель объектов (Object Explorer) нажать правой кнопкой мыши на базе данных streamline и выбрать пункт «Создать запрос» (New Query);
    • выполнить следующий скрипт (на инсталляционном диске файл с текстом скрипта – sp_configure.sql расположен в папке SL_Files\DB_Backup\):
      sp_configure 'show advanced options', 1;
      GO
      RECONFIGURE;
      GO
      sp_configure 'clr enabled', 1;
      GO
      RECONFIGURE;
      GO
  5. Выполнить скрипт исключения ошибок взаимоблокировки транзакций (на инсталляционном диске файл с текстом скрипта – READ_COMMITTED_SNAPSHOT.sql расположен в папке SL_Files\DB_Backup\):
    SELECT is_read_committed_snapshot_on FROM
    sys.databases WHERE name= DB_NAME();
    GO
     
    DECLARE @cmd nvarchar(200)
    SET @cmd = 'ALTER DATABASE ' + DB_NAME() + ' SET SINGLE_USER WITH ROLLBACK IMMEDIATE;';
    EXEC(@cmd);
    GO
     
    DECLARE @cmd nvarchar(200)
    SET @cmd = 'ALTER DATABASE ' + DB_NAME() + ' SET READ_COMMITTED_SNAPSHOT ON;';
    EXEC(@cmd);
    GO
     
    DECLARE @cmd nvarchar(200)
    SET @cmd = 'ALTER DATABASE ' + DB_NAME() + ' SET MULTI_USER;';
    EXEC(@cmd);
    GO
     
    SELECT is_read_committed_snapshot_on FROM
    sys.databases WHERE name= DB_NAME();
  6. Выполнить скрипт отключения опции принудительной работы по HTTPS:
    UPDATE Core_Settings SET VALUE = 'False' WHERE Name = 'USE.SSL'
    Скрипт работает только на SQL Server 2008 SP3 c версией 10.50.6000 и выше.
  7. Если у вас SQL Server 2017 и выше, выполнить скрипт для корректной работы OLAP-кубов:
    USE [название базы];
    GO
     
    DECLARE @clrName nvarchar(4000);
    DECLARE @asmBin varbinary(MAX);
     
    SELECT @clrName = clr_name FROM sys.assemblies WHERE name = 'StringUtilities'
    SELECT @asmBin = content FROM sys.assembly_files WHERE name = 'StringUtilities'
     
    DECLARE @hash varbinary(64);
     
    SELECT @hash = HASHBYTES('SHA2_512', @asmBin);
     
    EXEC sys.sp_add_trusted_assembly @hash = @hash, @description = @clrName;
    Выполнять скрипт из-под учётной записи с предопределенной ролью сервера sysadmin или с разрешением CONTROL SERVER.
Проверьте параметры MS SQL Server, чтобы были разрешены удалённые подключения для учётных записей SQL.