|
|
|
Получение информации из табличных пространств
|
|||
|---|---|---|---|
|
#18+
Здравствуйте! Простите за небольшой крик души. Мне недалече поставили очень интересную задачу. Суть ее в том, чтобы создать базу на основе имеющихся файлов табличных пространств(файлов с расширением DBF). Сколько я успел вычитать из различных источников, файлы DBF Oracle "особенные" и в отличие от стандарта DBF их нельзя просто взять и открыть MS EXCEL. С другой стороны, в них хранится всё: таблицы, ключи и т.д. И вот у меня вопрос к сообществу: возможно ли это сделать? Если ли средства Oracle, чтобы получить информацию из этих dbf файлов? Если я смогу получить хотя бы содержимое таблиц, это уже будет победа на мой взгляд. Благодарю за внимание. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2018, 18:33 |
|
||
|
Получение информации из табличных пространств
|
|||
|---|---|---|---|
|
#18+
Да всё предназначение СУБД Oracle состоит в получении и записи информации в эти файлы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2018, 18:37 |
|
||
|
Получение информации из табличных пространств
|
|||
|---|---|---|---|
|
#18+
DmSideЗдравствуйте! Простите за небольшой крик души. Мне недалече поставили очень интересную задачу. Суть ее в том, чтобы создать базу на основе имеющихся файлов табличных пространств(файлов с расширением DBF). Сколько я успел вычитать из различных источников, файлы DBF Oracle "особенные" и в отличие от стандарта DBF их нельзя просто взять и открыть MS EXCEL. С другой стороны, в них хранится всё: таблицы, ключи и т.д. И вот у меня вопрос к сообществу: возможно ли это сделать? Если ли средства Oracle, чтобы получить информацию из этих dbf файлов? Если я смогу получить хотя бы содержимое таблиц, это уже будет победа на мой взгляд. Благодарю за внимание. Файлы ТП в оракле не "особенные", они вообще не имеют никакого отношения к "стандарту" DBF. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2018, 18:38 |
|
||
|
Получение информации из табличных пространств
|
|||
|---|---|---|---|
|
#18+
DmSideвозможно ли это сделать?Даже хоть какой-то успех не гарантирован. А в случае чайника - вообще труба. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2018, 18:44 |
|
||
|
Получение информации из табличных пространств
|
|||
|---|---|---|---|
|
#18+
DmSide, Мессир прочитайте 1 главу Oracle Concepts и начнёте понимать во что Вы собираетесь ввязаться. кратко, очень грубо и упрощённо: База данных Oracle - набор файлов + набор процессов dbf файлы - бинарные файлы с данными, принадлежат одному из табличных пространств + system табличное пространство - системный словарь объектов базы + undo табличное пространство - сегменты отката транзакций + redo файлы - журналы опережающей записи + дополнительные файлы temp, bfile и некоторые другие Нужно разделять логический уровень: - объект, - табличное пространство, - схема, - запись и физический уровень: файл блок Во время работы, СУБД формирует так называемые SCN (System Change Number) - временные метки. Один и тот же блок /набор записей в нем может в один и тот же момент времени в базе может иметь несколько незафиксированных состояний (с разным SCN). В момент фиксации commit, этот блок пишется в redo, и commit complete сессия получает только в момент, когда вектор измененния данных запишется на диск в файл redo. При этом собственно измененный блок файла запишется на свое место впоследствии, когда это будет удобно для СУБД (checkpoit). Так называемая отложенная запись. незафиксированные данные хранятся в cache block, при этом, старые данные (которые используются при откате/rollback) пищутся в логическом виде (вектор изменения) в undo В случае сбоя, при старте, база сначало, записывает все изменения хранящиеся в redo на блоки табличных пространств (файлов) и докатывает их на один момент времени/SCN Выполняет физическое согласование файлов После этого, для логического согласования, штатным образом откатывает незавершенные транзакции используя информацию из undo. И только после этого база открывается и можно получить данные из СУБД. Таким образом, для того, чтобы открыть базу для чтения, Вам необходимо: 1) ПО СУБД Oracle именно той версии и той же ОС (не совсем так, но не будем сейчас на этом останавливаться), на которой работала база (Включая патчи) 2) обеспечить согласованность всего набора файлов, то есть иметь набор файлов данных + набор redo для физического согласования базы. Чтобы поднять оставшийся ПОЛНЫЙ! набор файлов, нужно иметь навыки DBA. Примерные объем бедствия: 2128449 Операция клонирования базы, чем то похожа на Вашу задачу. Удачи! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2018, 19:08 |
|
||
|
Получение информации из табличных пространств
|
|||
|---|---|---|---|
|
#18+
DmSide. Мне недалече поставилиТы не так понял постановку. А может просто тебя далече послали. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2018, 19:25 |
|
||
|
Получение информации из табличных пространств
|
|||
|---|---|---|---|
|
#18+
DmSide, х.з. что там у тебя за задача и что за файлы есть в наличии. Но вдруг.... Вдруг - это "холодный" бэкап? Тогда можно попробовать варианты отсюда ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2018, 19:27 |
|
||
|
|

start [/forum/topic.php?fid=52&fpage=124&tid=1884400]: |
0ms |
get settings: |
12ms |
get forum list: |
19ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
55ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
40ms |
get tp. blocked users: |
1ms |
| others: | 256ms |
| total: | 404ms |

| 0 / 0 |
