MS SQL Server 2012 под клиент-серверную 1С 8.3: от дистрибутива до первой базы
Содержание
Чтобы установить SQL Server
2012 для 1С, нужны всего три решения в мастере. Компонент — Database Engine Services плюс средства управления. Сортировка — Cyrillic_General_CI_AS. Проверка подлинности — смешанная, с паролем для sa. Дальше остаётся включить TCP/IP, завести логин для сервера 1С и создать базу через консоль кластера.
Ошибка на любом из этих шагов всплывает позже. База не создаётся, клиенты не видят сервер, журнал транзакций съедает диск. Ниже порядок, при котором Microsoft SQL Server 2012 и сервер 1С:Предприятия 8.3 заработают с первого раза.
Подготовка сервера перед установкой SQL Server 2012
SQL Server 2012 — старая версия. Основная поддержка Microsoft закончилась в 2017 году, расширенная — в июле 2022-го. Платформа 1С 8.3 с ней по-прежнему работает, но для нового сервера разумнее брать более свежую СУБД. Ставить 2012 имеет смысл, когда она уже куплена или этого требует действующая инфраструктура.
Что проверить заранее
- 🖥️ ОС. Для Windows Server 2016 и новее берите дистрибутив с последним пакетом обновлений (SP4) или ставьте SP4 сразу после установки. Без пакетов обновлений мастер на новых ОС выдаёт предупреждения о совместимости.
- 🧩 .NET Framework 3.5. На Windows Server 2016 его нет по умолчанию. Включите заранее:
Диспетчер серверов → Управление → Добавить роли и компоненты → Компоненты → Функции .NET Framework 3.5. Может понадобиться указать путь к папкеsources\sxsс установочного диска ОС. - 💾 Диски. Данные, журналы транзакций и
tempdbлучше разнести по разным томам. Хотя бы журнал — отдельно от данных. - 🔑 Редакция. Express бесплатна, но ограничена.
- 👤 Права. Устанавливайте под локальным администратором.
Какую редакцию выбрать
| Редакция | Ограничения | Когда подходит |
|---|---|---|
| Express | база до 10 ГБ, до 1 ГБ памяти на буферный пул, 1 процессор (до 4 ядер) | тестовый стенд, 2–3 пользователя |
| Standard | до 64 ГБ памяти, до 16 ядер | типичный офис на 10–100 пользователей |
| Enterprise | без значимых ограничений | крупные базы и высокая нагрузка |
Лимит 10 ГБ у Express касается одного файла данных базы. Бухгалтерия за 3–4 года активной работы его легко перерастает.
Лицензия на SQL Server покупается отдельно от лицензий 1С. Клиентская лицензия 1С не даёт права пользоваться Standard или Enterprise.
Мастер установки: какие компоненты выбрать
Запустите setup.exe с дистрибутива. Откроется SQL Server Installation Center.
- Слева выберите
Installation, справа —New SQL Server stand-alone installation or add features to an existing installation. - Пройдите проверку правил установки. Предупреждения про брандмауэр пока можно пропустить — порт откроем позже.
- Введите ключ продукта или выберите бесплатную редакцию.
- Примите лицензионное соглашение. Разрешите мастеру скачать обновления, если сервер видит интернет.
- На шаге
Setup RoleвыберитеSQL Server Feature Installation.
Набор компонентов для 1С
На экране Feature Selection отметьте:
- ✅
Database Engine Services— сам движок СУБД. Без него ничего не заработает. - ✅
Management Tools - BasicиManagement Tools - Complete— среда SQL Server Management Studio. - ✅
Client Tools Connectivity— клиентские библиотеки.
Не нужны для 1С: Analysis Services, Reporting Services, Full-Text and Semantic Extractions for Search, Integration Services. Полнотекстовый поиск 1С ведёт своими средствами, а не через SQL Server.
В нижней части экрана можно поменять каталог установки программы. Его оставляют на системном диске — файлы баз настраиваются отдельно.
Экземпляр, учётные записи служб и сортировка
Экземпляр
На шаге Instance Configuration выберите Default instance. Имя будет MSSQLSERVER, а в 1С сервер СУБД указывают просто именем компьютера.
Именованный экземпляр (Named instance) нужен, если на машине уже стоит другой SQL Server. Тогда в 1С пишут ИМЯСЕРВЕРА\ИМЯЭКЗЕМПЛЯРА, а для подключения по сети понадобится служба SQL Server Browser.
Учётные записи служб
На вкладке Service Accounts для SQL Server Database Engine и SQL Server Agent оставьте предложенные виртуальные учётные записи или укажите доменную служебную. Тип запуска агента поставьте Automatic — он выполняет планы обслуживания и резервного копирования.
Сортировка — шаг, который нельзя пропустить
Перейдите на вкладку Collation и нажмите Customize. Выберите Windows collation designator and sort order, в списке — Cyrillic_General, отметьте Accent-sensitive. Получится Cyrillic_General_CI_AS.
На русской Windows она обычно стоит по умолчанию. На английской ОС мастер предложит SQL_Latin1_General_CP1_CI_AS.
Сменить сортировку экземпляра после установки можно только пересборкой системных баз — проверьте её до нажатия «Next».
Режим проверки подлинности и пользователь sa
Смешанный режим
На шаге Database Engine Configuration, вкладка Server Configuration:
- Выберите
Mixed Mode (SQL Server authentication and Windows authentication). - Задайте и подтвердите пароль для встроенного пользователя
sa. Мастер требует сложный пароль: буквы разных регистров, цифры, спецсимволы. - Нажмите
Add Current User— текущий администратор Windows получит полные права на экземпляр.
Смешанный режим нужен потому, что сервер 1С подключается к СУБД по логину и паролю SQL Server. Только с Windows-проверкой придётся запускать службу 1С под доменной учёткой с правами в SQL — так тоже можно, но настраивать дольше.
Каталоги данных
На вкладке Data Directories укажите отдельные пути:
| Поле | Что указать |
|---|---|
User database directory | том для файлов данных, например D:\SQLData |
User database log directory | отдельный том для журналов, например E:\SQLLog |
Temp DB directory | быстрый диск, лучше SSD |
Backup directory | том, где будут лежать резервные копии |
Новые базы 1С будут создаваться именно в этих каталогах. Переносить их потом придётся вручную через отсоединение и присоединение.
Дальше мастер покажет сводку. Нажмите Install и дождитесь окна Complete, где у всех компонентов статус Succeeded.
Отдельный логин для сервера 1С и его права
Давать серверу 1С пароль sa — плохая практика. Пароль sa знает каждый, кто настраивал базу, а меняют его редко. Заведите отдельный логин.
Создание логина в Management Studio
- Откройте
SQL Server Management Studio, подключитесь к серверу. - В обозревателе объектов разверните
Security → Logins, правой кнопкой —New Login. - Укажите имя, например
usr1c, выберитеSQL Server authentication, задайте пароль. - Снимите флажок
User must change password at next login— сервер 1С не умеет менять пароль сам. - На странице
Server Rolesотметьтеdbcreator. - Нажмите
OK.
То же самое одной командой:
CREATE LOGIN usr1c WITH PASSWORD = 'Сложный_Пароль_2012!',
CHECK_POLICY = ON, CHECK_EXPIRATION = OFF;
ALTER SERVER ROLE dbcreator ADD MEMBER usr1c;
Роль dbcreator позволяет 1С создать базу. Создатель становится её владельцем и получает все права внутри неё. Если база уже есть, логину достаточно роли db_owner в этой базе — её назначают в User Mapping свойств логина.
CHECK_EXPIRATION = OFF отключает срок действия пароля. Иначе через 42 дня (по умолчанию в политике Windows) сервер 1С перестанет подключаться к базе, и все пользователи разом увидят ошибку.
Настройки экземпляра, которые знает практик
Мастер SQL Server 2012 оставляет пару параметров, которые для сервера 1С лучше поменять сразу.
- 🧠 Ограничение памяти. По умолчанию SQL Server забирает почти всю оперативную память. Если на этой же машине работает сервер 1С, ему не хватит. В свойствах сервера, страница
Memory, задайтеMaximum server memory: например, при 32 ГБ оставьте SQL примерно 22–24 ГБ. - 📜 Модель восстановления. Новые базы наследуют её от системной базы
model, и там часто стоитFull. Без регулярных резервных копий журнала файл.ldfрастёт до заполнения диска. Если журнал не бэкапите, поставьте вmodelмодельSimpleдо создания баз 1С. - ⚡ Мгновенная инициализация файлов. В SQL Server 2012 нет флажка в мастере. Добавьте учётную запись службы SQL в политику
Выполнение задач по обслуживанию томов(secpol.msc → Локальные политики → Назначение прав пользователя) и перезапустите службу. Рост файлов данных станет быстрым.
-- модель восстановления для будущих баз
ALTER DATABASE model SET RECOVERY SIMPLE;
-- ограничение памяти, значение в мегабайтах
EXEC sp_configure 'show advanced options', 1; RECONFIGURE;
EXEC sp_configure 'max server memory (MB)', 22528; RECONFIGURE;
Сетевой протокол TCP/IP и брандмауэр
Если сервер 1С и SQL Server стоят на разных машинах, без этого шага подключения не будет. После установки протокол TCP/IP часто выключен.
Включение протокола
- Откройте
SQL Server Configuration Manager. - Разверните
SQL Server Network Configuration → Protocols for MSSQLSERVER. - Правой кнопкой по
TCP/IP—Enable. - В свойствах
TCP/IP, вкладкаIP Addresses, разделIPAll: для экземпляра по умолчанию вTCP Portдолжно стоять1433. - Перезапустите службу
SQL Server (MSSQLSERVER)в разделеSQL Server Services.
Перезапуск службы SQL Server обрывает все подключения к базам. Если на сервере уже работают пользователи 1С, делайте это вне рабочего времени.
Порты в брандмауэре
| Что открыть | Порт | Когда |
|---|---|---|
| Движок SQL Server | TCP 1433 | всегда при подключении по сети |
| SQL Server Browser | UDP 1434 | только для именованного экземпляра |
Правило для порта 1433 создаётся одной командой из командной строки администратора:
netsh advfirewall firewall add rule name="SQL Server 1433" dir=in action=allow protocol=TCP localport=1433
Если сервер 1С стоит на отдельной машине, установите на неё клиентскую библиотеку SQL Server Native Client из пакета дополнительных компонентов SQL Server 2012 (Feature Pack). Без неё сервер 1С не найдёт поставщика для подключения.
Создание информационной базы 1С на SQL Server
База создаётся со стороны 1С: платформа сама сделает базу в SQL Server и таблицы. Создавать пустую базу в Management Studio заранее не нужно.
Через консоль администрирования серверов 1С
- Откройте
Администрирование серверов 1С Предприятия. - Разверните сервер →
Кластеры→ ваш кластер →Информационные базы. - Правой кнопкой —
Создать→Информационная база. - Заполните поля по таблице ниже и нажмите
OK.
| Поле | Значение |
|---|---|
| Имя | имя базы в кластере, например buh |
| Сервер баз данных | имя машины с SQL Server (или ИМЯ\ЭКЗЕМПЛЯР) |
| Тип СУБД | MS SQL Server |
| База данных | имя базы в SQL, обычно совпадает с именем в кластере |
| Пользователь сервера БД | usr1c |
| Пароль | пароль этого логина |
| Смещение дат | 2000 |
| Создать базу данных в случае ее отсутствия | ✅ |
Смещение дат 2000 — стандартный выбор для MS SQL Server: тип datetime хранит даты только с 1753 года, а смещение сдвигает даты 1С в этот диапазон. Задайте его сразу, при создании базы.
Через окно запуска 1С
То же можно сделать без консоли: Добавить → Создание новой информационной базы → На сервере 1С:Предприятия. Поля те же, плюс Кластер серверов 1С:Предприятия — имя машины, где работает служба 1С.
После создания база пустая. Загрузите в неё конфигурацию или выгрузку .dt через Конфигуратор: Администрирование → Загрузить информационную базу.
Ошибки подключения и вопросы после установки
Ошибки, которые встречаются чаще других
Частые вопросы
Можно ли ставить SQL Server и сервер 1С на одну машину?
Подойдёт ли бесплатная SQL Server 2012 Express?
Нужно ли покупать отдельную лицензию 1С для работы с SQL Server?
Как перенести файловую базу 1С на SQL Server?
.dt через Конфигуратор, создайте пустую базу на сервере, как описано выше, и загрузите в неё этот файл.