К статье
Практический материал

Администрирование · 12 мин

Как узнать, какая СУБД используется в 1С

Как узнать, какая СУБД используется в 1С: файловая база, MS SQL, PostgreSQL, Oracle или IBM Db2. Способы проверки через конфигуратор, консоль и список баз.

Определить тип СУБД, на которой работает информационная база 1С, требуется при установке обновлений, настройке резервного копирования, переносе базы на другой сервер и диагностике проблем с производительностью. От ответа зависят дальнейшие действия: для файловой базы достаточно скопировать файл 1Cv8.1CD, а для клиент-серверного варианта нужны инструменты конкретной СУБД — MS SQL Server, PostgreSQL, Oracle Database или IBM Db2.

Узнать тип СУБД можно несколькими способами: через свойства базы в стартовом окне 1С, в конфигураторе, через консоль администрирования кластера серверов 1С, а также косвенно — по расположению файлов и настройкам подключения. Ниже разобраны все рабочие методы с пошаговыми действиями и признаками, по которым можно отличить один вариант от другого.

Какие варианты СУБД вообще бывают в 1С

Платформа 1С:Предприятие 8 поддерживает два принципиально разных режима работы. Первый — файловый: все данные хранятся в одном файле 1Cv8.1CD, и отдельная СУБД не используется вовсе — платформа сама работает с файлом напрямую или через протокол веб-сервера. Второй — клиент-серверный: платформа обращается к промежуточному звену (кластеру серверов 1С), а тот — к внешней СУБД.

В клиент-серверном режиме поддерживаются четыре системы управления базами данных:

  • Microsoft SQL Server — наиболее распространённый вариант в коммерческих внедрениях на Windows;
  • PostgreSQL — популярен благодаря свободной лицензии, используется в том числе в сборках, адаптированных для 1С;
  • Oracle Database — встречается в крупных организациях с существующей инфраструктурой Oracle;
  • IBM Db2 — редкий вариант, обычно там, где уже развёрнуто оборудование и ПО IBM.

Важно понимать: в клиент-серверном режиме тип СУБД не виден из интерфейса пользователя напрямую. Прикладной код и конфигурация одинаково работают на любой поддерживаемой СУБД, поэтому определить тип можно только через настройки подключения или серверную инфраструктуру.

Способ 1: посмотреть свойства базы в списке информационных баз

Самый быстрый способ, не требующий прав администратора, — проверить параметры подключения в стартовом окне платформы. Это окно появляется при запуске ярлыка 1С до входа в конкретную базу.

Порядок действий
  1. 1
    Запустите ярлык 1С:Предприятие, чтобы открылся список информационных баз
  2. 2
    Выделите нужную базу одним щелчком, не запуская её
  3. 3
    Нажмите кнопку «Изменить» и пройдите по шагам мастера настройки
  4. 4
    Посмотрите тип расположения: «На данном компьютере или в локальной сети» — файловая база, «На сервере 1С:Предприятия» — клиент-серверный вариант
  5. 5
    Для клиент-серверной базы запишите имя сервера и имя информационной базы — они понадобятся для следующих шагов

Если в свойствах указан путь к каталогу (например, D:\Bases\Trade или сетевой путь \\SERVER\Bases\Trade), то это файловый режим, и вопрос о СУБД снимается — отдельной СУБД нет. Если указаны «Кластер серверов» и «Имя информационной базы», значит, используется сервер 1С, а тип СУБД нужно выяснять дальше.

Обратите внимание на вариант «На веб-сервере»: база подключается по HTTP/HTTPS-адресу. В этом случае по настройкам клиента определить режим невозможно — за веб-сервером может скрываться как файловая, так и клиент-серверная база. Нужно обращаться к администратору веб-сервера или смотреть публикацию на стороне сервера.

Способ 2: проверить через конфигуратор

Конфигуратор даёт дополнительную информацию, хотя и не показывает тип СУБД в явном виде. Откройте базу в режиме «Конфигуратор» из того же списка информационных баз. Для файловой базы в заголовке окна и в строке состояния будет виден путь к каталогу базы.

Полезный раздел — меню «Администрирование». Если пункт «Параметры информационной базы» и связанные с кластером функции недоступны или выглядят иначе, чем в клиент-серверном режиме, это косвенный признак файловой базы. Дополнительно для файловой базы можно просто открыть каталог, указанный в свойствах: наличие файла 1Cv8.1CD однозначно подтверждает файловый режим.

Если доступ в конфигуратор закрыт паролем, а права администратора есть не у всех, используйте способ из списка баз (он не требует входа в базу) или консоль администрирования сервера.

Способ 3: определить тип СУБД через консоль администрирования сервера 1С

Для клиент-серверных баз точный тип СУБД виден в консоли администрирования кластера серверов 1С (файл 1CV8 Servers.msc для Windows или аналогичные средства для Linux). Это единственный штатный способ увидеть, какая именно СУБД указана в свойствах информационной базы.

Как посмотреть тип СУБД в консоли
  1. 1
    Откройте консоль «Администрирование серверов 1С:Предприятия» на машине, где она установлена
  2. 2
    Разверните нужный кластер и перейдите в раздел «Информационные базы»
  3. 3
    Найдите базу по имени, которое указано в свойствах подключения клиента
  4. 4
    Откройте свойства информационной базы двойным щелчком
  5. 5
    Найдите поле «Тип СУБД»: там будет указано MSSQLServer, PostgreSQL, Oracle или DB2, а также сервер СУБД и имя базы данных

В свойствах базы помимо типа СУБД отображаются: имя сервера СУБД, имя базы данных внутри СУБД, пользователь СУБД, от имени которого идёт подключение. Этих данных достаточно, чтобы подключиться к базе инструментами самой СУБД — например, SQL Server Management Studio для MS SQL или pgAdmin для PostgreSQL.

Если консоль на вашем компьютере не установлена, её можно запустить на сервере 1С или установить компоненту администрирования из дистрибутива платформы. Понадобятся права администратора кластера, если они настроены.

Способ 4: косвенные признаки на стороне сервера

Когда доступа к консоли нет, тип СУБД можно определить по признакам на самом сервере. Эти методы требуют доступа к серверу приложений или серверу баз данных и обычно выполняются системным администратором.

  • Список служб Windows. Наличие службы «SQL Server (MSSQLSERVER)» говорит об MS SQL, «postgresql-x64-…» — о PostgreSQL, «OracleService…» — об Oracle, «DB2…» — об IBM Db2.
  • Установленные программы. В списке установленного ПО на сервере видны SQL Server, PostgreSQL, Oracle Database или Db2.
  • Занятые сетевые порты. По умолчанию MS SQL слушает порт 1433, PostgreSQL — 5432, Oracle — 1521, Db2 — 50000. Проверить прослушиваемые порты можно командой netstat -an.
  • Файлы данных. У MS SQL это файлы .mdf/.ldf, у PostgreSQL — каталог data с внутренней структурой, у Oracle — файлы .dbf.
bash
netstat -an | findstr "1433 5432 1521 50000"

Порты могут быть перенастроены, поэтому этот метод даёт лишь предположение, которое стоит подтвердить через консоль администрирования или список служб.

Сравнение способов и выбор подходящего

Выбор метода зависит от того, какой у вас есть доступ: только клиентское приложение, конфигуратор, консоль кластера или сам сервер. Таблица помогает сориентироваться.

СпособЧто показываетЧто нужноОграничения
Свойства в списке базФайловый или клиент-серверный режимТолько клиент 1СНе показывает конкретную СУБД
КонфигураторПуть к файловой базе, косвенные признакиПраво входа в конфигураторТип СУБД явно не отображается
Консоль администрированияТочный тип СУБД, сервер, имя базыПрава администратора кластераТребуется установленная консоль
Признаки на сервереПредположение о типе СУБДДоступ к серверуТребует подтверждения другим способом
Маршрут решения

Как выбрать действие

В свойствах базы указан путь к каталогуЭто файловая база, отдельной СУБД нет — дальнейшая проверка не нужна
Указаны кластер серверов и имя базы, есть права администратораОткройте консоль администрирования и посмотрите поле «Тип СУБД» в свойствах базы
Прав администратора нетЗапросите тип СУБД у администратора сервера 1С или проверьте службы на сервере
База подключается через веб-серверСмотрите настройки публикации на веб-сервере — клиентские параметры тип СУБД не покажут

Зачем нужно знать тип СУБД и что с этим делать дальше

Тип СУБД определяет инструменты резервного копирования. Для файловой базы достаточно копирования файла 1Cv8.1CD при отсутствии активных сеансов. Для клиент-серверной базы корректная копия делается средствами самой СУБД: BACKUP DATABASE в MS SQL, pg_dump в PostgreSQL и так далее. Копирование файлов СУБД «на живую» без штатных механизмов может привести к повреждению данных.

От СУБД зависят и требования при обновлении платформы: каждая версия платформы 1С поддерживает определённый диапазон версий MS SQL, PostgreSQL, Oracle и Db2. Перед обновлением платформы сверьтесь с системными требованиями в документации к конкретному релизу — они приводятся на портале 1С.

Ещё одна практическая ситуация — оптимизация производительности. Методы диагностики различаются: для MS SQL применяются планы запросов и индексы в SSMS, для PostgreSQL — EXPLAIN и настройки shared_buffers, для файловых баз — сокращение числа одновременных пользователей и периодическая загрузка-выгрузка через dt. Без знания типа СУБД выбрать правильный инструментарий невозможно.

Типичные ошибки
01
Путать имя базы в списке 1С с именем базы данных в СУБД — это разные сущности, они могут не совпадать
02
Считать подключение через веб-сервер признаком файловой базы — за веб-сервером может быть любой режим
03
Копировать файлы MS SQL или PostgreSQL как обычные файлы без остановки службы — копия получится неконсистентной
04
Определять СУБД только по порту — администраторы часто меняют порты по умолчанию
05
Пытаться увидеть тип СУБД в пользовательском режиме 1С — там эта информация не отображается

Частые вопросы

Можно ли узнать тип СУБД из режима «Предприятие», не имея прав администратора?

Напрямую — нет: интерфейс прикладного решения не показывает параметры СУБД. Определить файловый или клиент-серверный режим можно через свойства базы в списке информационных баз без входа в неё. Точный тип СУБД без доступа к консоли кластера или серверу выяснить нельзя — запросите эту информацию у администратора.

Чем файловая база отличается от клиент-серверной на практике?

Файловая база хранится в одном файле 1Cv8.1CD, проста в развёртывании и подходит для небольшого числа одновременно работающих пользователей. Клиент-серверный вариант использует внешнюю СУБД, выдерживает большую нагрузку, поддерживает регламентные задания на сервере и штатные средства резервного копирования СУБД, но требует администрирования сервера 1С и самой СУБД.

Можно ли перевести файловую базу на MS SQL или PostgreSQL?

Да. Стандартный путь — выгрузить файловую базу в файл .dt через конфигуратор («Администрирование» → «Выгрузить информационную базу»), создать новую пустую базу в консоли кластера с нужным типом СУБД и загрузить в неё полученный .dt. Перед операцией сделайте резервную копию и убедитесь, что версия платформы поддерживает выбранную СУБД.

Как понять, какая версия MS SQL или PostgreSQL используется?

Версию СУБД видно в инструментах самой СУБД: в SQL Server Management Studio — запрос SELECT @@VERSION, в PostgreSQL — запрос SELECT version() или команда psql --version. В консоли администрирования 1С отображается только тип СУБД, без номера версии.

Почему в консоли администрирования не видно мою базу?

Возможные причины: вы подключились не к тому кластеру (проверьте имя сервера в свойствах подключения), база зарегистрирована в другом кластере, либо у вашей учётной записи нет прав на просмотр списка информационных баз. Также база может быть файловой — тогда её в кластере не будет вовсе.

Влияет ли тип СУБД на работу конфигурации?

Прикладной код типовых конфигураций работает одинаково на всех поддерживаемых СУБД, но производительность и поведение под нагрузкой могут различаться. Некоторые запросы и операции по-разному оптимизируются разными СУБД, поэтому при тонкой настройке производительности тип СУБД учитывается обязательно.

Итог

Что важно запомнить

Сначала определите режим работы базы через свойства в списке информационных баз: путь к каталогу — файловый режим (отдельной СУБД нет), сервер и имя базы — клиент-серверный. Точный тип СУБД (MS SQL, PostgreSQL, Oracle, Db2) виден только в консоли администрирования кластера в свойствах информационной базы. Перед любыми действиями с базой на стороне СУБД делайте резервную копию штатными средствами.