Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Следующая версия
Предыдущая версия
product:settings:mssql [12.09.2024 11:11] – создано ekaterina.menkhuzinaproduct:settings:mssql [11.09.2025 10:05] (текущий) ekaterina.menkhuzina
Строка 1: Строка 1:
 ====== Настройка базы данных MS SQL ====== ====== Настройка базы данных MS SQL ======
 +Для настройки сервера баз данных необходимо запустить //SQL Server Managment Studio// и выполнить следующие действия:
 +  - В окне «Обозреватель объектов» (//Object Explorer//) правой кнопкой мышки кликнуть на «Базы данных» (//Database//) -> «Восстановить базу данных» (//Restore Database//).  \\  {{ :product:settings:settings_install_1.png }}
 +    - В разделе «Общие» (//General//):
 +      * В поле «В базу данных» (//To database//) ввести название создаваемой из бэкапа базы данных -- ''streamline''.
 +      * В разделе «Источник для восстановления» (//Source for restore//) выбрать «Устройство» (From device: ).
 +      * Выбрать бэкап из папки ''C:\SL_Files\DB_Backup\''.
 +      * В окне «Восстанавливаемые резервные наборы данных» (//Select the backup sets to restore//) выбрать последнюю версию бэкапа (отметить галочкой).
 +    - В разделе «Параметры» (//Options//) (**или «Файлы» (//Files//) для MS SQL Server 2019**), в окне «Восстановить файлы базы данных как» (//Restore the database files as://) в колонке «Восстановить как» (//Restore as//) нужно переписать названия для файлов данных и лога БД -- для файла данных ввести название ''streamline.mdf'', для файла лога ''streamline_log.lgf''.
 +      * Нажать на «ОК».  \\  {{ :product:settings:03.02_backup_properties_options.png }}
 +  - Создать учетную запись //«advanta»//:
 +    * В окне «Обозреватель объектов» (//Object Explorer//) раскрыть «Безопасность» (//Security//), нажать правой кнопкой мышки на «Имена входа» (//Logins//)и выбрать «Создать имя входа» (//New Login//).
 +    * В разделе «Общие» (//General//):
 +      * В поле «Имя входа» (//Login name//) ввести //advanta//.
 +      * Выставить опцию «Проверка подлинности SQL Server» (//SQL Server authentication//).
 +      * Убрать опцию «Требовать использование политики паролей» (//Enforce password policy//).
 +      * Ввести пароль учетной записи (введенный пароль затем понадобится указать на сервере приложения для доступа к базе данных).
 +      * Выставить используемый язык «Язык по умолчанию» (//Default language//) выбрав в выпадающем меню «Русский» (//Russian//).
 +    * Нажать «ОК».
 +  - Открыть созданную учетную запись. Перейти на страницу «Сопоставление пользователей» (User Mapping):
 +    * В окне «Пользователи, сопоставленные с этим именем входа» (User mapped to this login) в столбце «Схема» (Map) установить галочку напротив базы streamline.
 +    * В окне «Членство в роли базы данных для: streamline» (Database role membership for: streamline) выставить права ''db_owner''.<callout type="danger" icon="true" title="ВНИМАНИЕ!">**Схема базы данных** должна оставаться ''dbo''! В противном случае структура базы данных нарушается и последующее обновление системы будет невозможно. \\ ''db_owner'' -- это права доступа пользователя на таблицу в базе данных, а не схема!</callout>
 +    * Нажать «ОК».
 +  - Включить функцию интеграции со средой CLR, для чего выполнить следующие действия:
 +    * в окне Обозреватель объектов (//Object Explorer//) нажать правой кнопкой мыши на базе данных //streamline// и выбрать пункт «Создать запрос» (//New Query//);
 +    * выполнить следующий скрипт (на инсталляционном диске файл с текстом скрипта -- ''sp_configure.sql'' расположен в папке ''SL_Files\DB_Backup\''):<code sql>
 +sp_configure 'show advanced options', 1;
 +GO
 +RECONFIGURE;
 +GO
 +sp_configure 'clr enabled', 1;
 +GO
 +RECONFIGURE;
 +GO
 +</code>
 +  - Выполнить скрипт исключения ошибок взаимоблокировки транзакций (на инсталляционном диске файл с текстом скрипта -- ''READ_COMMITTED_SNAPSHOT.sql'' расположен в папке ''SL_Files\DB_Backup\''):<code sql>
 +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();
 +</code>
 +  - Выполнить скрипт отключения опции принудительной работы по HTTPS:<code sql>Update Core_Settings Set Value = 'False' Where Name = 'USE.SSL'</code><callout type="primary">Скрипт работает только на SQL Server 2008 SP3 c версией 10.50.6000 и выше.</callout>
 +  - Если у вас SQL Server 2017 и выше, выполнить скрипт для корректной работы OLAP-кубов: <code sql>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;
 +
 +</code> <callout type="primary">Выполнять скрипт из-под учётной записи с предопределенной ролью сервера sysadmin или с разрешением CONTROL SERVER.</callout>
 +
 +<callout type="warning" icon="true">Проверьте параметры MS SQL Server, чтобы были разрешены удалённые подключения для учётных записей SQL.</callout>