Найти в Дзене

Настройка shared memory в MS SQL Server +1С: Предприятие на одном хосте (компьютере, сервере)

​Настройка shared memory в MS SQL Server 2019 оптимизирует взаимодействие с сервером 1С:Предприятие на одном хосте, снижая задержки за счет обмена данными через оперативную память вместо TCP/IP. Это особенно полезно при совмещенном размещении, где также важно ограничить память SQL и включить блокировку страниц. Ниже приведена пошаговая инструкция для Windows Server с SQL 2019. Определите учетную запись службы SQL Server (по умолчанию NT Service\MSSQLSERVER или доменная). Запустите SQL Server Management Studio (SSMS) как администратор и Диспетчер конфигурации SQL Server (SQL Server Configuration Manager). Рассчитайте max server memory: Общий ОЗУ минус 4 ГБ для ОС минус 1 ГБ + потребление процессов 1С (ragent, rmngr, rphost в пике).​ Запустите gpedit.msc. Перейдите: Конфигурация компьютера → Параметры Windows → Параметры безопасности → Локальные политики → Назначение прав пользователя → Блокировка страниц в памяти. Добавьте учетную запись SQL Server или ее SID (из sys.dm_server_services)
Оглавление

​Настройка shared memory в MS SQL Server 2019 оптимизирует взаимодействие с сервером 1С:Предприятие на одном хосте, снижая задержки за счет обмена данными через оперативную память вместо TCP/IP. Это особенно полезно при совмещенном размещении, где также важно ограничить память SQL и включить блокировку страниц. Ниже приведена пошаговая инструкция для Windows Server с SQL 2019.

Подготовка системы

Определите учетную запись службы SQL Server (по умолчанию NT Service\MSSQLSERVER или доменная). Запустите SQL Server Management Studio (SSMS) как администратор и Диспетчер конфигурации SQL Server (SQL Server Configuration Manager). Рассчитайте max server memory: Общий ОЗУ минус 4 ГБ для ОС минус 1 ГБ + потребление процессов 1С (ragent, rmngr, rphost в пике).​

Включение Lock Pages in Memory

Запустите gpedit.msc. Перейдите: Конфигурация компьютера → Параметры Windows → Параметры безопасности → Локальные политики → Назначение прав пользователя → Блокировка страниц в памяти. Добавьте учетную запись SQL Server или ее SID (из sys.dm_server_services), примените и перезапустите службу SQL.​

Ограничение памяти SQL Server

В SSMS правой кнопкой на сервере → Свойства → Память. Установите Minimum server memory (например, 1-2 ГБ) и Maximum server memory (по расчету, напр. 20 ГБ при 32 ГБ ОЗУ). Примените и перезапустите SQL Server.​

Включение Shared Memory на сервере

Откройте SQL Server Configuration Manager. Разверните SQL Server Network Configuration → Протоколы для MSSQLSERVER → Правой кнопкой на Shared Memory → Включить. Перезапустите службу SQL Server.​

Настройка клиента для 1С

В Configuration Manager перейдите SQL Native Client 11.0 (или версию для 2019) → Клиентские протоколы → Правой кнопкой на Общая память (Shared Memory) → Включить (Да). Удалите Named Pipes из порядка протоколов, оставьте Shared Memory первым. Перезапустите службу и клиент 1С.​

Проверка и схема работы

Проверьте подключение в 1С: строка вида Srvr="localhost:1433;SQLNCLI11";Ref="ИмяБазы"; или без порта для shared memory. Мониторьте sys.dm_os_performance_counters на память. Схема: 1С сервер → Shared Memory протокол → SQL buffer pool (без сетевого стека) → данные в ОЗУ.​

-2