Сохранение и восстановление инф. баз при обновлении клиентов: различия между версиями
Shihov (обсуждение | вклад) Нет описания правки |
Shihov (обсуждение | вклад) Нет описания правки |
||
(не показана 1 промежуточная версия этого же участника) | |||
Строка 1: | Строка 1: | ||
====== Сохранение и восстановление информационных баз при обновлении клиентов ====== | |||
=== Аварийное восстановление и резервное копирование информационных баз 1С === | === Аварийное восстановление и резервное копирование информационных баз 1С === | ||
'''Файловые базы''' | |||
# Если есть доступ к конфигуратору: | |||
* тестирование и исправление | * тестирование и исправление | ||
* загрузка резервной копии конфигурации | * загрузка резервной копии конфигурации | ||
# Если нет доступ к конфигуратору: | |||
* утилита chdbfl.exe | * утилита chdbfl.exe | ||
* манипуляции с кешем для доступа в конфигуратор (с дальнейшем заливанием конфигурации) | * манипуляции с кешем для доступа в конфигуратор (с дальнейшем заливанием конфигурации) | ||
1) тестирование и исправление: | 1) тестирование и исправление: | ||
# Зайти в конфигуратор, нажать в меню на '''"Администрирование"''' | |||
'"Администрирование" | # Выбрать пункт '''"Тестирование и исправление"''' | ||
# В разделе '''"Проверки и режимы"''' отмечаем нужные пункты: | |||
'"Тестирование и исправление" | |||
'"Проверки и режимы" | |||
* <syntaxhighlight lang='bash'> | * <syntaxhighlight lang='bash'> | ||
Реиндексация таблиц информационной базы | Реиндексация таблиц информационной базы | ||
Строка 43: | Строка 37: | ||
Реструктуризация таблиц информационной базы | Реструктуризация таблиц информационной базы | ||
</syntaxhighlight> — процесс, с помощью которого система осуществляет пересоздание таблиц баз данных, обычно эта процедура вызывается при внесения изменений в структуру метаданных конфигурации. Реструктуризация всей БД — процесс долгий, будьте внимательны. (Например 2 таблицы и данные из 1 порциями копируются во 2, при этом структура таблицы меняется, а данные остаются такие же | </syntaxhighlight> — процесс, с помощью которого система осуществляет пересоздание таблиц баз данных, обычно эта процедура вызывается при внесения изменений в структуру метаданных конфигурации. Реструктуризация всей БД — процесс долгий, будьте внимательны. (Например 2 таблицы и данные из 1 порциями копируются во 2, при этом структура таблицы меняется, а данные остаются такие же | ||
# Кликнуть по требуемому действию: | |||
* "Только тестирование" - если требуется узнать место ошибки в базе | * "Только тестирование" - если требуется узнать место ошибки в базе | ||
* "Тестирование и исправление" - если нужно сразу все исправить. Перед началом ОБЯЗАТЕЛЬНО сделать резервную копию, даже если база уже сломана | * "Тестирование и исправление" - если нужно сразу все исправить. Перед началом ОБЯЗАТЕЛЬНО сделать резервную копию, даже если база уже сломана | ||
# Установить в столбцах требуемые параметры исправления: | |||
* Создавать объекты - 1С создаст объект заглушку, которая исправит ошибку. Вместо которой можно будет создать нужный объект. | * Создавать объекты - 1С создаст объект заглушку, которая исправит ошибку. Вместо которой можно будет создать нужный объект. | ||
* Битые ссылки либо удаляются либо создаются ссылки заглушки, которая никуда не ведет. | * Битые ссылки либо удаляются либо создаются ссылки заглушки, которая никуда не ведет. | ||
[[File:1_бекап.png]] | [[File:1_бекап.png]] | ||
Строка 57: | Строка 51: | ||
2) Загрузка резервной копии конфигурации | 2) Загрузка резервной копии конфигурации | ||
# Зайти в конфигуратор, нажать в меню на '''"Конфигурация"''' | |||
'"Конфигурация" | # Выбрать пункт '''"Загрузить конфигурацию из файла"''' (Предварительно сохранить конфигурацию в файл и перед началом ОБЯЗАТЕЛЬНО сделать резервную копию). Такая загрузка заменяет только скелет базы. | ||
'"Загрузить конфигурацию из файла" | |||
<syntaxhighlight lang='bash'> | <syntaxhighlight lang='bash'> | ||
Строка 72: | Строка 62: | ||
Загрузка базы из конфигуратора в полном объеме: | Загрузка базы из конфигуратора в полном объеме: | ||
# Зайти в конфигуратор, нажать в меню на '''"Администрирование"''' | |||
'"Администрирование" | # Выбрать пункт '''"Загрузить информационную базу"''' (Перед началом ОБЯЗАТЕЛЬНО сделать резервную копию) При такой загрузки идет полная замена данных | ||
'"Загрузить информационную базу" | |||
[[File:3_бекап.png]] | [[File:3_бекап.png]] | ||
Строка 83: | Строка 69: | ||
3) Утилита chdbfl.exe | 3) Утилита chdbfl.exe | ||
Утилита chdbfl.exe расположена по пути "C: | Утилита chdbfl.exe расположена по пути "C:\Program Files<br/>1cv8\<номер_версии_1с\bin\chdbfl.exe" и предназначенна для теста файла формата 1cd на ошибки | ||
# Перейти в папку нужной версии 1С | |||
# Зайти в папку "bin" | |||
# Найти утилиту chdbfl.exe и дважды кликнуть по ней. | |||
[[File:4_бекап.png]] | [[File:4_бекап.png]] | ||
# Указываем имя базы данных. | |||
# Если нужно исправление ошибок, то установить галочку в соответствующем поле. | |||
# Нажать кнопку '''"Выполнить"''' (конфигуратор должен быть закрыт). | |||
'"Выполнить" | |||
[[File:5_бекап.png]] | [[File:5_бекап.png]] | ||
Строка 105: | Строка 89: | ||
[[File:6_бекап.png]] | [[File:6_бекап.png]] | ||
# Необходима чистая конфигурация той же версии что и разрушенная база (создаются бекапы базы) | |||
# Очистить кеш полностью | |||
# Запустить чистую базу в режиме конфигуратора и открыть конфигурацию. При этом 1С создает ее кеш. | |||
# Открыть битую базу режиме конфигуратора и посмотреть кеш. (две папки с кешем) | |||
# Закрыть все и подменить кеш битой базы на кеш живой базы. | |||
# Запустить битую базу в режиме конфигуратора. | |||
# Взять резервную копию текущей версии конфигурации и сделать полную загрузку. | |||
# Очистить кеш снова. | |||
Для очистки кеша: | Для очистки кеша: | ||
В адресной строке пишем %appdata% и нажимаем кнопку | В адресной строке пишем %appdata% и нажимаем кнопку '''"Еnter"''' | ||
'"Еnter" | |||
[[File:7_бекап.png]] | [[File:7_бекап.png]] | ||
Возвращаемся на раздел выше, кликнув на | Возвращаемся на раздел выше, кликнув на '''"Appdata"''' | ||
'"Appdata" | |||
[[File:8_бекап.png]] | [[File:8_бекап.png]] | ||
# Зайти в парку "Local" | |||
# Перейти в папку "1С" | |||
# Провалиться в папку "1Сv81" | |||
[[File:9_бекап.png]] | [[File:9_бекап.png]] | ||
Строка 142: | Строка 122: | ||
Если есть кеш здоровой базы и кеш сломанной, то нужно скопировать наименование здоровой, удалить сам файл и переименовать кеш в сломанной в папках Local и Roaming | Если есть кеш здоровой базы и кеш сломанной, то нужно скопировать наименование здоровой, удалить сам файл и переименовать кеш в сломанной в папках Local и Roaming | ||
'''Резервное копирование файловых баз''' | |||
# Копирование файлов баз данных | |||
# Выгрузка информационной базы в файл | |||
# Выгрузка конфигурации информационной базы в файл | |||
1) Копирование файлов баз данных | 1) Копирование файлов баз данных | ||
Строка 158: | Строка 138: | ||
Пример скрипта, который копирует файлы базы данных: | Пример скрипта, который копирует файлы базы данных: | ||
xcopy "D: | xcopy "D:\work\Send Base_work\repository" "D:\work\Send Base_work\backup\%date%" /f /s /i | ||
Данный скрипт помещается в планировщик заданий для выполнения через равные промежутки времени | Данный скрипт помещается в планировщик заданий для выполнения через равные промежутки времени | ||
Операция "xcopy" копирует данные из папки "D: | Операция "xcopy" копирует данные из папки "D:\work\Send Base_work\repository" в папку "D:\work\Send Base_work\backup\%date%", "%date%" - означает переменную текущую дату (сегодняшний день) | ||
2) Выгрузка информационной базы в файл | 2) Выгрузка информационной базы в файл | ||
# Зайти в конфигуратор и в меню нажать '''"Администрирование"'''. | |||
'"Администрирование" | # Выбрать пункт '''"Выгрузить информационную базу"''' => При этом происходит полная выгрузка базы данных (конфигурация + данные). | ||
'"Выгрузить информационную базу" | |||
[[File:11_бекап.png]] | [[File:11_бекап.png]] | ||
Строка 177: | Строка 153: | ||
3) Выгрузка конфигурации информационной базы в файл | 3) Выгрузка конфигурации информационной базы в файл | ||
# Зайти в конфигуратор и в меню нажать '''"Конфигурация"'''. | |||
'"Конфигурация" | # Выбрать пункт '''"Сохранить конфигурацию в файл"''' => Происходит выгрузка только конфигурации, без данных. | ||
'"Сохранить конфигурацию в файл" | |||
[[File:12_бекап.png]] | [[File:12_бекап.png]] | ||
Строка 188: | Строка 160: | ||
4) Аварийное восстановление клиент-серверных баз | 4) Аварийное восстановление клиент-серверных баз | ||
# Если есть возможность попасть в конфигуратор: | |||
* Тестирование и исправление | * Тестирование и исправление | ||
* Загрузка резервной копии конфигурации | * Загрузка резервной копии конфигурации | ||
# Если нет возможности попасть в конфигуратор: | |||
* Восстановление средствами СУБД | * Восстановление средствами СУБД | ||
Пункты тестирование и исправление и загрузка резервной копии конфигурации рассматривались ранее | Пункты тестирование и исправление и загрузка резервной копии конфигурации рассматривались ранее | ||
Строка 206: | Строка 178: | ||
Одним из таких случаев, когда попасть в конфигуратор нельзя, является ошибка динамического обновления. Для восстановления базы нам понадобится: | Одним из таких случаев, когда попасть в конфигуратор нельзя, является ошибка динамического обновления. Для восстановления базы нам понадобится: | ||
# Резервная копия конфигурации информационной базы (cf) | |||
# Доступ к серверу СУБД | |||
# Открыть утилиту pgAdmin (либо «Среда SQL Server Management Studio», если у вас MS SQL) и зайти в нужную БД. | |||
# Открыть схему '''"public"'''. | |||
'"public" | # В списке '''"Таблицы"''' выбрать таблицу '''"Configsave"''' (хранятся сохраненные, но не примененные параметры конфигурации). | ||
# Кликнуть правой кнопкой мышки по таблице '''"Configsave"''' и выбрать пункт '''"Очистить"''' => Удалятся все не сохраненные данные и ошибка может исчезнуть. | |||
'"Таблицы" | |||
'"Configsave" | |||
'"Configsave" | |||
'"Очистить" | |||
[[File:20_бекап.png]] | [[File:20_бекап.png]] | ||
Строка 228: | Строка 190: | ||
Если способ выше не помог, то применяется второй способ: | Если способ выше не помог, то применяется второй способ: | ||
# Зайти в рабочую базу данных, со здоровой конфигурацией в клиент серверном формате. Чтобы ее получить, можно создать пустую БД и залить в нее резервную копию конфигурации, либо развернуть бекап базы данных. | |||
# Найти таблицу '''"config"''' (файл содержит всю конфигурацию БД), кликнуть на нее правой кнопкой мышки. | |||
'"config" | # Выбрать пункт '''"Резервное копирование"'''. | ||
# Указать путь и наименование файла - копии. | |||
# Нажать кнопку '''"Резервная копия"'''. | |||
'"Резервное копирование" | |||
'"Резервная копия" | |||
[[File:21_бекап.png]] | [[File:21_бекап.png]] | ||
# Зайти в сломанную базу. | |||
# Найти таблицу '''"config"'''. | |||
'"config" | # Кликнуть правой кнопкой мышки по таблице '''"сonfig"''' и выбрать пункт '''"Очистить"'''. | ||
# Кликнуть правой кнопкой мышки по таблице '''"сonfig"''' и выбрать пункт '''"Восстановить"'''. | |||
# Выбирать файл резервной копии. | |||
'"сonfig" | # Нажать кнопку '''"Восстановить"'''. | ||
'"Очистить" | |||
'"сonfig" | |||
'"Восстановить" | |||
'"Восстановить" | |||
[[File:22_бекап.png]] | [[File:22_бекап.png]] | ||
Строка 269: | Строка 213: | ||
* Выгрузка конфигурации информационной базы в файл | * Выгрузка конфигурации информационной базы в файл | ||
''' Резервное копирование сторонними программными средствами''' | |||
* Существует условно бесплатная утилита PostgreSQL Backup Tool. | * Существует условно бесплатная утилита PostgreSQL Backup Tool. | ||
* Позволяет настроить резервное копирование баз на FTP-сервер, в облако, на локальную или сетевую папку. | * Позволяет настроить резервное копирование баз на FTP-сервер, в облако, на локальную или сетевую папку. | ||
* Существует ограничение бесплатной версии – резервное копирование можно настроить только на две базы. | * Существует ограничение бесплатной версии – резервное копирование можно настроить только на две базы. | ||
# Открыть программу | |||
# Подключиться к серверу, нажав кнопку '''"Conect"''' | |||
'"Conect" | # Кликнуть по кнопке '''"Save & Close"''' | ||
# Выбирать таблицу, поставив галочку | |||
'"Save & Close" | |||
[[File:30_бекап.png]] | [[File:30_бекап.png]] | ||
Строка 293: | Строка 233: | ||
[[File:32_бекап.png]] | [[File:32_бекап.png]] | ||
'''Резервное копирование скриптами''' | |||
Понадобится: | Понадобится: | ||
# Бесплатный SFTP клиент WinSCP для копирования на FTP сервер | |||
# Командная строка. | |||
Порядок действий: | Порядок действий: | ||
# Скачать и установить WinSCP с официального сайта | |||
# Создать папку для временного хранения SQL дампов | |||
# Написать скрипты следующего содержания | |||
Скрипт для выгрузки SQL дампов ИБ | Скрипт для выгрузки SQL дампов ИБ | ||
* cd /D C: | * cd /D C:\Program Files\PostgresPro 1C<br/>9.6\bin | ||
* pg_dump -U postgres ZUP > D: | * pg_dump -U postgres ZUP > D:\work\backups\%DATE%_ZUP.sql | ||
* pg_dump -U postgres UNF > D: | * pg_dump -U postgres UNF > D:\work\backups\%DATE%_UNF.sql | ||
* pg_dump -U postgres UT > D: | * pg_dump -U postgres UT > D:\work\backups\%DATE%_UT.sql | ||
* pg_dump -U postgres bu-2 > D: | * pg_dump -U postgres bu-2 > D:\work\backups\%DATE%_bu-2.sql | ||
* pg_dump -U postgres bu-3 > D: | * pg_dump -U postgres bu-3 > D:\work\backups\%DATE%_bu-3.sql | ||
* pg_dump -U postgres bu-serv > D: | * pg_dump -U postgres bu-serv > D:\work\backups\%DATE%_bu-serv.sql | ||
* pg_dump -U postgres MWP > D: | * pg_dump -U postgres MWP > D:\work\backups\%DATE%_MWP.sql | ||
Скрипт для выгрузки дампов на FTP сервер | Скрипт для выгрузки дампов на FTP сервер | ||
* cd /d D: | * cd /d D:\work\backups | ||
* "C: | * "C:\Program Files (x86)\WinSCP\WinSCP.exe" /command ^ | ||
* "option confirm on" ^ | * "option confirm on" ^ | ||
* "option batch abort" ^ | * "option batch abort" ^ | ||
* "open ftp://u141841:dJic0o0ed02s3Jto@u141841.your-storagebox.de" ^ | * "open ftp://u141841:dJic0o0ed02s3Jto@u141841.your-storagebox.de" ^ | ||
* "synchronize remote -criteria=time .. | * "synchronize remote -criteria=time ..\backups\/arhiv" ^ | ||
* "cd /arhiv"^ | * "cd /arhiv"^ | ||
* "rm *<4D" | * "rm *<4D" | ||
Скрипт для очистки временной папки | Скрипт для очистки временной папки | ||
* cd /d D: | * cd /d D:\work\backups | ||
* del %DATE%_ZUP.sql | * del %DATE%_ZUP.sql | ||
* del %DATE%_UNF.sql | * del %DATE%_UNF.sql | ||
Строка 336: | Строка 276: | ||
Резервное копирование скриптами | Резервное копирование скриптами | ||
Скрипты положить в папку для временного хранения SQL дампов (в данном примере это D: | Скрипты положить в папку для временного хранения SQL дампов (в данном примере это D:\work\backups\% | ||
Настроить планировщик задач на исполнение скриптов, например так: | Настроить планировщик задач на исполнение скриптов, например так: | ||
Текущая версия от 10:30, 28 марта 2025
Сохранение и восстановление информационных баз при обновлении клиентов
Аварийное восстановление и резервное копирование информационных баз 1С
Файловые базы
- Если есть доступ к конфигуратору:
- тестирование и исправление
- загрузка резервной копии конфигурации
- Если нет доступ к конфигуратору:
- утилита chdbfl.exe
- манипуляции с кешем для доступа в конфигуратор (с дальнейшем заливанием конфигурации)
1) тестирование и исправление:
- Зайти в конфигуратор, нажать в меню на "Администрирование"
- Выбрать пункт "Тестирование и исправление"
- В разделе "Проверки и режимы" отмечаем нужные пункты:
- - если установлен этот флаг, будет произведена реиндексация таблиц - полное перестроение индексов для заданных таблиц. Реиндексация существенно повышает производительность системы в целом.
Реиндексация таблиц информационной базы
- - система умеет проверять логическую и структурную целостность базы данных, находить ошибки в организации данных (например, страниц в файле)
Проверка логической целостности информационной базы
- — подпункт логической проверки, проверяет информацию в базе данных на наличие «битых» ссылок. «Битые» ссылки появляются в базе из-за некорректной обработки информации разработчиком, чаще всего при непосредственном удалении данных или неправильно настроенном обмене данных. При нахождении ошибок можно выбрать 3 варианта действий: Создавать объекты — система создает элементы-заглушки, которые можно потом заполнить необходимой информацией, Очищать ссылки — «битые» ссылки будут очищены, Не изменять — система только покажет Вам ошибки.
Проверка ссылочной целостности информационной базы
- — в платформе 1С в регистрах накопления и регистрах бухгалтерии есть понятие итогов. Итоги — таблица подсчитанных результатов, данные из которой получить быстрее, чем анализировать весь регистр сведений. Как правило, пересчет итогов увеличивает производительность системы.
Пересчет итогов
- — если установлен этот флаг, база данных будет сжата и уменьшится в объеме. Связанно это с тем, что при удалении данных из базы данных, 1С не удаляет физически эти объекты, а лишь «помечает» их на удаление. Т.е. пользователь не видит их, а они есть :). Вот именно сжатие базы данных и удаляет такие записи окончательно. Также такого эффекта можно достичь выгрузкой и загрузкой файла базы данных (*.dt). При удалении объектом в учетной системе, они полностью не удаляются и увеличивается вес Базы, для этого и нужна эта операция.
Сжатие таблиц информационной базы
- — процесс, с помощью которого система осуществляет пересоздание таблиц баз данных, обычно эта процедура вызывается при внесения изменений в структуру метаданных конфигурации. Реструктуризация всей БД — процесс долгий, будьте внимательны. (Например 2 таблицы и данные из 1 порциями копируются во 2, при этом структура таблицы меняется, а данные остаются такие же
Реструктуризация таблиц информационной базы
- Кликнуть по требуемому действию:
- "Только тестирование" - если требуется узнать место ошибки в базе
- "Тестирование и исправление" - если нужно сразу все исправить. Перед началом ОБЯЗАТЕЛЬНО сделать резервную копию, даже если база уже сломана
- Установить в столбцах требуемые параметры исправления:
- Создавать объекты - 1С создаст объект заглушку, которая исправит ошибку. Вместо которой можно будет создать нужный объект.
- Битые ссылки либо удаляются либо создаются ссылки заглушки, которая никуда не ведет.
2) Загрузка резервной копии конфигурации
- Зайти в конфигуратор, нажать в меню на "Конфигурация"
- Выбрать пункт "Загрузить конфигурацию из файла" (Предварительно сохранить конфигурацию в файл и перед началом ОБЯЗАТЕЛЬНО сделать резервную копию). Такая загрузка заменяет только скелет базы.
Информационная база 1С состоит из 2 частей из данных и скелета конфигурации
Загрузка базы из конфигуратора в полном объеме:
- Зайти в конфигуратор, нажать в меню на "Администрирование"
- Выбрать пункт "Загрузить информационную базу" (Перед началом ОБЯЗАТЕЛЬНО сделать резервную копию) При такой загрузки идет полная замена данных
3) Утилита chdbfl.exe
Утилита chdbfl.exe расположена по пути "C:\Program Files
1cv8\<номер_версии_1с\bin\chdbfl.exe" и предназначенна для теста файла формата 1cd на ошибки
- Перейти в папку нужной версии 1С
- Зайти в папку "bin"
- Найти утилиту chdbfl.exe и дважды кликнуть по ней.
- Указываем имя базы данных.
- Если нужно исправление ошибок, то установить галочку в соответствующем поле.
- Нажать кнопку "Выполнить" (конфигуратор должен быть закрыт).
4) Подмена кеша
Если в конфигуратор нет возможности попасть и появляется ошибка
- Необходима чистая конфигурация той же версии что и разрушенная база (создаются бекапы базы)
- Очистить кеш полностью
- Запустить чистую базу в режиме конфигуратора и открыть конфигурацию. При этом 1С создает ее кеш.
- Открыть битую базу режиме конфигуратора и посмотреть кеш. (две папки с кешем)
- Закрыть все и подменить кеш битой базы на кеш живой базы.
- Запустить битую базу в режиме конфигуратора.
- Взять резервную копию текущей версии конфигурации и сделать полную загрузку.
- Очистить кеш снова.
Для очистки кеша:
В адресной строке пишем %appdata% и нажимаем кнопку "Еnter"
Возвращаемся на раздел выше, кликнув на "Appdata"
- Зайти в парку "Local"
- Перейти в папку "1С"
- Провалиться в папку "1Сv81"
Удалить все файлы с гуидами, кроме исключений указанных ниже. Аналогично удаляем файлы из папки "Roaming"
Когда осуществляется вход в конфигуратор, то автоматически формируется 2 одинаковых лога в папке Local и Roaming
Если есть кеш здоровой базы и кеш сломанной, то нужно скопировать наименование здоровой, удалить сам файл и переименовать кеш в сломанной в папках Local и Roaming
Резервное копирование файловых баз
- Копирование файлов баз данных
- Выгрузка информационной базы в файл
- Выгрузка конфигурации информационной базы в файл
1) Копирование файлов баз данных
При использовании файлового варианта 1С:Предприятия 8 можно организовать процесс создания резервной копии информационной базы путем простого копирования файла 1CV8.1CD в отдельный каталог или с использованием программного обеспечения для резервного копирования и восстановления данных. Следует учитывать, что для обеспечения целостности и согласованности данных во время создания резервной копии, работа пользователей с информационной базой должна быть запрещена, однако время, необходимое на создание резервной копии существенно меньше, чем при использовании выгрузки информационной базы в файл.
Копируется вся папка с базой или только файл с расширением 1CD. ВАЖНО, что бы все конфигураторы и 1С предприятия были закрыты, иначе может возникнуть ситуация потери данных.
Пример скрипта, который копирует файлы базы данных:
xcopy "D:\work\Send Base_work\repository" "D:\work\Send Base_work\backup\%date%" /f /s /i
Данный скрипт помещается в планировщик заданий для выполнения через равные промежутки времени
Операция "xcopy" копирует данные из папки "D:\work\Send Base_work\repository" в папку "D:\work\Send Base_work\backup\%date%", "%date%" - означает переменную текущую дату (сегодняшний день)
2) Выгрузка информационной базы в файл
- Зайти в конфигуратор и в меню нажать "Администрирование".
- Выбрать пункт "Выгрузить информационную базу" => При этом происходит полная выгрузка базы данных (конфигурация + данные).
3) Выгрузка конфигурации информационной базы в файл
- Зайти в конфигуратор и в меню нажать "Конфигурация".
- Выбрать пункт "Сохранить конфигурацию в файл" => Происходит выгрузка только конфигурации, без данных.
4) Аварийное восстановление клиент-серверных баз
- Если есть возможность попасть в конфигуратор:
- Тестирование и исправление
- Загрузка резервной копии конфигурации
- Если нет возможности попасть в конфигуратор:
- Восстановление средствами СУБД
Пункты тестирование и исправление и загрузка резервной копии конфигурации рассматривались ранее
5) Восстановление средствами СУБД
Данный способ применяется, когда зайти в конфигуратор нет возможности и возникает ошибка:
Одним из таких случаев, когда попасть в конфигуратор нельзя, является ошибка динамического обновления. Для восстановления базы нам понадобится:
- Резервная копия конфигурации информационной базы (cf)
- Доступ к серверу СУБД
- Открыть утилиту pgAdmin (либо «Среда SQL Server Management Studio», если у вас MS SQL) и зайти в нужную БД.
- Открыть схему "public".
- В списке "Таблицы" выбрать таблицу "Configsave" (хранятся сохраненные, но не примененные параметры конфигурации).
- Кликнуть правой кнопкой мышки по таблице "Configsave" и выбрать пункт "Очистить" => Удалятся все не сохраненные данные и ошибка может исчезнуть.
Если способ выше не помог, то применяется второй способ:
- Зайти в рабочую базу данных, со здоровой конфигурацией в клиент серверном формате. Чтобы ее получить, можно создать пустую БД и залить в нее резервную копию конфигурации, либо развернуть бекап базы данных.
- Найти таблицу "config" (файл содержит всю конфигурацию БД), кликнуть на нее правой кнопкой мышки.
- Выбрать пункт "Резервное копирование".
- Указать путь и наименование файла - копии.
- Нажать кнопку "Резервная копия".
- Зайти в сломанную базу.
- Найти таблицу "config".
- Кликнуть правой кнопкой мышки по таблице "сonfig" и выбрать пункт "Очистить".
- Кликнуть правой кнопкой мышки по таблице "сonfig" и выбрать пункт "Восстановить".
- Выбирать файл резервной копии.
- Нажать кнопку "Восстановить".
6) Резервное копирование клиент-серверных баз
- Резервное копирование сторонними программными средствами
- Резервное копирование скриптами
- Выгрузка информационной базы в файл
- Выгрузка конфигурации информационной базы в файл
Резервное копирование сторонними программными средствами
- Существует условно бесплатная утилита PostgreSQL Backup Tool.
- Позволяет настроить резервное копирование баз на FTP-сервер, в облако, на локальную или сетевую папку.
- Существует ограничение бесплатной версии – резервное копирование можно настроить только на две базы.
- Открыть программу
- Подключиться к серверу, нажав кнопку "Conect"
- Кликнуть по кнопке "Save & Close"
- Выбирать таблицу, поставив галочку
Указать, где будет хранится таблица
Настроить расписание
Резервное копирование скриптами
Понадобится:
- Бесплатный SFTP клиент WinSCP для копирования на FTP сервер
- Командная строка.
Порядок действий:
- Скачать и установить WinSCP с официального сайта
- Создать папку для временного хранения SQL дампов
- Написать скрипты следующего содержания
Скрипт для выгрузки SQL дампов ИБ
- cd /D C:\Program Files\PostgresPro 1C
9.6\bin - pg_dump -U postgres ZUP > D:\work\backups\%DATE%_ZUP.sql
- pg_dump -U postgres UNF > D:\work\backups\%DATE%_UNF.sql
- pg_dump -U postgres UT > D:\work\backups\%DATE%_UT.sql
- pg_dump -U postgres bu-2 > D:\work\backups\%DATE%_bu-2.sql
- pg_dump -U postgres bu-3 > D:\work\backups\%DATE%_bu-3.sql
- pg_dump -U postgres bu-serv > D:\work\backups\%DATE%_bu-serv.sql
- pg_dump -U postgres MWP > D:\work\backups\%DATE%_MWP.sql
Скрипт для выгрузки дампов на FTP сервер
- cd /d D:\work\backups
- "C:\Program Files (x86)\WinSCP\WinSCP.exe" /command ^
- "option confirm on" ^
- "option batch abort" ^
- "open ftp://u141841:dJic0o0ed02s3Jto@u141841.your-storagebox.de" ^
- "synchronize remote -criteria=time ..\backups\/arhiv" ^
- "cd /arhiv"^
- "rm *<4D"
Скрипт для очистки временной папки
- cd /d D:\work\backups
- del %DATE%_ZUP.sql
- del %DATE%_UNF.sql
- del %DATE%_UT.sql
- del %DATE%_bu-2.sql
- del %DATE%_bu-3.sql
- del %DATE%_bu-serv.sql
- del %DATE%_MWP.sql
Резервное копирование скриптами
Скрипты положить в папку для временного хранения SQL дампов (в данном примере это D:\work\backups\% Настроить планировщик задач на исполнение скриптов, например так:
https://www.youtube.com/watch?v=6HDFmCEZKTk&feature=youtu.be