Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

postgresql восстановление из резервной копии

postgresql восстановление из резервной копии
Я
   Александр111
 
06.08.20 - 14:51
Имеется резервная копия.
При восстановлении с помощью pgadmin в чистую (новую) базу все ок.
При восстановлении в рабочую базу - ошибка.
В 1с сервере блокировки на рабочую базу установлены.
С postgre раньше не работал.
Куда копать?
   Garykom
 
1 - 06.08.20 - 15:36
(0) копать в остановку сервера 1С
   bolero
 
2 - 06.08.20 - 15:39
(0) есть три вида людей: кто не делает бэкапы, кто уже делает, и кто теперь еще и проверяет, что из него можно восстановиться (c)

не переживай, просто перед восстановлением база должна быть пустая

например на всякий случай схороняешь рабочую, делаешь новую пустую:
alter database ut rename to ut_backup_crashed;
create database ut;

но если ты прям на рабочую уже пытался накатить бэкап, скорее всего ей кирдык
   Philix
 
3 - 06.08.20 - 15:39
(0) Восстановление базы из бэкапа postgresql только в пустую базу. После восстановления можешь на сервере приложений 1С изменить имя БД на свежевосстановленную.
   Garykom
 
4 - 06.08.20 - 15:40
(2) (3) это если надо чтобы сервер 1С продолжал с другими базами работать а можно просто (1)
   Philix
 
5 - 06.08.20 - 15:57
Вот тут (Резервное копирование и восстановление баз 1С на postgresql) наш коллега пару лет тому назад бодался с вопросом.
   Александр111
 
6 - 06.08.20 - 15:58
1 - не подходит, 2 - база экспериментальная, в mssql - можно
   Garykom
 
7 - 06.08.20 - 15:59
(6) в mssql тоже нельзя просто он ошибку не пишет
   Александр111
 
8 - 06.08.20 - 16:06
7- можно, не раз восстанавливал.
   Garykom
 
9 - 06.08.20 - 16:08
(8) как повезет а можно словить "ошибку формата потока"
   Garykom
 
10 - 06.08.20 - 16:09
"-На красный свет перекресток переходить нельзя!"
"-Фигня можно, не раз переходил..."
   Александр111
 
11 - 06.08.20 - 16:32
Какие средства для резервного копирования лучше использовать (для полной копии)?
   Fedor-1971
 
12 - 06.08.20 - 16:33
(8) Если к БД mssql нет сессий и используется режим Shared memory (для сетевых протоколов - могут быть служебные сессии, что-бы проверить живая БД или нет), то можно.

Но для рабочей я бы не рисковал восстанавливать данные при работающем сервере,
для тестов не вопрос, если что, можно прибить БД и залить в чистую всё равно никому не мешаешь
   Garykom
 
13 - 06.08.20 - 16:41
(12) как минимум при работающем сервере хз что происходит с нумераторами
   Fedor-1971
 
14 - 06.08.20 - 16:45
(11) Для файловой - копирование при сбитых сессиях (Закрыть соединение для работы регламентов и можно тупо закрыть шару и подождать пару минут)

Для SQL:
 - штатная выгрузка бэкапа
 - остановка сервера 1С, остановка сервисов SQL, простое копирование файлов БД, запуск назад сервисов

Есть приблуды для резевного копирования (например, Zabbix и прочие), но широкий функционал, в основном, предоставляется платно. Урезанные версии могут не иметь требуемого функционала, превышающего возможности bat или cmd

(13) достаточно легко чинится через ОбновитьНумерациюОбъектов();, иногда и  на работающей БД нумерация слетает. Но восстанавливать БД при работающем сервере 1С - зло и подстава подстав (не угадаешь что может сломаться)
   Lexandr
 
15 - 06.08.20 - 20:42
Останавливать сервер - это жестоко. Проще запретить новые сессии, снести базу , создать новую и залить туда бэкап. В идеале конечно надо проверит бэкап на тестовой, если есть возможность. А если уж решил заливать в существующую, то надо использовать ключ очистки таблиц, иначе ошибки. Да в инете есть скрипты для сохранения и восстановления баз postgresql.

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.