Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Firebird, InterBase Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2 3   вперед  Ctrl      все
 Невозможно восстановление БД  [new]
bsa1959
Member

Откуда: Минск
Сообщений: 165
Firebird 2.5.8
Ведется разработка БД. Соотвественно - меняются структура таблиц, процедуры и т.д. и т.п. Короче все меняется.
Сделал резервирование БД.
Попытка восстановления на другом компе окончилась неудачей.
Проверил оригинальную БД. Не компиляться три процедуры из-за изменения структур таблиц.
Поправил их. Сделал копию - восстановление на другом компе прошло удачно....
Так и должно быть? Т.е. все объекты должны быть валидными?
P.S. Просто в ORACLE эти объекты были бы помечены как INVALID и восстановление прошло бы удачно.
4 апр 19, 09:25    [21852054]     Ответить | Цитировать Сообщить модератору
 Re: Невозможно восстановление БД  [new]
Vlad F
Member

Откуда:
Сообщений: 816
bsa1959
<...> P.S. Просто в ORACLE эти объекты были бы помечены как INVALID и восстановление прошло бы удачно.

Голосуйте в трекере за соотв. тикет, он там, если не ошибаюсь, достаточно давно.
Может, когда-то и сделают.
4 апр 19, 09:49    [21852087]     Ответить | Цитировать Сообщить модератору
 Re: Невозможно восстановление БД  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 9634
bsa1959,

есть такое дело.

Хотя у меня ни одна процедура ещё не ломалась из-за изменения структуры таблиц.
В 90% случаев некорректные изменения метаданных пресекаются на взлёте если у них есть зависимости.
Что касается инвалидов, то соответствующий флаг (RDB$VALID_BLR) есть в системных таблицах, но он не отображается в IBE особым образом, и отслеживает далеко не все случаи. Подробнее https://www.ibase.ru/files/firebird/langref25rus/index.html#valid
4 апр 19, 09:52    [21852091]     Ответить | Цитировать Сообщить модератору
 Re: Невозможно восстановление БД  [new]
Vlad F
Member

Откуда:
Сообщений: 816
Симонов Денис,

IBE это как раз и можно было бы простить, а вот gbak-у за то, что походу кладет на этот флаг с прибором, простить уже труднее, имхо.
4 апр 19, 09:59    [21852107]     Ответить | Цитировать Сообщить модератору
 Re: Невозможно восстановление БД  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 9634
Vlad F,

я вроде дал описание что именно отслеживает этот флаг. ИХМО он мог бы делать отслеживать большее
4 апр 19, 10:13    [21852139]     Ответить | Цитировать Сообщить модератору
 Re: Невозможно восстановление БД  [new]
bsa1959
Member

Откуда: Минск
Сообщений: 165
Менялись еще процедуры, вызовы которых были в этих трех процедурах...
Вы должны понять - процесс разработки.
Но хотелось бы иметь копию БД.
А так - мявкнулся у меня комп. Копия вроде есть. Но ее нет.... Совсем напротив как в фильме....
4 апр 19, 10:18    [21852150]     Ответить | Цитировать Сообщить модератору
 Re: Невозможно восстановление БД  [new]
Vlad F
Member

Откуда:
Сообщений: 816
Симонов Денис,

А я не зря про соотв. тикет в трекере, который по-прежнему по-большому счету не реализован.
Хотя определенные подвижки (в виде флага)) в данном направлении есть.
4 апр 19, 10:21    [21852160]     Ответить | Цитировать Сообщить модератору
 Re: Невозможно восстановление БД  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 9634
Vlad F,

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

Наверное можно было бы сделать в gbak, чтобы в случае невалидности процедуры просто восстанавливался её текст без BLR, а этот флаг взводился бы как инвалид. Но для этого надо сделать, его более универсальным в плане отслеживания инвалидов. А то будет какое-то половинчатое решение.
4 апр 19, 10:22    [21852167]     Ответить | Цитировать Сообщить модератору
 Re: Невозможно восстановление БД  [new]
kdv
Member

Откуда: iBase.ru
Сообщений: 28015
bsa1959,

в процессе разработки при бэкапе нужно еще иметь копию скрипта БД (isql -x ...).
Это полезно для сравнения метаданных.
Кроме того, в приведенном случае в базе не восстановились триггеры и процедуры из бэкапа.
Что можно было бы легко исправить, накатив их из скрипта, и активировав индексы.
4 апр 19, 10:26    [21852174]     Ответить | Цитировать Сообщить модератору
 Re: Невозможно восстановление БД  [new]
Vlad F
Member

Откуда:
Сообщений: 816
Симонов Денис,

О чем и речь, о чем и речь..))
Делать, вне всякого сомнения, надо, но.. некому. (с) Мимопроходящий))
4 апр 19, 10:26    [21852175]     Ответить | Цитировать Сообщить модератору
 Re: Невозможно восстановление БД  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 9634
bsa1959,

копии можно делать и другим способом, кстати он более быстрый. По большому счёту предназначен gbak не для резервных копий, а для миграции. Но исторически сложилось так, что людям привычней делать копии более старым способом, да и nbackup до недавнего времени был глючным (в 2.0 и 2.1 вообще опасным, да и в 2.5 правилось множество багов).
4 апр 19, 10:27    [21852177]     Ответить | Цитировать Сообщить модератору
 Re: Невозможно восстановление БД  [new]
bsa1959
Member

Откуда: Минск
Сообщений: 165
Симонов Денис
bsa1959,

копии можно делать и другим способом, кстати он более быстрый. По большому счёту предназначен gbak не для резервных копий, а для миграции. Но исторически сложилось так, что людям привычней делать копии более старым способом, да и nbackup до недавнего времени был глючным (в 2.0 и 2.1 вообще опасным, да и в 2.5 правилось множество багов).

Так это совет или предостережение пользоваться nbackup?
4 апр 19, 10:35    [21852195]     Ответить | Цитировать Сообщить модератору
 Re: Невозможно восстановление БД  [new]
Мимопроходящий
Member

Откуда: бурятский тундрюк, эсквайр
Сообщений: 30037

на 3-ку надо переползать

Posted via ActualForum NNTP Server 1.5

4 апр 19, 10:44    [21852211]     Ответить | Цитировать Сообщить модератору
 Re: Невозможно восстановление БД  [new]
bsa1959
Member

Откуда: Минск
Сообщений: 165
Мимопроходящий
на 3-ку надо переползать

А чем это этому(см. пост 1) поможет?
4 апр 19, 10:48    [21852223]     Ответить | Цитировать Сообщить модератору
 Re: Невозможно восстановление БД  [new]
Мимопроходящий
Member

Откуда: бурятский тундрюк, эсквайр
Сообщений: 30037

04.04.2019 10:48, bsa1959 пишет:
> А чем это этому(см. пост 1) поможет?

в 3-ке nbackup уже таки причёсан.
в отличие от 2.Х

Posted via ActualForum NNTP Server 1.5

4 апр 19, 11:00    [21852239]     Ответить | Цитировать Сообщить модератору
 Re: Невозможно восстановление БД  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 9634
bsa1959,

в 3.0 хотя бы добавление новых полей с ограничением NOT NULL по уму сделана, что устраняет одну из причин "не восстановимого" бекапа с помощью gbak. Да и nbackup стабильно работает.
4 апр 19, 12:23    [21852440]     Ответить | Цитировать Сообщить модератору
 Re: Невозможно восстановление БД  [new]
bsa1959
Member

Откуда: Минск
Сообщений: 165
Но Вы все поняли...
Сейчас буду свою рабочую базу блюдеть....
Нормальных решений в FB нет.
4 апр 19, 12:36    [21852483]     Ответить | Цитировать Сообщить модератору
 Re: Невозможно восстановление БД  [new]
bsa1959
Member

Откуда: Минск
Сообщений: 165
Симонов Денис
bsa1959,

в 3.0 хотя бы добавление новых полей с ограничением NOT NULL по уму сделана, что устраняет одну из причин "не восстановимого" бекапа с помощью gbak. Да и nbackup стабильно работает.

При чем здесь NOT NULL?
4 апр 19, 12:38    [21852484]     Ответить | Цитировать Сообщить модератору
 Re: Невозможно восстановление БД  [new]
hvlad
Member

Откуда:
Сообщений: 10405
Мимопроходящий,

не помню проблем с nbackup после 2.5.6 (примерно).

Для БД разработчика его вполне можно применять, как по мне.
4 апр 19, 12:45    [21852500]     Ответить | Цитировать Сообщить модератору
 Re: Невозможно восстановление БД  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 47677

bsa1959
Вы должны понять - процесс разработки.

Не, лично я ни черта не понимаю. Разработка БД обычно ведётся путём изменения
мастер-скрипта создания БД, который хранится в системе контроля версий. Сама БД при этом
вторична и её потеря - фактически плановое явление.

Posted via ActualForum NNTP Server 1.5

4 апр 19, 12:51    [21852517]     Ответить | Цитировать Сообщить модератору
 Re: Невозможно восстановление БД  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 9634
bsa1959,

при том, что "невосстановимый" бекап сделанный с помощью gbak может появится по многим случаям. Неаккуратное добавление нового NOT NULL поля в таблицу самое частое из них.

Как сказал hvlad nbackup вполне можно использовать на БД разработчика, ибо она всё равно не под нагрузкой.
Я даже скажу больше можно тупо сервис гасить и делать файловую копию.
4 апр 19, 13:09    [21852559]     Ответить | Цитировать Сообщить модератору
 Re: Невозможно восстановление БД  [new]
Basil A. Sidorov
Member

Откуда:
Сообщений: 9181
А зачем останавливать сервис, чтобы делать файловую копию?
Или не хочется делать nbackup -lock/-unlock ?
4 апр 19, 13:12    [21852564]     Ответить | Цитировать Сообщить модератору
 Re: Невозможно восстановление БД  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 9634
Basil A. Sidorov,

ну это для лентяев, которым не хочется с nbackup разбираться.
А остановить сервис надо для успокоения нервов, ибо отключение всех клиентов от БД, ещё не обозначает полную остановку работы с ней ядром Firebird. Кое-что может работать в фоне некоторое время.
4 апр 19, 13:15    [21852572]     Ответить | Цитировать Сообщить модератору
 Re: Невозможно восстановление БД  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 47677

О чём вы говорите? Аффтар явно копается оглуплятором непосредственно в продакшен базе. Он
не может останавливать сервер, ведь с ним работают пользователи.

Posted via ActualForum NNTP Server 1.5

4 апр 19, 13:18    [21852576]     Ответить | Цитировать Сообщить модератору
 Re: Невозможно восстановление БД  [new]
Vlad F
Member

Откуда:
Сообщений: 816
bsa1959
Менялись еще процедуры, вызовы которых были в этих трех процедурах...
Вы должны понять - процесс разработки.
Но хотелось бы иметь копию БД.
А так - мявкнулся у меня комп. Копия вроде есть. Но ее нет.... Совсем напротив как в фильме....

У тебя оригиналный невосстанавливаемый (не проходящий бекап/ресторе) вариант БД еще остался?
Можешь проверить на нем кое что? А именно, - состояние флага RDB$VALID_BLR у означенных выше объектов.
4 апр 19, 13:30    [21852585]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2 3   вперед  Ctrl      все
Все форумы / Firebird, InterBase Ответить