Форум программистов, компьютерный форум, киберфорум
PostgreSQL
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.68/47: Рейтинг темы: голосов - 47, средняя оценка - 4.68
1 / 1 / 0
Регистрация: 12.09.2009
Сообщений: 80
1

Восстановление базы из файлов

02.05.2019, 20:33. Показов 9588. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте, нас атаковали хакеры и стёрли все дампы бэкапов, но у меня остался бэкап в виде копии файлов самой папки postgres с битым файлом pg_control, если я пытаюсь подменить всю папку то postgres ругается на pg_control, мол он пустой.
Помогите восстановить базу

Установлена PostgreSQL 11
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.05.2019, 20:33
Ответы с готовыми решениями:

Восстановление базы из дампа
Добрый день ув. форумчане . С ДБ знаком только недели 3 и то самоучка ). Мне прислали дамп...

Восстановление базы из dump
Доброго времени суток, Уважаемые. Подскажите, как восстанавливается база из дамп файла. когда...

Восстановление базы данных из резервной копии
Нужна помощь. Не удается восстановить базу данных с помощью файла .sql (рис. 1). До этого...

Хочу отключить восстановление системных файлов (не восстановление системы)
у меня есть своя программа календаря... и я хочу поставить её вместо файла system32/rundll32.exe...

6
1251 / 967 / 382
Регистрация: 02.09.2012
Сообщений: 2,989
05.05.2019, 14:44 2
Он совсем пустой, или что-то осталось?? Вообще в global что-нибудь осталось??
0
1 / 1 / 0
Регистрация: 12.09.2009
Сообщений: 80
05.05.2019, 14:50  [ТС] 3
Всё осталось кроме испорченого pg_control, но я смог его восстановить командой (забыл какой), но теперь проблема в том что возможно хакер удалил пользователей в СУБД, логин postgres не существует. Но... у меня есть файлы WAL, как я понял с помощью их можно восстановить БД, но я чёт не могу понять как. Есть документашка, но я не понял ничего)))
https://postgrespro.ru/docs/po... r-recovery
0
1251 / 967 / 382
Регистрация: 02.09.2012
Сообщений: 2,989
06.05.2019, 23:13 4
Цитата Сообщение от PaPaJon Посмотреть сообщение
но я смог его восстановить командой (забыл какой)
Вероятно это был pg_resetwal.... Надеюсь вы оставили копию данных и тренировались отдельно.
Цитата Сообщение от PaPaJon Посмотреть сообщение
возможно хакер удалил пользователей в СУБД, логин postgres не существует.
Просто так удалить этого пользователя нельзя. Вероятно что-то еще повреждено, либо этот пользователь переименован (поменян пароль). Чтобы не гадать, нужно приводить сюда сообщения из лога при старте базы.
Вот вы сейчас сбросили состояние wal через pg_resetwal, у вас появился какой-то pg_control файл, пробуйте базу дальше запускать, смотрите, что пишет в лог.
Цитата Сообщение от PaPaJon Посмотреть сообщение
Но... у меня есть файлы WAL, как я понял с помощью их можно восстановить БД, но я чёт не могу понять как. Есть документашка, но я не понял ничего
Чтобы пытаться воспользоваться этим механизмом, сначала нужно иметь валидный базовый бакап, на который накатывается журнал транзакций.
0
1 / 1 / 0
Регистрация: 12.09.2009
Сообщений: 80
06.05.2019, 23:21  [ТС] 5
Копия конечно есть...

1) Логи приводить откуда? из journalctl ?
2) Что значит "валидный базовый бакап"? Существует только копия файловой системы postgres.

Должен же быть способ восстановить базу, сама база в папке base есть! И WAL то же есть...Только я не знаю как восстановить всё это добро
0
1251 / 967 / 382
Регистрация: 02.09.2012
Сообщений: 2,989
06.05.2019, 23:40 6
Цитата Сообщение от PaPaJon Посмотреть сообщение
1) Логи приводить откуда? из journalctl ?
Нет. Когда база стартует, если стартует, конечно, она ведет свои логи, в которые пишет ошибки: почему не смогла стартовать. Вот эти логи и нужны. Где они лежат, зависит от вашей системы и настроек. Чаще всего это поддиректория log в директории с данными (не путать с другими похожими названиями). Но все зависит от ваших настроек в postgresql.conf.
Цитата Сообщение от PaPaJon Посмотреть сообщение
Что значит "валидный базовый бакап"?
Это образ директории с данными заранее подготовленный с помощью pg_basebackup (или ряда альтернативных методов).
В вашем случае при старте база будет сама переходить в режим восстановления (recovery mode) и пытаться накатывать транзакции из wal, которые еще можно накатить. Если там вообще осталось что накатывать после pg_resetwal.
Имейте в виду, что WAL работает по вполне определенным правилам. Если у вас там лежит сколько-то десятков гигабайт WAL-ов - это не значит, что там лежит вся ваша история и вы сейчас восстановитесь. Чтобы так был, нужно об этом было заранее беспокоиться (о чем и написано в приведенной вами ссылке).
0
1 / 1 / 0
Регистрация: 12.09.2009
Сообщений: 80
06.05.2019, 23:43  [ТС] 7
Спасибо, позже попробую
0
06.05.2019, 23:43
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.05.2019, 23:43
Помогаю со студенческими работами здесь

Восстановление Базы
При импорте данных в Базу случайно записали 'старую' дискету. Реально ли воостановить прежние...

Восстановление базы
Здравствуйте. Подскажите, пожалуйста, как поднять базу из бэкапа на другом компе. Бэкап...

Восстановление базы
Здравствуйте! Проконсультируйте пожалуйста по такому вопросу. Сразу извиняюсь за компьютерную...

Восстановление базы
Локальная база не открывалась, запустил утилитку chdbfl.exe из папки 1с для восстановления, она...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru