Прблема с восстановлением nbackup
Модератор: kdv
Прблема с восстановлением nbackup
При восстановлении даной утилитой инкрементной БД (если бэкапы выше 0-го уровня) не появляются новые (insert) записи а измененные (update) видны. Размер базы с исходной совпадает. В чем может быть проблема?
говорила мне мама . . .
сижу читаю форум , бездельничаю выходной все таки, и тут этот топик, давно хотел нбекап попробвать, почитал доку
база на 500 метров, бекапится влет =) , решил проверить чтоже будет если запустить 2 бекапа
получил отлуп
и теперь все время получаю отлуп =( дельта висит.
вопрос, как мне от нее избавится ?
попробовать ??
сервер 2,0,4
дельта не увеличивается, просто весит.
сижу читаю форум , бездельничаю выходной все таки, и тут этот топик, давно хотел нбекап попробвать, почитал доку
база на 500 метров, бекапится влет =) , решил проверить чтоже будет если запустить 2 бекапа
Код: Выделить всё
date && sudo nbackup-2.0 -B 0 ac /tmp/ac4.nbk & sudo nbackup-2.0 -B 0 ac /tmp/ac5.nbk && date
Код: Выделить всё
[
PROBLEM ON "begin backup".
unsuccessful metadata update
-Database is already in the physical backup mode
SQLCODE:-607
]
вопрос, как мне от нее избавится ?
попробовать
Код: Выделить всё
nbackup -N <база_данных>
сервер 2,0,4
дельта не увеличивается, просто весит.
нет только один, второй отыграл и вышел.hvlad писал(а):Что, оба экземпляра nbackup это сказали ?
до ключика -N не успел дойти вечером сделали бекап и поставили обновление структуры , на моменте толи шотдауна , толи обновления методаных, база свалилась с ошибками , разбираться не стали ушли на бакап. вроде все данные на месте.
как буду скучать еще раз попробую повторить на базе с нагрузкой =)
еще такой ньюанс - если для полученной базы сделать в IBExpert backup\restore, то записи появляются.hvlad писал(а):CORE-1876 относится к 2.1.0, в 2.0.х этой баги не было.D12 писал(а):Проверял на 2.0.0 и 2.0.4
Спасибо, скорее всего действительно в этом проблема.
Правда 2.0.4 имеет исправления других ошибок в nbackup
делаю бекап базы 0-го уровня.hvlad писал(а):Для начала точно опиши что делаешь и что получаешь.
в своей программе изменяю и инсертю данные.
делаю бекап 1-го уровня.
восстанавливаю через nbackup базу в новый файл.
в новой базе update-записи есть а insert-записей нет (после бекап\ресторе новой базы появляются и они тоже).
Как восстанавливаешь БД из бекапа ?D12 писал(а):делаю бекап базы 0-го уровня.hvlad писал(а):Для начала точно опиши что делаешь и что получаешь.
в своей программе изменяю и инсертю данные.
делаю бекап 1-го уровня.
восстанавливаю через nbackup базу в новый файл.
в новой базе update-записи есть а insert-записей нет (после бекап\ресторе новой базы появляются и они тоже).
Как ищешь новые записи в восстановленной БД и как обновлённые ?
Я не вижу в этом описании ни одного коммита.
восстанавливаю командой:hvlad писал(а): Как восстанавливаешь БД из бекапа ?
Как ищешь новые записи в восстановленной БД и как обновлённые ?
Я не вижу в этом описании ни одного коммита.
nbackup -u sysdba -p masterkey -r newbase.fdb level0.nbk level1.nbk
записи ищу и в программе и в таблицах через IBExpert.
коммит делается в программе, перед бекапом или восстановлением ее закрываю.
в оригинальной будет tx1 и tx2, в восстановленной только tx1.hvlad писал(а):tx1 update
tx2 insert
tx1 commit
tx3 begin backup
tx2 commit
tx3 commit
Вопрос на засыпку - что будет видно в оригинальной БД, а что - в восстановленной ?
PS Я в пустоту больше писать не буду.
но у меня получается ситуация
tx1 update
tx2 insert
tx1 commit
tx2 commit
tx3 begin backup
tx3 commit
вообщем сори если задолбал, закроем эту тему.
ты точно уверен, что после вставки данных делается коммит? Не пробовал отключить все приложения, после этого сделать инкремент, и посмотреть, что будет в этом случае?
Просто диалог какой-то странный. Подробности из тебя тянуть надо, тебе самому, похоже, такие странные глюки пофиг, и т.д.
Ведь вставленные записи они видны по commit. Если они не видны при ресторе инкремента, значит
а) вставленные записи не попали в инкремент
б) не попало в инкремент изменение состояния транзакции (в коммит), в которой записи были вставлены
И, разумеется, если записей не видно, то после b/r эти записи никак не могут стать видимыми. Потому что backup - это та же самая твоя аппликуха, которая стартует транзакцию и читает данные. А если она их не видит, значит никакая другая транзакция эти записи тоже видеть не может в принципе.
Я здесь допускаю только один вариант - в оригинальной базе битый индекс. Т.е. при ресторе индекс создается заново, и записи попадают в выборку по индексу.
Просто диалог какой-то странный. Подробности из тебя тянуть надо, тебе самому, похоже, такие странные глюки пофиг, и т.д.
Ведь вставленные записи они видны по commit. Если они не видны при ресторе инкремента, значит
а) вставленные записи не попали в инкремент
б) не попало в инкремент изменение состояния транзакции (в коммит), в которой записи были вставлены
И, разумеется, если записей не видно, то после b/r эти записи никак не могут стать видимыми. Потому что backup - это та же самая твоя аппликуха, которая стартует транзакцию и читает данные. А если она их не видит, значит никакая другая транзакция эти записи тоже видеть не может в принципе.
Я здесь допускаю только один вариант - в оригинальной базе битый индекс. Т.е. при ресторе индекс создается заново, и записи попадают в выборку по индексу.