|
Восстановление журнала транзакций из БД
|
|||
---|---|---|---|
#18+
База Sybase ASA Version 8.0.3.5267 Устанавливается в комплекте со сторонней программой управления устройства. т.е. какая-то урезаная версия. В один прекрасный день обнаружил, что программа управления не работает и увидел ошибку о том, что закончилось место на диске. Нехитрым методом нашёл, что файл лога транзакций базы вырос до 31 гига. Поскольку это всего лишь лог - удалил его руками и запустил базу..... база не запустилась с ошибкой о том, что не смог найти журнал транзакций. Чешу репу. Пробовал подставить аналогичный файл с другого компа, но ничего хорошего не выяснилось. Теперь все поржали над моими аля админскими методами и давайте прикинем, что можно сделать... Собственно вопросы: 1. зачем программе журнал? почему ей не создать новый файл и продолжать писать туда? 2. если файл журнала транзакций содержит все команды которыми создавалась база, то теоретически возможно из файла db сгенерить журнал, который будет содержать все команды по созданию и наполнению базы данных. если возможно, то как это сделать? Есть у меня подозрение, что Sybase Central мог бы помочь мне сгенерить этот файл журнала с нуля, но поскольку у меня урезаня версия, то ничего такого у меня нету под рукой. + не уверн, что найду подходящую версию этой программы. Что скажите? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.01.2012, 17:17 |
|
Восстановление журнала транзакций из БД
|
|||
---|---|---|---|
#18+
Могу посоветовать старую пословицу: Семь раз отмерь, один раз отрежь А если серьезно - попробуй запустить принудительно без лога...а вдруг.... ... |
|||
:
Нравится:
Не нравится:
|
|||
12.01.2012, 17:23 |
|
Восстановление журнала транзакций из БД
|
|||
---|---|---|---|
#18+
И еще... погугли нет насчет того для чего нужен бд нужен лог и что туда пишется ... |
|||
:
Нравится:
Не нравится:
|
|||
12.01.2012, 17:25 |
|
Восстановление журнала транзакций из БД
|
|||
---|---|---|---|
#18+
Насколько я понимаю сейчас модно не читать и не изучать софт с которым работаешь. dbeng8 -f имя базы может Вам помочь. а для вечерних медитаций очень рекомендую dbeng8 -h ... |
|||
:
Нравится:
Не нравится:
|
|||
12.01.2012, 17:29 |
|
Восстановление журнала транзакций из БД
|
|||
---|---|---|---|
#18+
12.01.2012 18:17, sas-koval пишет: > Нехитрым методом нашёл, что файл лога транзакций базы вырос до 31 гига. > Поскольку это всего лишь лог - удалил его руками и запустил базу..... > база не запустилась с ошибкой о том, что не смог найти журнал транзакций. Гениально... > Теперь все поржали над моими аля админскими методами и давайте прикинем, > что можно сделать... Отрезать тебе руки, чтобы ты никогда не лез в то, в чём не разбираешься. > 1. зачем программе журнал? Нужен. > 2. если файл журнала транзакций содержит все команды которыми > создавалась база, то теоретически возможно из файла db сгенерить журнал Нельзя. Подумай хоть 5 минут. > Что скажите? Безнадёжен. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
12.01.2012, 17:34 |
|
Восстановление журнала транзакций из БД
|
|||
---|---|---|---|
#18+
roleks, принудительно без журнала - не запускается и собственно выдаёт ошибку. Про цель журнала транзакции уже почитал и везде написано, что он нужен для того, чтоб восстановить данные в самой БД на любой момент времени с момента создания БД, например в случае крушения БД. Но нигде не написано, что не имея журнала (как бы истории) невозможно пользоваться БД. pand, не могу сказать за всех, но я работаю не с БД, а с устройством. а для его управления уж используется БД без участия пользователя. И при этом к программе управления не прилагается утилит, которые помогали бы работать с базой. нет такой кнопки типа "усечь файл журнала транзакций". никто не предусмотрел, что в процессе работы журнал может вырасти до 31 гига. про dbeng8 впервые слышу от вас и попробую разобраться с тем, для чего он нужен и где я его смогу достать. В любом случае за совет Спасибо. Dim2000, я не удивлён, что обрету и такой отзыв :) > Отрезать тебе руки, чтобы ты никогда не лез в то, в чём не разбираешься. ведь если не лезть, то никогда и не разберёшься. > Нужен. я уж понял это. если знаешь - объяснил бы. если лишь бы ответить, то лучше открой другую тему форума... > Нельзя. Подумай хоть 5 минут. Думал. более 5-ти минут. если это не описание структуры БД, то это просто лог. и он не нужен программе. он нужен только если что-то пойдёт "не по плану". а если в нём содержится описание структуры БД, то он не должен называться *.log . он не должен называться "журналом". > Безнадёжен. твоё мнение учтено. ждём ещё мнений. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.01.2012, 18:35 |
|
Восстановление журнала транзакций из БД
|
|||
---|---|---|---|
#18+
хелп из десятой вермсии, но и для восьмой должно подойти Syntax { dbsrv10 | dbeng10 } -f ... Applies to All operating systems and servers. Remarks If there is no transaction log, the database server performs a checkpoint recovery of the database and then terminates—it doesn't continue to run. You can then restart the database server without the -f option for normal operation. If there is a transaction log in the same directory as the database, the database server performs a checkpoint recovery, and a recovery using the transaction log, and then terminates—it doesn't continue to run. You can then restart the database server without the -f option for normal operation. Specifying a cache size when starting the server can reduce recovery time. See Backup and Data Recovery. Example The following command forces the database server to start and perform a recovery of the database mydatabase.db: dbeng10 mydatabase.db -f ... |
|||
:
Нравится:
Не нравится:
|
|||
12.01.2012, 19:39 |
|
Восстановление журнала транзакций из БД
|
|||
---|---|---|---|
#18+
т.е. запустить базу с ключем -f, подождать пока отработает процесс её проверки и создасться новый лог маленького размера. потом запускать базу/устройство в обычном режиме. Корректно лог резать надо по-другому. Изучайте раздел хелпа по backup. Тут на форуме уже обсуждалось,коакой командой резать лог. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.01.2012, 19:42 |
|
Восстановление журнала транзакций из БД
|
|||
---|---|---|---|
#18+
Круто, спасибо за совет. Про правильный метод уже начитался. хочется эту запустить с наименьшим сопротивлением. Народ. Если вдруг есть у кого под рукой этот dbeng для 8-й версии - бросьте плиз на sas-koval_mail_ru. Реально за 10 минут не нашёл и дальше буду искать уже завтра :) ... |
|||
:
Нравится:
Не нравится:
|
|||
12.01.2012, 19:58 |
|
Восстановление журнала транзакций из БД
|
|||
---|---|---|---|
#18+
sas-kovalКруто, спасибо за совет. Про правильный метод уже начитался. хочется эту запустить с наименьшим сопротивлением. Народ. Если вдруг есть у кого под рукой этот dbeng для 8-й версии - бросьте плиз на sas-koval_mail_ru. Реально за 10 минут не нашёл и дальше буду искать уже завтра :) Аффтар жжет. А как же у тебя БД поднимается? Подсказка: если нет dbeng, ищи dbsrv ... |
|||
:
Нравится:
Не нравится:
|
|||
13.01.2012, 11:10 |
|
Восстановление журнала транзакций из БД
|
|||
---|---|---|---|
#18+
sas-kovalpand, не могу сказать за всех, но я работаю не с БД, а с устройством. а для его управления уж используется БД без участия пользователя. И при этом к программе управления не прилагается утилит, которые помогали бы работать с базой. нет такой кнопки типа "усечь файл журнала транзакций". никто не предусмотрел, что в процессе работы журнал может вырасти до 31 гига. про dbeng8 впервые слышу от вас и попробую разобраться с тем, для чего он нужен и где я его смогу достать. В любом случае за совет Спасибо. Если Вы пользователь тогда зачем полезли. Если у Вас не заводится машина у Вас ведь не возникает желание болгаркой вырезать абсолютно не нужные железки под капотом , они то к колесам никакого отношения не имеют. sas-kovalDim2000, я не удивлён, что обрету и такой отзыв :) Он сегодня в хорошем расположении духа :) Думаю, не буду оригинальным, но лучшее средство от гемороя мозга это чтение документаций. вас должна спасти одна из двух пуль dbsrv8 -f имя-базы dbeng8 -f имя-базы один из этих файлов у вас обязательно должен быть. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.01.2012, 13:29 |
|
Восстановление журнала транзакций из БД
|
|||
---|---|---|---|
#18+
pand, dbsrv8 у меня был и остаётся. на нём и поднимается. не знал я, что это похожие программы и что ключи от одной подойдут и другой. В итоге скачал и установил полную версию БД, забрал с неё dbeng8, запустил с ключём -f и минут через 20 база ожила. Прога ожила и резервную копию файлов уже сделал. Всем большое спасибо, вопрос закрыт. По вопросу "почему полез" хочу сказать, что в этих делах у нас идут ко мне. Был бы админ - решали бы вместе. А так - решал вопрос надеясь на интуицию :) а интуиция подсказала, что расширение log добавляется к тем файлам, которые не имеют критической важности. Ну да ладно.. признаю свою вину, обещаю в следующий раз с базами быть аккуратней и закрываю тему. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.01.2012, 15:05 |
|
|
start [/forum/topic.php?fid=55&msg=37611601&tid=2010191]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
161ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
78ms |
get tp. blocked users: |
2ms |
others: | 253ms |
total: | 538ms |
0 / 0 |