Исходный код вики Установка SQL Server для работы с 1С:Предприятие 8.3
Редактировал(а) Сергей Коршунов 2022/04/21 02:04
Последние авторы
author | version | line-number | content |
---|---|---|---|
1 | == Установка SQL Server для работы с 1С:Предприятие 8.3 == | ||
2 | |||
3 | [[~[~[image:https://wiki.it-kb.ru/_media/1c/setting-up-microsoft-sql-server-for-1c-enterprise-8-3/pasted/20190417-135029.png~]~]>>url:https://wiki.it-kb.ru/_detail/1c/setting-up-microsoft-sql-server-for-1c-enterprise-8-3/pasted/20190417-135029.png?id=1c%3Asetting-up-microsoft-sql-server-for-1c-enterprise-8-3%3Asql-server-2016-installation]] Мы не будем подробно пошагово рассматривать весь процесс установки **SQL Server**, так как для множества разных задач он будет простым и схожим. Пример развёртывания экземпляра SQL Server в кластерной конфигурации **Windows Failover Cluster** можно найти, например, в статье [[Развёртывание двух-узлового кластера SQL Server 2012 для БД SharePoint Server>>url:https://blog.it-kb.ru/2014/04/15/install-two-tier-farm-sharepoint-server-2013-sp1-on-windows-server-2012-r2-part-1-prepare-ha-clustered-sql-server-2012-sp1-cumulative-update-9-instance/]]. | ||
4 | |||
5 | В этой заметке мы сделаем упор лишь на тех этапах процесса развёртывания нового экземпляра SQL Server, которые могут иметь значение для работы баз данных **1С:Предприятие 8.3**. | ||
6 | |||
7 | |||
8 | На этапе установки **Feature Selection** достаточным минимумом будут компоненты **Database Engine Services**. Если вместе с сервером SQL Server на этом же сервере планируется развёртывание серверной части 1С:Предприятие, то потребуется установить ещё и компоненту **Client Tools Connectivity**. Для локального подключения и возможности локального администрирования SQL Server потребуется установить компоненты **Management Tools**. | ||
9 | |||
10 | Имейте ввиду, что компоненты **Management Tools**, включающие в себя такой инструмент, как **SQL Server Management Studio**, являются опциональными (не нужны для работы 1С) и они отсутствует в установщике начиная с **SQL Server 2016**. При необходимости эти компоненты могут быть установлены отдельно из отдельно загружаемого инсталлятора [[SQL Server Management Studio>>url:https://docs.microsoft.com/en-us/sql/ssms/download-sql-server-management-studio-ssms?view=sql-server-2016]]) | ||
11 | |||
12 | [[~[~[image:https://wiki.it-kb.ru/_media/1c/setting-up-microsoft-sql-server-for-1c-enterprise-8-3/pasted/20190212-145724.png~]~]>>url:https://wiki.it-kb.ru/_detail/1c/setting-up-microsoft-sql-server-for-1c-enterprise-8-3/pasted/20190212-145724.png?id=1c%3Asetting-up-microsoft-sql-server-for-1c-enterprise-8-3%3Asql-server-2016-installation]] | ||
13 | |||
14 | Обратите внимание на то, что входящие в состав **Database Engine Services** компоненты **SQL Server Replication**, **Full-Text and Semantic Extractions**, **Data Quality Services** не требуются для работы 1С:Предприятие и включены на представленном скриншоте только по той причине, что графический инсталлятор **SQL Server 2016** не позволяет выключить данные компоненты в том случае, если включена родительская компонента **Database Engine Services**. | ||
15 | |||
16 | |||
17 | На этапе установки **Server Configuration** на закладке **Server Accounts** в качестве учётных записей, от имени которых будут работать службы SQL Server, в инфраструктурах с доменом **Active Directory**, с точки зрения усиления уровня безопасности, более правильным будет использование учётных записей типа [[Group Managed Service Account>>url:https://wiki.it-kb.ru/microsoft-windows/windows-server-2012-r2/adds/how-to-use-managed-service-accounts-msa-and-group-managed-service-account-gmsa]] (**gMSA**), для которых управление паролями выполняется в автоматическом режиме службой **Key Distribution Service** на контроллерах домена. | ||
18 | |||
19 | [[~[~[image:https://wiki.it-kb.ru/_media/1c/setting-up-microsoft-sql-server-for-1c-enterprise-8-3/pasted/20190212-145748.png~]~]>>url:https://wiki.it-kb.ru/_detail/1c/setting-up-microsoft-sql-server-for-1c-enterprise-8-3/pasted/20190212-145748.png?id=1c%3Asetting-up-microsoft-sql-server-for-1c-enterprise-8-3%3Asql-server-2016-installation]] | ||
20 | |||
21 | Здесь обратите внимание на то, что в инсталляторе **SQL Server 2016** есть опция **Grant Perform Volume Maintenance Task**, которую здесь мы оставили нетронутой, так как фактически мы уже [[выдали такое право ранее>>url:https://wiki.it-kb.ru/1c/setting-up-microsoft-sql-server-for-1c-enterprise-8-3/database-instant-file-initialization]], когда говорили о предоставлении привилегии **SE_MANAGE_VOLUME_NAME** через политику безопасности **Perform volume maintenance tasks**. Замечено, что при включении данной опции, инсталлятор SQL Server 2016 вместо того, чтобы добавить в политику **Perform volume maintenance tasks** указанную нами сервисную учётную запись, от имени которой фактически будет запускаться экземпляр SQL Server, добавляет учётную запись службы (**Virtual Account**) вида NT Service\MSSQL$<Имя экземпляра>. Объяснить природу такого поведения инсталлятора может обсуждение [[Раздача прав сервисным учётным записям при установке SQL Server 2016>>url:https://social.technet.microsoft.com/Forums/ru-RU/6fc6ca5f-6fc9-4611-acf3-655ed9e437c5/1056107210791076107210951072-1087108810721074?forum=sqlru]] | ||
22 | |||
23 | |||
24 | На этапе установки **Server Configuration** на закладке **Collation** рекомендуется выбирать порядок сортировки **Cyrillic_General_CI_AS**. Описание причины такого выбора можно найти, например, здесь: [[gilev.ru - 1С: Значение параметров сортировки MS SQL Server 2008 R2 при установке>>url:http://www.gilev.ru/cyrillic/]] | ||
25 | |||
26 | [[~[~[image:https://wiki.it-kb.ru/_media/1c/setting-up-microsoft-sql-server-for-1c-enterprise-8-3/pasted/20190212-145810.png~]~]>>url:https://wiki.it-kb.ru/_detail/1c/setting-up-microsoft-sql-server-for-1c-enterprise-8-3/pasted/20190212-145810.png?id=1c%3Asetting-up-microsoft-sql-server-for-1c-enterprise-8-3%3Asql-server-2016-installation]] | ||
27 | |||
28 | **Важно.** | ||
29 | В перспективе желательно придерживаться того правила, чтобы порядок сортировки создаваемых в дальнейшем баз данных для 1С не отличался от порядка сортировки самого экземпляра SQL Server, который мы укажем на этапе его развёртывания. Если пренебречь этим правилом, то в дальнейшем мы можем столкнуться с проблемами, описанными, например, в ветке обсуждения [[Cannot resolve the collation conflict between "Latin1_General_CI_AS" and "SQL_Latin1_General_CP1_CI_AS">>url:https://1c-dn.com/forum/forum17/topic690/]] | ||
30 | |||
31 | |||
32 | На этапе установки **Database Engine Configuration** на закладке **Server Configuration** в соответствии с [[1С:ИТС - Настройки Microsoft SQL Server для работы с 1С:Предприятием>>url:https://its.1c.ru/db/metod8dev/content/5904/hdoc]] необходимо выбирать смешанный режим аутентификации – **Mixed Mode**. | ||
33 | |||
34 | Не стоит забывать про администраторов, которым в дальнейшем может потребоваться доступ к устанавливаемому экземпляру SQL Server. То есть, как минимум, в качестве администраторов устанавливаемого экземпляра SQL Server можно назначить встроенную группу администраторов сервера. | ||
35 | |||
36 | [[~[~[image:https://wiki.it-kb.ru/_media/1c/setting-up-microsoft-sql-server-for-1c-enterprise-8-3/pasted/20190212-145839.png~]~]>>url:https://wiki.it-kb.ru/_detail/1c/setting-up-microsoft-sql-server-for-1c-enterprise-8-3/pasted/20190212-145839.png?id=1c%3Asetting-up-microsoft-sql-server-for-1c-enterprise-8-3%3Asql-server-2016-installation]] | ||
37 | |||
38 | |||
39 | На этапе установки **Database Engine Configuration** на закладке **Data Directories** для расположения баз 1С укажем производительный дисковый массив или отдельные дисковые массивы. По возможности желательно определить для размещения файлов БД и логов транзакций отдельные дисковые массивы, учитывая то обстоятельство, что под транзакционные логи требуется более производительный по операциям записи массив. | ||
40 | |||
41 | [[~[~[image:https://wiki.it-kb.ru/_media/1c/setting-up-microsoft-sql-server-for-1c-enterprise-8-3/pasted/20190212-145903.png~]~]>>url:https://wiki.it-kb.ru/_detail/1c/setting-up-microsoft-sql-server-for-1c-enterprise-8-3/pasted/20190212-145903.png?id=1c%3Asetting-up-microsoft-sql-server-for-1c-enterprise-8-3%3Asql-server-2016-installation]] | ||
42 | |||
43 | |||
44 | На этапе установки **Database Engine Configuration** на закладке **TempDB** фалы системной базы **tempdb** также очень желательно размещать на отдельном быстром дисковом томе. В качестве достойного претендента на эту роль будет отдельный массив SSD-дисков или RAM-диск. Один из вариантов настройки RAM-диска, который можно будет использовать в кластерных развёртываниях SQL Server, мы рассмотрели ранее в статье [[Организуем RAM-диск для кластера Windows Server с помощью Linux-IO FC Target>>url:https://blog.it-kb.ru/2018/12/29/how-to-create-ramdisk-for-sql-server-tempdb-in-windows-server-failover-cluster-using-linux-io-lio-fc-target/]]. | ||
45 | |||
46 | В нашем примере помимо основного размещения файлов **tempdb** на том же дисковом массиве, где предполагается размещение пользовательских БД, добавлен ещё один каталог, расположенный на быстром RAM-диске. Этот же каталог указан в качестве расположения для транзакционного лога **tempdb**. | ||
47 | |||
48 | [[~[~[image:https://wiki.it-kb.ru/_media/1c/setting-up-microsoft-sql-server-for-1c-enterprise-8-3/pasted/20190212-145923.png~]~]>>url:https://wiki.it-kb.ru/_detail/1c/setting-up-microsoft-sql-server-for-1c-enterprise-8-3/pasted/20190212-145923.png?id=1c%3Asetting-up-microsoft-sql-server-for-1c-enterprise-8-3%3Asql-server-2016-installation]] | ||
49 | |||
50 | Дополнительную реконфигурацию размещения файлов базы **tempdb** можно будет выполнить и после установки SQL Server. Этому вопросу будет посвящена последующая заметка [[Файлы системной базы данных tempdb>>url:https://wiki.it-kb.ru/1c/setting-up-microsoft-sql-server-for-1c-enterprise-8-3/system-database-tempdb-files-with-ssd-and-ramdisk]]. | ||
51 | |||
52 | **Важно.** | ||
53 | 1С:Предприятие 8.3 в своей работе может очень активно использовать ресурсы системной базы данных tempdb, а недостаточная производительность дисковых томов, на которых расположены файлы tempdb, может привести к существенной деградации общего уровня производительности в конфигурациях 1С и ощутимо ухудшить комфорт пользователей, работающих с 1С. Поэтому очень важно подойти к вопросу планирования производительных дисковых ресурсов под эту системную БД. | ||
54 | |||
55 | |||
56 | Неотъемлемой частью правильного процесса установки **SQL Server** является то, что сразу после завершения развёртывания экземпляра SQL Server желательно выполнить развёртывание последнего **Service Pack** (SP), а затем и последнего **Cumulative Update** (CU) для установленной версии SQL Server |