2015-02-04 2 views
1

В моей базе данных postgesql, к сожалению, я усекаю эту таблицу mail_group, а таблица удаляется из базы данных, как мне вернуть эту таблицу.I TRUNCATEd таблица. Как вернуть данные?

Пожалуйста, помогите мне, ожидая ответа.

Благодаря

+5

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

+0

, но у меня нет резервной копии – user88

+2

Затем данные не важно –

ответ

1

Кто-нибудь еще в том же положении: немедленно остановить вашу базу данных с pg_ctl stop -m immediate (immediate важно, что вам нужно, чтобы имитировать сбой и предотвратить контрольно-пропускной пункт), то не перезагружать Это.. Если у вас были параллельные транзакции, которые все еще продолжаются, вам может быть очень повезло, и PostgreSQL, возможно, еще не отсоединил файлы поддержки для таблицы, так что это может быть возможно.


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

A нормальный DELETE в PostgreSQL отмечает строки как удаленные, но фактически не удаляет данные немедленно, поэтому их можно часто восстанавливать, если вы немедленно остановите базу данных, и вы ничего не пишете в таблице.

Это не корпус для TRUNCATE. TRUNCATE удаляет базовые файлы, которые представляют таблицу базы данных из файловой системы.

Восстановление данных, если это вообще возможно, потребует судебного анализа вашего жесткого диска. Если данные действительно важны, выключите компьютер и возьмите образ диска на жестком диске. Ожидайте, что восстановление будет стоить несколько тысяч долларов, если это вообще возможно, так как вам понадобится тот, кто знает как (a) внутреннюю систему файловой системы, так и (b) внутренности PostgreSQL. Единственный человек, которого я могу думать о том, кто я знаю, обладает навыками, которые, возможно, смогут это сделать, вероятно, будет стоить от € 5000 до € 10000 за время, необходимое для такого рода работ. (Это не я).

Если у вас нет резервных копий, вы только что узнали очень дорогой урок.


Если кто-то читает это и DELETE d строк, пожалуйста, немедленно следовать инструкциям в corruption, так как первые этапы восстановления одинаковы. Это не поможет, если вы запустили TRUNCATE.

Смежные вопросы