Отображение файлов Oracle на физические устройства

Как найти и отобразить файлы Oracle на устройстве или в системе хранения RAIDЕсли ваши файлы Oracle являются файлами операционной системы, или же вы используете “чистую” (raw) файловую систему, совсем не сложно отобразить файлы данных на устройства, хранящие их. Однако если не отображать точки монтирования UNIX непосредственно на физические диски, трудно сказать, где именно в дисковой системе находится определенный файл Oracle. Чаще всего предприятия используют диспетчеры логических томов (Logical Volume Manager — LVM) и системы хранения на базе RAID, и узнать, где именно расположены определенные файлы в системе хранения, так просто не удастся.

Для сбора информации о файлах данных можно использовать динамические представления V$DATAFILE и V$TABLESPACE наряду с некоторыми другими. В основанных на LVM и RAID системах хранения операции ввода-вывода и файлы данных охватывают множество устройств хранения — составных частей сложной системы хранения. Как администратор баз данных, вы не можете определить, где именно хранятся объекты в стеке ввода-вывода.

Тем не менее, с помощью средства отображения файлов Oracle можно ознакомиться с физическим отображением всех файлов данных базы. Oracle предоставляет в ваше распоряжение API-интерфейсы отображения хранилищ, которые могут быть использованы поставщиками систем хранения для поставки соответствующих библиотек отображения, обеспечивающих полное отображение файлов данных. Используя средство отображения файлов, можно связать файлы данных с логическими устройствами и физическими приводами. Вдобавок можно отображать индивидуальные объекты, включая их файлы и определенные блоки, в которых они располагаются. Такого рода детальная информация поможет действительно понять и оценить производительность ввода-вывода.

Как найти и скопировать файлы базы данных Oracle на устройстве или в системе хранения

 

Архитектура отображения файлов

При использовании средства отображения файлов в игру вступает дополнительный фоновый процесс Oracle — FMON, — который запускается как часть группы фоновых процессов экземпляра. Этот фоновый процесс FMON будет запущен только в том случае, если значение инициализационного параметра FILE_MAPPING в файле init.ora или SPFILE установлено в TRUE. Этот параметр можно также установить динамически с помощью оператора ALTER SYSTEM.

Процесс FMON запускает процесс операционной системы по имени FMPUTL, который взаимодействует с библиотеками отображения, содержащими детальную информацию о местоположении файлов. Поставщики систем хранения предоставляют такие библиотеки, хотя и Oracle предлагает библиотеку отображения для систем хранения, произведенных EMC — ведущим поставщиком систем хранения. Процесс FMPUTL снабжает FMON информацией отображения для различных уровней стека ввода-вывода, и FMON хранит эту информацию в словаре данных Oracle.

Oracle использует структуры отображения для построения соответствий между файлами данных и их физическими воплощениями. В основе структуры отображения лежат компоненты Oracle, именуемые элементами, которые могут быть дисками RAID 0, RAID 1 или RAID 5, либо же просто целыми дисками. Процесс FMON собирает информацию о файлах и их элементах с помощью процесса FMPUTL и сохраняет эту информацию в SGA и некоторых представлениях словаря данных. Всякий раз, когда вы добавляете, удаляете или изменяете размеры файла данных, FMON изменяет информацию в SGA и связанных с ним таблицах V$.

 

Настройка отображения файлов

Теперь давайте рассмотрим, какие шаги необходимы для настройки отображения в базе данных Oracle.

 

Предоставление библиотеки отображения

Прежде всего, необходимо иметь библиотеку отображения от поставщика системы хранения, если это не EMC (библиотека отображения EMC поставляется Oracle). Затем потребуется отредактировать файл filemap.ora, расположенный в каталоге $ORACLE_HOME/rdbms/filemap/etc, в соответствии со спецификой системы. Путь к библиотеке отображения и имя поставщика должны быть добавлены в файл filemap.ora в виде следующей строки:

lib:название_поставщика:путь_к_библиотеке_отображения

Например, для библиотеки отображения VERITAS можно использовать следующую строку:

lib=VERITAS:/opt/VRTSdbed/lib/libvxoramap_32.so 

После внесения изменений в файл filemap.ora нужно либо перезапустить базу данных (если применяется файл init.ora, а не SPFILE), либо воспользоваться командой ALTER SYSTEM для установки инициализационного параметра FILE_MAPPING в TRUE.

SQL> ALTER SYSTEM SET FILE_MAPPING=TRUE;

 

Запуск отображения файлов

При установке инициализационного параметра FILE_MAPPING в TRUE Oracle не запускает отображение файлов автоматически. Это делается с помощью пакета DBMS_STORAGE_MAP, который, взаимодействуя с фоновым процессом Oracle FMON, выполняет операции отображения, заполняющие представления отображения. Если вы вызовете процедуру MAP_ALL из этого пакета, то информация отображения обо всех файлах данных базы будет собрана.

Для просмотра отображения между файлами данных Oracle и физическими элементами системы хранения можно соединять три динамических представления производительности — V$MAP_FILE, V$MAP_ELEMENT и V$MAP_FILE_IO_STACK. Можно просмотреть всю иерархию хранения от индивидуальной таблицы до диска в системе хранения.

 

Вас заинтересует / Intresting for you:

Поддерживаемые Oracle типы дан...
Поддерживаемые Oracle типы дан... 5682 просмотров Валерий Павлюков Wed, 24 Oct 2018, 08:00:37
Видеокурс по администрированию...
Видеокурс по администрированию... 10516 просмотров Илья Дергунов Mon, 14 May 2018, 05:08:47
Физические структуры базы данн...
Физические структуры базы данн... 7029 просмотров Дэйзи ак-Макарова Sun, 02 Sep 2018, 09:01:15
Создание базы данных Oracle
Создание базы данных Oracle 18816 просмотров Александров Попков Wed, 14 Nov 2018, 12:44:39
Войдите чтобы комментировать

AidaU аватар
AidaU ответил в теме #9124 30 июль 2018 10:57
Нашла, что нужно - пакет DBMS_STORAGE_MAP для отображения файлов Oracle
ildergun аватар
ildergun ответил в теме #9121 29 июль 2018 17:42
Помогло, спасибо!