Використання протоколу shared memory в ms sql server 2018
0. Зміст
1. Включення протоколу «Спільна пам'ять» (Shared Memory) в MS SQL Server


У запустилася оснащенні розкриємо вкладку «Мережева конфігурація SQL Server» (SQL Server Network Configuration), потім виділимо вкладку «Протоколи для <ИмяЭкземпляра> »(Protocols for ...) (екземпляр за замовчуванням називається MSSQLSERVER). У таблиці праворуч побачимо використовувані для даного екземпляра протоколи. Переконаємося, що протокол «Спільна пам'ять» (Shared Memory) має стан «Включено» (Enabled). В іншому випадку необхідно клікнути по цьому рядку правою кнопкою миші і в контекстному меню вибрати «Включити» (Enable), після чого перезапустити екземпляр SQL Server.

Далі переконаємося що на закладках «Клієнтські протоколи» (Client Protocols) налаштувань клієнта «Native Client SQL версії 11.0 (32-розрядної версії)» (SQL Native Client 11.0 Configuration (32bit)) і «Native Client SQL версії 11.0» (SQL Native Client 11.0 Configuration) також включений протокол «Спільна пам'ять» (Shared Memory), і він має порядок - «1», т. е. найвищий пріоритет над іншими протоколами. Якщо це не так, необхідно змінити налаштування до даного стану.

2. Налаштування рядка підключення баз даних в системі «1С: Підприємства»
Як вже говорилося раніше, сервер «1С: Підприємства» повинен бути запущений на тому ж самому комп'ютері, де і запущена служба MS SQL Server. Крім того, формат рядка підключення інформаційних баз до SQL сервера повинен бути заданий у вигляді <ИмяКомпьютера>\<ИмяЭкземпляра> або <ИмяКомпьютера> для примірника за замовчуванням. Для того, щоб перевірити чи змінити це значення необхідно запустити оснастку «Адміністрування серверів 1С: Підприємства» (попередньо повинна бути встановлена). Далі в запустилася оснащенні розкриваємо вкладки <ИмяСервера> - «Кластери» - «Локальний кластер» - «Інформаційні бази» і викликаємо властивості інформаційної бази вибравши відповідний пункт контекстного меню.

У вікні властивостей інформаційної бази переконаємося, що рядок підключення до сервера баз даних задана в правильному форматі або відредагуємо її, якщо це не так.

Потім запустимо клієнт «1С: Підприємство» для даної інформаційної бази, для ініціалізації з'єднання з зазначеним екземпляром SQL сервера.


У запустилася програмі виберемо в меню «Файл» (File) - «Створити трасування ...» (New Trace ...).


Запуститися вікно налаштування властивостей нової трасування. Не змінюючи параметрів, перейдемо на вкладку «Вибір подій» (Events Selection), знімемо позначку з усіх подій крім «ExistingConnection» і натиснемо «Запустити» (Run).

Потім в активному вікні трасування побачимо все підключення до даного екземпляру SQL Server. Серед них і з'єднання з ім'ям 1CV83 Server. що відповідає підключенню сервера «1С: Підприємства». У стовпці TextData побачимо використовуваний для підключення протокол. В даному випадку напис LPC (Local Prpcedure Call) означає використання протоколу Shared Memory, що нам і в загальному то і потрібно.

Подивитися активні сполуки можна також виконавши запит:
Для цього підключимося до поточного екземпляру SQL Server за допомогою програми «SQL Server Management Studio». Далі, у вікні програми кликнемо правою кнопкою миші в браузері об'єктів по рядку з ім'ям сервера і в контекстному меню виберемо «Створити запит» (New Query).

Вставляємо текст запиту в з'явилася справа вікно і натискаємо кнопку «Виконати» (Execute) на панелі завдань. Після чого у вікні «Результати» (Results), розташованому нижче, побачимо результат виконання запиту, а саме всі поточні з'єднання з даними екземпляром SQL Server. Серед них і з'єднання з ім'ям 1CV83 Server і використовуваним протоколом Shared memory.

4. З'єднання за допомогою протоколу «Іменовані канали» (Name pipe)
Для чистоти експерименту спробуємо підключитися до SQL Server за допомогою якого-небудь іншого протоколу, наприклад за допомогою протоколу «Іменовані канали» (Name pipe). Для цього, відповідно, включимо підтримку протоколу іменованих каналів для даного екземпляра SQL Server. Створимо псевдонім примірника, наприклад, з ім'ям TEST1. В налаштуваннях з'єднання інформаційної бази «1С: Підприємства» з сервером баз даних вкажемо ім'я щойно створеного псевдоніма і запустимо клієнт «1С: Підприємства» для даної інформаційної бази.

Запускаємо заново трасування і бачимо, що тепер додаток з ім'ям 1CV83 Server використовує протокол Name Pipes.

Те ж саме побачимо виконавши запит з попереднього пункту.

