Просто и сердито 2. Архивирование (backup) типовых конфигураций для Linux

20.01.25

База данных - Архивирование (backup)

Предлагаю Вашему вниманию 3 скрипта на bash (sh) для архивирования (backup) типовых конфигураций на Linux средствами 1С и Postgres. Перед запуском корректно заполните раздел "Параметры" в соответствии с Вашими настройками.

1. Бэкап средствами 1С - получение dt файлов:

#!/bin/bash
#=========== П А Р А М Е Т Р Ы ===========
#Параметры запуска: адрес сервера, основной порт кластера, информационная база, логины, пароли
#Логин и пароль на вход в 1С. У всех баз должен быть одинаковый логин и пароль администратора на вход в 1С
LoginDB1C='Backup'                             #Логин на доступ к базе данных 1C (вход в конфигуратор)
PassDB1C='VeryStrongP@ssw0rd'            #Пароль на доступ к базе данных 1C (вход в конфигуратор)
PathToMount="/mnt"                              #точка монтирования удалённого сервера
PathToSaveDT=$PathToMount"/dt/"                 #Путь к каталогу выгрузки
PathToNFSServer="<IP_NFS>:/mnt/SATA-pool/NFS_backup/backup_1c" #Путь к каталогу выгрузки на NFS сервере
UserNoExit='notexpel'                           #Пользователь НеВыгонять. Если в базе открыт сеанс этого пользователя то выгрузка не сделается
PassUC='ПарольUC'                              #Код разрешения на подключение к 1С (параметр /UC)
SrvName='localhost'                             #Имя сервера 1С
SrvNameDB='localhost'                          #Имя сервера базы данных postgres, mssql ...
MainPort='1541'                                 #Главный порт для подключения к серверу 1С
RacPort='1545'                                  #Порт для запуска команд rac
Version1C='8.3.26.1498'                    #Версия программы 1С
PathProgram1C="/opt/1cv8/x86_64/$Version1C"     #Путь к каталогу программы 1С
DaysArchiveStorage='365'                        #Количество дней хранения бэкапов
DbToBackup="UT10 UT11 ZUP3 BP3 UT11_Test"       #Список баз
SleepOnHours=1,5                                #Убить все зависшие процессы выгрузки баз(ibcmd) через это количество часов
logfile="backup_dt.log"                         #Место хранения лога из 1С
#Логин и пароль у суперпользователя базы данных mssql, postgres...
LoginPostgres='postgres'                        #Логин суперпользователя
PassPostgres='VeryStr@ngP@stgres'       #Пароль суперпользователя
#======= КОНЕЦ РАЗДЕЛА ПАРАМЕТРЫ =========


#Аргументы для запуска команды архивирования
#ArgumentBackupDES="DESIGNER /S $SrvName:$MainPort\\$DBName /N $LoginDB1C /P $PassDB1C /UC $PassUC /DumpIB $DTfilename" #Если бэкапы делаем через конфигуратор
ArgumentBackupIBCMD="infobase dump --dbms=PostgreSQL --db-server=$SrvNameDB --db-user=$LoginPostgres --db-pwd=$PassPostgres --db-name=$DBName -u $LoginDB1C -P $PassDB1C $DTfilename" #Если бэкапы делаем через ibcmd

HostRac="$SrvName:$RacPort"
HostMain="$SrvName:$MainPort"
#Получаем кластер 1С
ClustersID=$("$PathProgram1C/rac" cluster list "$HostRac" | grep 'cluster\|port'| awk -F' ' '{print $3}')
for Cluster in $ClustersID; do
    #Если количество символов больше шести, то это идентификатор кластера
    if [ ${#Cluster} -gt 6 ]; then
        ClusterID=$Cluster
    else # иначе это порт кластера
    if [ "$MainPort" -eq "$Cluster" ]; then
        ClusterPort=$Cluster
    fi
    fi
done

#Монтируем удалённую шару
mount -o soft $PathToNFSServer $PathToMount
#Проходимся циклом по списку баз
i=0
for Base in $DbToBackup; do
    DoNotUnload="yes"
    NowDateTime=$(date +%Y-%m-%d_%H-%M)                         #Текущая дата время
    DTfilename="$PathToSaveDT$Base/$Base""_$NowDateTime.dt"     #Полный путь к файлу .dt
    #если нет каталога для выгрузки базы, то создаем его
    mkdir -p "$PathToSaveDT$Base"

    BaseID=$("$PathProgram1C/rac" infobase --cluster=$ClusterID summary list | grep -E -B1 name.*$Base | grep infobase | awk '{print$3}')
    if [ -z "BaseID" ]
    then
        continue
    fi
    ArgumentBackupIBCMD="infobase dump --dbms=PostgreSQL --db-server=$SrvNameDB --db-user=$LoginPostgres --db-pwd=$PassPostgres --db-name=$Base -u $LoginDB1C -P $PassDB1C $DTfilename" #Если бэкапы делаем через ibcmd
    #Устанавливаем блокировку соединений и регламентных заданий БД
    $PathProgram1C/rac infobase update $HostRac --cluster=$ClusterID --infobase=$BaseID --infobase-user=$LoginDB1C --infobase-pwd=$PassDB1C --permission-code=$PassUC --sessions-deny=on --scheduled-jobs-deny=on
    echo "==============================================" >> "$PathToSaveDT/$logfile"
    echo "== УСТАНОВЛЕНА БЛОКИРОВКА ПОЛЬЗОВАТЕЛЕЙ $Base=" >> "$PathToSaveDT/$logfile"
    echo "============= $(date +'%Y.%m.%d %H:%M:%S') ============" >> "$PathToSaveDT/$logfile"
    echo "" >> "$PathToSaveDT/$logfile"
    sleep 5
    #Завершаем сеансы пользователей, если требуется
    SessionsID=$("$PathProgram1C/rac" session list $HostRac --cluster=$ClusterID --infobase=$BaseID | grep 'session ' | awk '{print$3}')
    UserNames=$("$PathProgram1C/rac" session list $HostRac --cluster=$ClusterID --infobase=$BaseID | grep user-name | awk '{print$3}')
    SessApps=$("$PathProgram1C/rac" session list $HostRac --cluster=$ClusterID --infobase=$BaseID | grep app-id | awk '{print$3}')
    IDSession=""
    sesUser=""
    sesApp=""
    TestUserNoExit=$(echo $UserNames | grep $UserNoExit)
    if [ -z "$TestUserNoExit" ]; then
        k=$(echo $UserNames | wc -w)
        for (( iter=1; iter<=$k;iter++ )) do
            IDSession=$(echo $SessionsID | head -n1 | cut -d " " -f$iter)
            sesUser=$(echo $UserNames | head -n1 | cut -d " " -f$iter)
            sesApp=$(echo $SessApps | head -n1 | cut -d " " -f$iter)
            if [ "$IDSession" != "" ] && [ "$sesApp" != "" ] && [ "$sesUser" != "" ]; then
                $PathProgram1C/rac session terminate $HostRac --cluster=$ClusterID --session=$IDSession
                echo "++ Отключаем сеанс пользователя $Base $sesUser $sesApp" >> "$PathToSaveDT/$logfile"
                sleep 10
            fi
        done
    fi
    "$PathProgram1C/ibcmd" $ArgumentBackupIBCMD &       #Если бэкапы делаем через ibcmd
    sleep 5
    echo "" >> "$PathToSaveDT/$logfile"
    echo "==============================================" >> "$PathToSaveDT/$logfile"
    echo "== ВЫГРУЗКА $Base ЗАПУЩЕНА В ФОНОВОМ РЕЖИМЕ ==" >> "$PathToSaveDT/$logfile"
    echo "============= $(date +'%Y.%m.%d %H:%M:%S') ============" >> "$PathToSaveDT/$logfile"
    echo "" >> "$PathToSaveDT/$logfile"

    SleepOnSeconds=$(( $SleepOnHours  * 3600 ))
    cur_time=$(echo $EPOCHSECONDS)
    time_stop=$(( $cur_time + $SleepOnSeconds))

    while : #  [ $i -gt 0 ]
    do
     ps_ibcmd=$(ps -auxf | grep $PathProgram1C/'ibcm[d]')
     if [ -z "$ps_ibcmd" ]; then
        echo "==============================================" >> "$PathToSaveDT/$logfile"
        echo "======= ВЫГРУЗКА $Base ЗАВЕРШЕНА ======" >> "$PathToSaveDT/$logfile"
        echo "============= $(date +'%Y.%m.%d %H:%M:%S') ============" >> "$PathToSaveDT/$logfile"
        echo "" >> "$PathToSaveDT/$logfile"
            find "$PathToSaveDT/$Base" -name "*.dt" -type f -mtime "+$DaysArchiveStorage" -exec rm {} \;
        echo "==============================================" >> "$PathToSaveDT/$logfile"
        echo "= УДАЛЕНЫ ФАЙЛЫ $Base СТАРШЕ $DaysArchiveStorage дней =" >> "$PathToSaveDT/$logfile"
        echo "============= $(date +'%Y.%m.%d %H:%M:%S') ============" >> "$PathToSaveDT/$logfile"
        echo "" >> "$PathToSaveDT/$logfile"
        break
     fi
    cur_time=$(echo $EPOCHSECONDS)
    if [ $cur_time -gt $time_stop ]; then
        killall ibcmd
        echo "==============================================" >> "$PathToSaveDT/$logfile"
        echo "== ВЫГРУЗКА $Base ЗАВИСЛА И ЗАВЕРШЕНА ==" >> "$PathToSaveDT/$logfile"
        echo "============= $(date +'%Y.%m.%d %H:%M:%S') ============" >> "$PathToSaveDT/$logfile"
        echo "" >> "$PathToSaveDT/$logfile"
        break
    fi
    done

    #Снимаем блокировку соединений и регламентных заданий БД
    $PathProgram1C/rac infobase update $HostRac --cluster=$ClusterID --infobase=$BaseID --infobase-user=$LoginDB1C --infobase-pwd=$PassDB1C --permission-code='' --sessions-deny=off --scheduled-jobs-deny=off
    echo "==============================================" >> "$PathToSaveDT/$logfile"
    echo "== СНЯТА БЛОКИРОВКА ПОЛЬЗОВАТЕЛЕЙ $Base=" >> "$PathToSaveDT/$logfile"
    echo "============= $(date +'%Y.%m.%d %H:%M:%S') ============" >> "$PathToSaveDT/$logfile"
    echo "" >> "$PathToSaveDT/$logfile"
done
echo "" >> "$PathToSaveDT/$logfile"
echo "===============================================================================================================================================" >> "$PathToSaveDT/$logfile"
#Размонтируем удалённую шару
umount $PathToMount
sleep 5

2. Бэкап по базам средствами Postgres

#!/bin/sh
#=========== П А Р А М Е Т Р Ы ===========
PGPASSWORD=VeryStr@ngP@stgres         #Пароль на доступ к базам данных PostgreSQL
export PGPASSWORD
host='localhost'                #Имя сервера PostgreSQL
PathToMount="/mnt"                  #точка монтирования удалённого сервера
PathToSaveDump=$PathToMount"/backup_pg_dump/" #Путь к каталогу выгрузки
PathToNFSServer="<IP_NFS>:/mnt/SATA-pool/NFS_backup/backup_1c" #Путь к каталогу выгрузки на NFS сервере
dbUser=postgres                 #Логин на доступ к базам данных PostgreSQL
DaysArchiveStorage='+60'        #Количество дней хранения бэкапов
FileExtension="sql"             #!!!расширения архивируемого файла могут быть: dump,gz,bz2
#======= КОНЕЦ РАЗДЕЛА ПАРАМЕТРЫ =========
logfile="log_unload.log"        #файл хранения логов
#Проверяем, установлен ли пакет архиватора
if [ "$FileExtension" = "gz" ]; then
    #если используем архиватор gzip
    Package=$(echo $(dpkg --get-selections | grep -v deinstall | grep gzip))
    if [ "$Package" ]
    then
        echo $Package
    else
        echo "!!! Не установлен пакет gzip !!!"
        exit 0
    fi
elif [ "$FileExtension" = "bz2" ]; then
    #если используем архиватор pbzip2
    Package=$(echo $(dpkg --get-selections | grep -v deinstall | grep pbzip2))
    if [ "$Package" ]; then
        echo $Package
    else
        echo "!!! Не установлен пакет pbzip2 !!!"
        exit 0
    fi
fi
#Монтируем удалённую шару
mount -o soft $PathToNFSServer $PathToMount
#Получаем список имен баз
Bases=$(/opt/pgpro/1c-16/bin/psql -h $host -U $dbUser -A -q -t -c "select datname from pg_database")
for Base in $Bases; do
    echo "Идет выгрузка базы $Base ..."
    NowDateTime=$(date +%Y-%m-%d_%H-%M)                 #Текущая дата время
    #полный путь к файлу, если используем без сжатия
    if [ "$FileExtension" = "sql" ]; then
    DumpFilename="$PathToSaveDump$Base/$Base""_$NowDateTime.sql"
    else
    DumpFilename="$PathToSaveDump$Base/$Base""_$NowDateTime.sql.$FileExtension"
    fi
    #если нет каталога для выгрузки базы, то создаем его
    mkdir -p "$PathToSaveDump$Base"
    echo "==============================================" >> "$PathToSaveDump$Base/$logfile"
    echo "============== ВЫГРУЗКА НАЧАЛАСЬ =============" >> "$PathToSaveDump$Base/$logfile"
    echo "============= $(date +'%Y.%m.%d %H:%M:%S') ============" >> "$PathToSaveDump$Base/$logfile"
    echo "" >> "$PathToSaveDump$Base/$logfile"
    if [ "$FileExtension" = "sql" ]; then
#        /usr/bin/pg_dump -h $host -Fc $Base -U $dbUser > $DumpFilename
        /opt/pgpro/1c-16/bin/pg_dump -h $host -Fc $Base -U $dbUser > $DumpFilename
    elif [ "$FileExtension" = "gz" ]; then
        #если используем архиватор gzip
#        /usr/bin/pg_dump -h $host $Base -U $dbUser | gzip > $DumpFilename
        /opt/pgpro/1c-16/bin/pg_dump -h $host $Base -U $dbUser | gzip > $DumpFilename
    elif [ "$FileExtension" = "bz2" ]; then
        #если используем архиватор bpzip2
#        /usr/bin/pg_dump -h $host $Base -U $dbUser | pbzip2 -p2 -9 > $DumpFilename
        /opt/pgpro/1c-16/bin/pg_dump -h $host $Base -U $dbUser | pbzip2 -p2 -9 > $DumpFilename
    fi
    echo "" >> "$PathToSaveDump$Base/$logfile"
    echo "============= $(date +'%Y.%m.%d %H:%M:%S') ============" >> "$PathToSaveDump$Base/$logfile"
    echo "============= ВЫГРУЗКА ЗАКОНЧИЛАСЬ ===========" >> "$PathToSaveDump$Base/$logfile"
    echo "==============================================" >> "$PathToSaveDump$Base/$logfile"
    echo "" >> "$PathToSaveDump$Base/$logfile"
    echo "" >> "$PathToSaveDump$Base/$logfile"
    echo "" >> "$PathToSaveDump$Base/$logfile"
    #Удаляем старые архивы, оставляем только последние несколько, указанные в параметре $DaysArchiveStorage
    if [ -e $DumpFilename ]
    then
        find "$PathToSaveDump$Base" -name "*.$FileExtension" -mtime "$DaysArchiveStorage" -type f -delete
    fi
done
#Размонтируем удалённую шару
umount $PathToMount
unset PGPASSWORD
3. Бэкап всего кластера Postgres
#!/bin/sh
#=========== П А Р А М Е Т Р Ы ===========
PGPASSWORD=VeryStr@ngP@stgres             #Пароль на доступ к базам данных PostgreSQL
export PGPASSWORD
host='localhost'                   #Имя сервера PostgreSQL
PathToMount="/mnt"                  #точка монтирования удалённого сервера
PathToSave=$PathToMount"/backup_pg_basebackup/"   #Путь к каталогу выгрузки
PathToNFSServer="<IP_NFS>:/mnt/SATA-pool/NFS_backup/backup_1c" #Путь к каталогу выгрузки на NFS сервере
dbUser=postgres                 #Логин на доступ к базам данных PostgreSQL
DaysArchiveStorage='+60'        #Количество дней хранения бэкапов
#======= КОНЕЦ РАЗДЕЛА ПАРАМЕТРЫ =========
#Монтируем удалённую шару
mount -o soft $PathToNFSServer $PathToMount
logfile="log_unload.log"        #файл хранения логов
echo "Идет выгрузка ..."
NowDateTime=$(date +%Y-%m-%d_%H-%M)                             #Текущая дата время
#bzFilename="$PathToSave$NowDateTime.sql.bz2"   #Полный путь к файлу выгрузки
#если нет каталога для выгрузки базы, то создаем его
mkdir -p "$PathToSave""pg_$NowDateTime"
echo "==============================================" >> "$PathToSave$logfile"
echo "============== ВЫГРУЗКА НАЧАЛАСЬ =============" >> "$PathToSave$logfile"
echo "============= $(date +'%Y.%m.%d %H:%M:%S') ============" >> "$PathToSave$logfile"
echo "" >> "$PathToSave$logfile"
#/usr/bin/pg_basebackup -h $host -p 5432 -U $dbUser -D "$PathToSave""pg_$NowDateTime" -Ft -Xs
/opt/pgpro/1c-16/bin/pg_basebackup -h $host -p 5432 -U $dbUser -D "$PathToSave""pg_$NowDateTime" -Ft -Xs
#pg_basebackup -h $host -p 5432 -U $dbUser -D "$PathToSave""pg_$NowDateTime" -Ft -z -Xs -P
echo "" >> "$PathToSave$logfile"
echo "============= $(date +'%Y.%m.%d %H:%M:%S') ============" >> "$PathToSave$logfile"
echo "============= ВЫГРУЗКА ЗАКОНЧИЛАСЬ ===========" >> "$PathToSave$logfile"
echo "==============================================" >> "$PathToSave$logfile"
echo "" >> "$PathToSave$logfile"
echo "" >> "$PathToSave$logfile"
echo "" >> "$PathToSave$logfile"
#Удаляем старые архивы, оставляем только последние несколько, указанные в параметре $DaysArchiveStorage
#if [ -e $bzFilename ]
#then
    find "$PathToSave" -name "pg_*" -mtime "$DaysArchiveStorage" -type d -exec rm -fr "{}" \;
#fi
#find $PathToSave \( -name "*-1[^5].*" -o -name "*-[023]?.*" \) -ctime $DaysArchiveStorage -delete

echo "==============================================" >> "$PathToSave$logfile"
echo "============= НАЧАЛСЯ AUTOVACUUM =============" >> "$PathToSave$logfile"
echo "============= $(date +'%Y.%m.%d %H:%M:%S') ============" >> "$PathToSave$logfile"
echo "" >> "$PathToSave$logfile"
#/usr/bin/vacuumdb -h $host -p 5432 --full --analyze --all -U $dbUser
/opt/pgpro/1c-16/bin/vacuumdb -h $host -p 5432 --full --analyze --all -U $dbUser
echo "============= $(date +'%Y.%m.%d %H:%M:%S') ============" >> "$PathToSave$logfile"
echo "============ ЗАКОНЧИЛСЯ AUTOVACUUM ===========" >> "$PathToSave$logfile"
echo "==============================================" >> "$PathToSave$logfile"
echo "" >> "$PathToSave$logfile"
echo "" >> "$PathToSave$logfile"
echo "" >> "$PathToSave$logfile"
echo "==============================================" >> "$PathToSave$logfile"
echo "============== НАЧАЛСЯ REINDEXDB =============" >> "$PathToSave$logfile"
echo "============= $(date +'%Y.%m.%d %H:%M:%S') ============" >> "$PathToSave$logfile"
#/usr/bin/reindexdb -h $host -p 5432 --all -U $dbUser -j 4
/opt/pgpro/1c-16/bin/reindexdb -h $host -p 5432 --all -U $dbUser -j 4
echo "============= $(date +'%Y.%m.%d %H:%M:%S') ============" >> "$PathToSave$logfile"
echo "============= ЗАКОНЧИЛСЯ REINDEXDB ===========" >> "$PathToSave$logfile"
echo "==============================================" >> "$PathToSave$logfile"
echo "" >> "$PathToSave$logfile"
echo "" >> "$PathToSave$logfile"
echo "" >> "$PathToSave$logfile"
#Размонтируем удалённую шару
umount $PathToMount
unset PGPASSWORD

 

Протестировано на Ubuntu 24.04, PostgreSQL 16 (1C).

Вступайте в нашу телеграмм-группу Инфостарт

Linux 1C Backup dt

Вы можете заказать платную адаптацию этой статьи под ваши задачи на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

См. также

Архивирование (backup) Инструменты администратора БД 1С:Предприятие 8 1C:Бухгалтерия 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Данная разработка позволит решить вопрос с резервным копированием Ваших баз в автоматическом режиме, расположенных на сервере 1С. Система умеет ставить блокировки на вход, блокировать фоновые задания, принудительно отключать сеансы пользователей. И все это система делает в автоматически при создании бэкапа (или через команду). Выгрузка происходит в родной формат 1С - .dt. Так же система умеет архивировать данные выгрузки с установкой пароля. Умеет менять расширение файла zip или dt на любое указанное вами, что позволит сохранить выгрузки от шифровальщика. Может удалять старые копии выгрузок, оставляя указанное количество резервных копий, начиная с самой поздней. Только для WINDOWS! Версия 1.4 от 28.05.2026

7320 руб.

06.11.2012    80375    635    45    

94

Архивирование (backup) Обновление 1С Системный администратор Разработчик 1С 8.3 Бесплатно (free)

Платформа 8.3.17, MS SQL Server: обновление конфигурации падает через 15 секунд на этапе обновления предопределённых данных, и конфигуратор при каждом входе предлагает только повторить. Проверьте у себя, когда сделана последняя полная копия базы: у нас её не было почти месяц. Разбор по минутам: что не помогло (перезапуск агента сервера 1С, перезагрузка, пакетный /UpdateDBCfg, три совета со стороны) и почему. Как ibcmd достал .dt из базы, которая не открывается, и как новую базу подставили под старым именем в кластере 1С через rac, не трогая пользователей. Простой 57 минут, потерь данных нет. Отдельно ошибки ИИ-агента Claude, который работал на сервере, и порядок действий на случай, если это случилось у вас.

03.11.2026    413    nedomolkov.ivan    10    

5

Архивирование (backup) Инструменты администратора БД Системный администратор Разработчик 1С 8.3 1С:Управление торговлей 11 1С:Библиотека стандартных подсистем Абонемент ($m)

Полностью автоматизированная внешняя обработка для администрирования 1С: блокировка/разблокировка ИБ, массовое завершение сеансов, резервное копирование и восстановление из .dt, выгрузка/загрузка конфигурации (.cf), пакетная работа с расширениями (.cfe) и дополнительными обработками – всё через удобную форму без ручных запусков конфигуратора и консоли кластера

1 стартмани

21.01.2026    6492    66    war41k    0    

18

Архивирование (backup) Групповая разработка (Git, хранилище) Системный администратор Разработчик Бесплатно (free)

Как дать возможность каждому разработчику 1С вести разработку, тестирование и оптимизацию на собственной полноразмерной копии базы и при этом не тратить миллиарды рублей и тысячи часов на развертывание тестового окружения, а так же экономить дисковое пространство? Расскажем о том, как с помощью инструмента Database Lab получать полноразмерные копии базы 1C на СУБД PostgreSQL за считанные секунды (даже в случае использования многотерабайтных баз).

15.12.2025    14170    nasonkin    19    

31

Архивирование (backup) Учет документов Бухгалтер 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

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

12200 руб.

19.02.2025    2937    3    0    

3

Архивирование (backup) 1С 8.3 1С:Библиотека стандартных подсистем Абонемент ($m)

Резервные копии базы 1С без завершения сеансов: .dt, файл базы, PostgreSQL, MS SQL, своя команда. Расписание, профили, ротация, ZIP, FTP, журнал и письмо об ошибке. Платформа 8.3+ (кроме 8.2), любая конфигурация с БСП. Подключение за 5 минут.

5000 руб.

27.08.2024    4129    1    6    

2

HighLoad оптимизация Администрирование СУБД Архивирование (backup) Системный администратор Разработчик 1С:Предприятие 8 Бесплатно (free)

Бэкап в Postgres состоит из набора граблей, которые нужно обойти для успешного восстановления. Они заложены в самых неожиданных местах от предмета резервного копирования (база или кластер) до структуры каталогов. Один неверный шаг и восстановление будет невозможным. Почему нельзя было сделать проще, как в MS SQL или Oracle? Почему бэкап в Postgres оставляет впечатление чьей-то лабораторной работы? Статья адресована прежде всего специалистам 1С, избалованным комфортом в MS SQL, в суровых буднях импортозамещения на Postgres.

13.08.2024    10663    1CUnlimited    11    

6

Инструменты администратора БД Архивирование (backup) Системный администратор Разработчик 1С:Предприятие 8 Абонемент ($m)

Обработка для "обновления" своей тестовой базы из резервной копии рабочей базы без помощи админов.

1 стартмани

21.05.2024    4983    16    DenDev01    4    

9
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. starik-2005 3309 28.01.25 12:07 Сейчас в теме
Ну теперь можно написать следующую статью: три скрипта для восстановления бэкапа.
2. Prelude 41 19.03.25 12:39 Сейчас в теме
(1) Вам для восстановления из dt нужен скрипт? ))
3. starik-2005 3309 19.03.25 16:11 Сейчас в теме
(2)
из dt
А у вас в dt бэкапы?
4. Prelude 41 20.03.25 23:12 Сейчас в теме
(3) В том числе.
Одно не понял, зачем что-то писать, если Вы заголовки не прочитали... )))
5. starik-2005 3309 21.03.25 10:19 Сейчас в теме
(4)
если Вы заголовки не прочитали
В заголовке про бэкап. Но бэкап, как культ карго, кончено важен, но основная его важность все-таки в том, чтобы в случае острой необходимости им воспользоваться. А тема воспользования не раскрыта, поэтому можно написать следующую статью про восстановление. Не?
Для отправки сообщения требуется регистрация/авторизация