Как выгрузить базу данных 1С в файл `.dt`, не выгоняя пользователей
Как выгрузить базу данных 1С в файл .dt, не выгоняя пользователей (MSSQL и PostgreSQL) Иногда возникает необходимость выполнить резервное копирование базы данных 1С без отключения пользователей от системы. Это особенно в

Как выгрузить базу данных 1С в файл .dt, не выгоняя пользователей (MSSQL и PostgreSQL)
Иногда возникает необходимость выполнить резервное копирование базы данных 1С без отключения пользователей от системы. Это особенно важно для компаний, которые работают в режиме 24/7 и не могут позволить себе простоев. Для таких задач можно использовать утилиту ibcmd.exe, которая позволяет выгружать базу данных 1С в формате .dt через командную строку.
Выгрузка базы из MSSQL
Для базы данных, которая находится на сервере Microsoft SQL Server, команда для выгрузки выглядит так:
"C:\Program Files\1cv8\8.3.25.1394\bin\ibcmd.exe" infobase dump --db-server=127.0.0.1 --dbms=MSSQLServer --db-user=sa --db-pwd=ПАРОЛЬ_ОТ_Сервера_SQL --db-name=bakirovunf --data="d:\BD_1C\Backup1C\Удалить" "d:\BD_1C\Backup1C\bakirov_unf8.10.2024.dt"
Объяснение команды:
“C:\Program Files\1cv8\8.3.25.1394\bin\ibcmd.exe” — путь к исполняемому файлу утилиты для работы с базами данных 1С. infobase dump — команда для выгрузки базы данных. –db-server=127.0.0.1 — указывает адрес сервера баз данных (в данном случае это локальный сервер). –dbms=MSSQLServer — тип СУБД, используемой для базы данных (Microsoft SQL Server). –db-user=sa — пользователь базы данных с правами на выгрузку. –db-pwd=ПАРОЛЬ_СЕРВЕРА_SQL — пароль от учетной записи. –db-name=bakirovunf — название базы данных, которую необходимо выгрузить. –data=“d:\BD_1C\Backup1C\Удалить” — временная папка для хранения промежуточных данных выгрузки. “d:\BD_1C\Backup1C\bakirov_unf8.10.2024.dt” — полный путь и имя файла, в который будет выполнена выгрузка базы.
Выгрузка базы из PostgreSQL
Если база данных 1С работает на сервере PostgreSQL, команда выгрузки немного отличается. Необходимо указать тип базы данных как PostgreSQL и соответствующие параметры для подключения к серверу.
Пример команды для PostgreSQL:
"C:\Program Files\1cv8\8.3.25.1394\bin\ibcmd.exe" infobase dump --db-server=127.0.0.1 --dbms=PostgreSQL --db-user=postgres --db-pwd=ПАРОЛЬ_ОТ_PostgreSQL --db-name=bakirovunf --data="d:\BD_1C\Backup1C\Удалить" "d:\BD_1C\Backup1C\bakirov_unf8.10.2024.dt"
Объяснение команды для PostgreSQL:
- --db-server=127.0.0.1 — IP-адрес сервера базы данных (в данном случае локальный сервер).
- --dbms=PostgreSQL — тип СУБД, используемой для базы данных (PostgreSQL).
- --db-user=postgres — имя пользователя для подключения к базе данных PostgreSQL.
- --db-pwd=ПАРОЛЬ_ОТ_PostgreSQL — пароль от учетной записи PostgreSQL.
- --db-name=bakirovunf — имя базы данных, которую нужно выгрузить.
- --data="d:\BD_1C\Backup1C\Удалить" — временная директория для промежуточных данных выгрузки.
- "d:\BD_1C\Backup1C\bakirov_unf8.10.2024.dt" — конечный путь для файла выгрузки в формате
.dt.
Примечания:
-
ibcmd.exe работает с разными СУБД, поэтому важно правильно указывать тип базы данных и параметры подключения для корректной выгрузки.
-
Убедитесь, что у пользователя базы данных (как для MSSQL, так и для PostgreSQL) есть права на выполнение выгрузки данных.
-
Проверьте наличие достаточного свободного места в директории, куда будет сохранен файл выгрузки
.dt.
Заключение
Использование утилиты ibcmd.exe позволяет легко выполнять выгрузку базы данных 1С как с серверов Microsoft SQL Server, так и с серверов PostgreSQL, без необходимости отключения пользователей. Это удобно для регулярного резервного копирования в условиях непрерывной работы системы.