Как восстановить только одну таблицу с бекапа?
Модераторы: kdv, Alexey Kovyazin
Как восстановить только одну таблицу с бекапа?
Сломалась таблица. Есть ошибочная страница где должны быть данные (page is of wrong type (expected 5, found 0) ).
Известно что на ошибочной странице 400 записей с primary key между 3350 по 3750.
1. Как восстановить только одну таблицу из бекапа (restore всей базы долго)?
2. Как заставить базу забыть про ошибочную страницу и записи в ней?
Известно что на ошибочной странице 400 записей с primary key между 3350 по 3750.
1. Как восстановить только одну таблицу из бекапа (restore всей базы долго)?
2. Как заставить базу забыть про ошибочную страницу и записи в ней?
-
- Заслуженный разработчик
- Сообщения: 1436
- Зарегистрирован: 15 сен 2005, 09:05
Re: Как восстановить только одну таблицу с бекапа?
IBBackupSurgeon
IBSurgeon
IBSurgeon
Re: Как восстановить только одну таблицу с бекапа?
1. восстановить бэкап в другую базу, перелить нужную таблицу в исходную базу
2. никак. базу нужно починить, сделать ей бэкап/рестор, работать дальше.
что значит "рестор всей базы долго? Какой размер базы (бэкапа) и долго - это сколько?
2. никак. базу нужно починить, сделать ей бэкап/рестор, работать дальше.
что значит "рестор всей базы долго? Какой размер базы (бэкапа) и долго - это сколько?
Re: Как восстановить только одну таблицу с бекапа?
размер базs 12 ГБ. железо не самое новое.
бекап около 30-40 минут.
рестор не делал около полтора года. но думаю 2 часа надо на restore.
Хотел починить базу без backup/restore, чтоб без перерывов в работе.
Намного быстрее перелить 400 записей, вместо полного backup/restore.
1. backup сделал на другой машине без востановления индексов. записи достал.
2. если сделать gfix -mend и не делать backup/restore, а просто залить в таблицу утерянные записи? Или так нельзя?
бекап около 30-40 минут.
рестор не делал около полтора года. но думаю 2 часа надо на restore.
Хотел починить базу без backup/restore, чтоб без перерывов в работе.
Намного быстрее перелить 400 записей, вместо полного backup/restore.
1. backup сделал на другой машине без востановления индексов. записи достал.
2. если сделать gfix -mend и не делать backup/restore, а просто залить в таблицу утерянные записи? Или так нельзя?
Re: Как восстановить только одну таблицу с бекапа?
достали записи - хорошо. Но влить их в битую базу - увы. Если gfix починит, и при бэкапе (с опцией -g) не будет проблем, ну, на свой страх и риск можете продолжать работать. Но вообще битой базе после любой починки положено backup/restore делать. Иначе где потом что еще поломается или сервер заткнется - неизвестно.
если у вас бэкап идет 30-40 минут, то рестор будет 3-5 часов. Особенно если вы неправильно бэкап-рестор делаете
http://www.ibase.ru/devinfo/backupspeed.htm
http://www.ibase.ru/devinfo/backupspeed2.htm
http://www.ibase.ru/devinfo/restorespeed.htm
обратите внимание на время бэкапа и рестора, и на железо, которое используется в тесте.
И ПК на эту таблицу у вас тоже кривой, его перестраивать надо обязательно, раз вы b/r делать не хотите. А вот перестроится ли он - вопрос.
если у вас бэкап идет 30-40 минут, то рестор будет 3-5 часов. Особенно если вы неправильно бэкап-рестор делаете
http://www.ibase.ru/devinfo/backupspeed.htm
http://www.ibase.ru/devinfo/backupspeed2.htm
http://www.ibase.ru/devinfo/restorespeed.htm
обратите внимание на время бэкапа и рестора, и на железо, которое используется в тесте.
И ПК на эту таблицу у вас тоже кривой, его перестраивать надо обязательно, раз вы b/r делать не хотите. А вот перестроится ли он - вопрос.
Re: Как восстановить только одну таблицу с бекапа?
Большое спасибо за советЬІ!
После gfix -mend, теперь gfix -v -full в лог пишет:
Page 2759095 is an orphan
Ночной backup прошол нормально.
pk - попробую пересоздать для єксперимента.
Потом сделаю backup/restore.
Есть еще один вопрос.
Здесь http://www.ibase.ru/devinfo/gbak.htm ничего не сказано о скорости backup/restore в Linux через Services API,
а здесь http://www.ibase.ru/devinfo/restorespeed.htm написано что
ВЬІходит нет смЬІсла в ключе -se в Linux или все таки стоит его использовать?
После gfix -mend, теперь gfix -v -full в лог пишет:
Page 2759095 is an orphan
Ночной backup прошол нормально.
pk - попробую пересоздать для єксперимента.
Потом сделаю backup/restore.
Есть еще один вопрос.
Здесь http://www.ibase.ru/devinfo/gbak.htm ничего не сказано о скорости backup/restore в Linux через Services API,
а здесь http://www.ibase.ru/devinfo/restorespeed.htm написано что
локальный протокол на Linux работает как embedded, и равнозначен Services API
ВЬІходит нет смЬІсла в ключе -se в Linux или все таки стоит его использовать?
-
- Заслуженный разработчик
- Сообщения: 1436
- Зарегистрирован: 15 сен 2005, 09:05
Re: Как восстановить только одну таблицу с бекапа?
Локальный протокол использовать на Линухе - чревато боком с правами пользователя. Потому не рекомендуется.
Re: Как восстановить только одну таблицу с бекапа?
как сказал DS, зависит от прав доступа. Без -se и без указания имени хоста (даже localhost) работать будет как embedded, то есть делать бэкап будет фактически gbak, с его правами доступа.Выходит нет смысла в ключе -se в Linux или все таки стоит его использовать?
По скорости - да, на линуксе embedded равнозначно -se.