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

Откуда: Москва
Сообщений: 63
Из-за дисковых ошибок упала БД. Бекапов как водится нет.

Все объекты создавались в своем tablespace. Можно ли как-то выбрать метаданные из этого файла dbf?

Сами данные не интерисуют вообще. Нужны вьюхи и пакеты. Особенно пакеты.

Помогите, очень надо! Спасибо!
3 май 10, 16:33    [8721138]     Ответить | Цитировать Сообщить модератору
 Re: Грохнулась БД. Выдрать метаданные.  [new]
-2-
Member

Откуда:
Сообщений: 15330
alex407
Все объекты создавались в своем tablespace. Нужны вьюхи и пакеты.
alter [view|package|package body] move tablespace новый_ТС;
3 май 10, 17:05    [8721206]     Ответить | Цитировать Сообщить модератору
 Re: Грохнулась БД. Выдрать метаданные.  [new]
alex407
Member

Откуда: Москва
Сообщений: 63
-2-
alter [view|package|package body] move tablespace новый_ТС;

Хм... Если б у меня была возможность выполнять запросы...
Но к базе я уже поключиться не могу.
3 май 10, 17:20    [8721239]     Ответить | Цитировать Сообщить модератору
 Re: Грохнулась БД. Выдрать метаданные.  [new]
Elic
Member

Откуда:
Сообщений: 29976
alex407
Все объекты создавались в своем tablespace. Можно ли как-то выбрать метаданные из этого файла dbf?
Нужны вьюхи и пакеты. Особенно пакеты.
RTFM The SYSTEM Tablespace (FAQ)
3 май 10, 17:38    [8721287]     Ответить | Цитировать Сообщить модератору
 Re: Грохнулась БД. Выдрать метаданные.  [new]
alex407
Member

Откуда: Москва
Сообщений: 63
Elic
RTFM The SYSTEM Tablespace (FAQ)

Мне конечно греет душу, что "The SYSTEM tablespace is always online when the database is open".
Только вот база открыться не может.

автор
SQL> ALTER DATABASE open
*
?????? ? ?????? 1:
ORA-01122: ???? ???? ?????? 4 ?? ?????? ???????? ??? ???????????
ORA-01110: ???? ?????? 4: 'D:\DATAORA\MKS\USERS01.DBF'
ORA-01207: ???? ?????? ????? ???????????? ????? - ?????? ??????????? ????


Извиняюсь за знаки вопроса. Думаю это результат работы программистов Oracle по руссификации продукта.
3 май 10, 18:02    [8721341]     Ответить | Цитировать Сообщить модератору
 Re: Грохнулась БД. Выдрать метаданные.  [new]
начинающий DBA
Guest
alex407

автор
SQL> ALTER DATABASE open
*
?????? ? ?????? 1:
ORA-01122: ???? ???? ?????? 4 ?? ?????? ???????? ??? ???????????
ORA-01110: ???? ?????? 4: 'D:\DATAORA\MKS\USERS01.DBF'
ORA-01207: ???? ?????? ????? ???????????? ????? - ?????? ??????????? ????


Извиняюсь за знаки вопроса. Думаю это результат работы программистов Oracle по руссификации продукта.

1. Вопросики не из-за программистов, а из-за того, что не отределена переменная NLS_LANG
2. Т.к. накрылось ТП USERS, то в режиме mount сделайте его offline и попытайтесь открыть базу.
3 май 10, 18:19    [8721382]     Ответить | Цитировать Сообщить модератору
 Re: Грохнулась БД. Выдрать метаданные.  [new]
alex407
Member

Откуда: Москва
Сообщений: 63
начинающий DBA,

Пытался сделать "alter tablespace users offline;" когда база в состоянии mount.
Делать offline tablespace'у можно только, если база в состоянии open. Если я правильно понял ошибку ora-01109.
3 май 10, 18:43    [8721403]     Ответить | Цитировать Сообщить модератору
 Re: Грохнулась БД. Выдрать метаданные.  [new]
начинающий DBA
Guest
А так?
startup mount;
ALTER DATABASE DATAFILE 'D:\DATAORA\MKS\USERS01.DBF' OFFLINE;
3 май 10, 19:07    [8721435]     Ответить | Цитировать Сообщить модератору
 Re: Грохнулась БД. Выдрать метаданные.  [new]
SY
Member

Откуда: Middlebury, CT USA
Сообщений: 10039
alex407
начинающий DBA,

Пытался сделать "alter tablespace users offline;" когда база в состоянии mount.
Делать offline tablespace'у можно только, если база в состоянии open. Если я правильно понял ошибку ora-01109.


Shutdown the database. Take a backup. Then:

1. startup mount
2. alter database datafile 'datafile for tablespace users' offline drop; -- repeat for each corrupt datafile
3. alter database open


SY.
3 май 10, 19:09    [8721438]     Ответить | Цитировать Сообщить модератору
 Re: Грохнулась БД. Выдрать метаданные.  [new]
alex407
Member

Откуда: Москва
Сообщений: 63
Это не прошло, выдало ora-01145:
ALTER DATABASE DATAFILE 'D:\DATAORA\MKS\USERS01.DBF' OFFLINE;

Сделал, как посоветовал SY:
alter database datafile 'datafile for tablespace users' offline drop;

Получил то же, что и с Users, только на этот раз с тем файлом, в котором храниться то, что мне нужно:
автор
ORA-01122: ???? ???? ?????? 5 ?? ?????? ???????? ??? ???????????
ORA-01110: ???? ?????? 5: 'D:\DATAORA\MKS\EXP.DBF'
ORA-01207: ???? ?????? ????? ???????????? ????? - ?????? ??????????? ????

Думаю, мы вернулись к моему начальному вопросу. Можно ли выдрать из EXP.DBF какими-либо утилитами метаданными, т.к. он похоже битый?
3 май 10, 19:29    [8721472]     Ответить | Цитировать Сообщить модератору
 Re: Грохнулась БД. Выдрать метаданные.  [new]
начинающий DBA
Guest
Код процедур хранится в ТП SYSTEM, поэтому надо как подсказал SY, отключать все плохие файлы кроме SYSTEM. ...тогда сможете вытащить свои коды.
3 май 10, 19:36    [8721482]     Ответить | Цитировать Сообщить модератору
 Re: Грохнулась БД. Выдрать метаданные.  [new]
alex407
Member

Откуда: Москва
Сообщений: 63
EXP.dbf удалил. Теперь дошли до:
автор
ORA-00314: ???????? 2 ???????? 1, ????????? ???. # ?? ?????????????
ORA-00312: ??????????? ???????? 2 ???????? 1: 'D:\DATAORA\MKS\REDO02.LOG'

ORA-00314 говорит: The online log is corrupted or is an old version. Action: Find and install correct version of log or reset logs.

Что делать? Удалять или делать reset logs (и как)?
3 май 10, 19:55    [8721529]     Ответить | Цитировать Сообщить модератору
 Re: Грохнулась БД. Выдрать метаданные.  [new]
alex407
Member

Откуда: Москва
Сообщений: 63
Удалось перевести базу в состояние open. Много чего делал по многу раз и наконец получилось.

Нашел программу, с помощью которой смог выдрать все метаданные из system01.dbf:
http://www.recovery-for-oracle.com/EN/
Умеет генерить скриптики.

Всем спасибо за участие!
3 май 10, 22:18    [8721920]     Ответить | Цитировать Сообщить модератору
 Re: Грохнулась БД. Выдрать метаданные.  [new]
andreymx
Member

Откуда: Запорожье
Сообщений: 54375
alex407,

на будущее - используйте систему контроля версий
с бэкапами
:)
3 май 10, 22:54    [8722009]     Ответить | Цитировать Сообщить модератору
 Re: Грохнулась БД. Выдрать метаданные.  [new]
Bfink
Member

Откуда: Москва
Сообщений: 2797
andreymx,

Ха! А если база сама меняет свои метаданные? Как APEX?
4 май 10, 05:23    [8722465]     Ответить | Цитировать Сообщить модератору
 Re: Грохнулась БД. Выдрать метаданные.  [new]
andreymx
Member

Откуда: Запорожье
Сообщений: 54375
Bfink
andreymx,

Ха! А если база сама меняет свои метаданные? Как APEX?
Тоже никто не мешает сбрасывать в систему контроля версий... если надо
4 май 10, 07:57    [8722576]     Ответить | Цитировать Сообщить модератору
 Re: Грохнулась БД. Выдрать метаданные.  [new]
Bfink
Member

Откуда: Москва
Сообщений: 2797
andreymx,

про то и разговор - контроль версий обычно лишнее, а вот Backup - необходим всегда
4 май 10, 08:32    [8722637]     Ответить | Цитировать Сообщить модератору
 Re: Грохнулась БД. Выдрать метаданные.  [new]
andreymx
Member

Откуда: Запорожье
Сообщений: 54375
Bfink
andreymx,

про то и разговор - контроль версий обычно лишнее, а вот Backup - необходим всегда
где и кем Вы работаете, что "контроль версий обычно лишнее"?
))
4 май 10, 08:35    [8722642]     Ответить | Цитировать Сообщить модератору
 Re: Грохнулась БД. Выдрать метаданные.  [new]
Bfink
Member

Откуда: Москва
Сообщений: 2797
andreymx,

контроль версий необходим, в основном, для разработки и тестирования. В продуктивных аналитических и WEB базах, он обычно не нужен, в то же время объекты в таких базах создаются в большом количестве и автоматически/ полуавтоматически. Поэтому необходим Backup.
В случае использования системы контроля версий этой системе тоже нужен Backup.
4 май 10, 08:53    [8722689]     Ответить | Цитировать Сообщить модератору
 Re: Грохнулась БД. Выдрать метаданные.  [new]
alex407
Member

Откуда: Москва
Сообщений: 63
andreymx
на будущее - используйте систему контроля версий
с бэкапами
:)

Да это понятно. Базе от роду 2 месяца, но нароботано там довольно много. Несколько раз хотел настроить бекапы, но все на что-то отвлекался (да и не делал я этого никогда в Oracle, т.к. раньше только под MS SQL писал). Вот и дождался :-(
4 май 10, 10:17    [8723055]     Ответить | Цитировать Сообщить модератору
 Re: Грохнулась БД. Выдрать метаданные.  [new]
Вячеслав Любомудров
Member

Откуда: Владивосток
Сообщений: 18482
alex407
нароботано там довольно много. Несколько раз хотел настроить бекапы, но все на что-то отвлекался
Порнуха, это конечно захватывает, но не до такой же степени...
4 май 10, 10:18    [8723065]     Ответить | Цитировать Сообщить модератору
 Re: Грохнулась БД. Выдрать метаданные.  [new]
tru55
Member

Откуда: СПб
Сообщений: 19790
alex407

Да это понятно. Базе от роду 2 месяца, но нароботано там довольно много. Несколько раз хотел настроить бекапы, но все на что-то отвлекался (да и не делал я этого никогда в Oracle, т.к. раньше только под MS SQL писал). Вот и дождался :-(


Угу...
А еще программисты не хранят код созданных ими пакетов у себя...
Типа своих трудов не жалко
4 май 10, 10:59    [8723303]     Ответить | Цитировать Сообщить модератору
 Re: Грохнулась БД. Выдрать метаданные.  [new]
SY
Member

Откуда: Middlebury, CT USA
Сообщений: 10039
tru55
Угу...
А еще программисты не хранят код созданных ими пакетов у себя...
Типа своих трудов не жалко


Kindergarden. What means "у себя". You work for one company, they work for a different company? No matter what Bfink is saying, self-respecting company MUST use CMS. Web app or not only affects what is stored in CMS. And CMS is foundation for release management which is also a must in a self-respecting company.

SY.
4 май 10, 14:53    [8725100]     Ответить | Цитировать Сообщить модератору
 Re: Грохнулась БД. Выдрать метаданные.  [new]
tru55
Member

Откуда: СПб
Сообщений: 19790
SY
Kindergarden


:))
Оно может и так, но...

Я не против системы контроля версий. Но на практике случаев разных много.
Во-первых, я работал в несофтовых компаниях, где о таких вещах просто не задумывались (не говорю, что везде). Во-вторых, даже в софтовых не на всех разработках используется.
Есть просто небольшие разработки, выполняемые одним человеком. И т.д. и т.п.
Когда я начинал работать на PC, никакой сети у нас не было, были 7 отделных компов. Я каждый вечер перед уходом домой сохранял сделанное за день на дискете (как правило, хранил 3 последние версии). Когда стал работать с сеткой, то у меня была копия на компе, копия на файл-сервере, но раз - два в месяц таки сохранялся на дискету.
Если данные, находящиеся на сервере (или в системе контроля версий) пропадут по разгильдяйству админа, его конечно накажут, но программисту от этого не легче - его все равно заставят восстановить программу. Поэтому локальную копию (и копию на файл-сервере) всего, что делал я, всегда храню. Можно считать это фобией, можно - Ленью, т.е. нехотением заниматься повторным написанием программы в форс-мажорном случае :))

Сообщение было отредактировано: 4 май 10, 15:47
4 май 10, 15:44    [8725464]     Ответить | Цитировать Сообщить модератору
 Re: Грохнулась БД. Выдрать метаданные.  [new]
andrey_anonymous
Member

Откуда: Москва
Сообщений: 18337
tru55
Если данные, находящиеся на сервере (или в системе контроля версий) пропадут по разгильдяйству админа, его конечно накажут, но программисту от этого не легче - его все равно заставят восстановить программу.

SVN рулит - и на сервере вся история, и локально последняя копия.
...а на сервере базу тоже бэкапят ежличе :)
4 май 10, 15:50    [8725510]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Oracle Ответить