Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
LAB_4_dbms.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
140.8 Кб
Скачать

Создание табличного пространства bigfile и smallefile

Новое в Oracle 10g – это табличные пространства с большими файлами (bigfile). Такие табличные пространства построены на одном файле данных или временном файле. Может содержать до 2^32 блоков данных. Такое табличное пространство, используя блоки данных по 8K, может быть размером до 32TB.

Такие табличные пространства используются для очень больших баз данных. Большие базы данных содержать сотни файлов данных для чтения или записи, и операции, которые должны изменять заголовки файлов данных (например, установка контрольных точек) занимают довольно продолжительное время. Если вы уменьшите количество файлов, то операции будут выполняться быстрее.

Для создания такого табличного пространства выполняется предложение CREATE с ключевым словом BIGFILE. Например:

CREATE BIGFILE TABLESPACE BIGTS DATAFILE '\db_1\oradata\bigts_01.dbf' SIZE 25G;

Табличное пространство smallfile – это новое название старых табличных пространств. В таких табличных пространствах, может быть несколько файлов данных. Каждый файл данных может быть из 2^22 блоков данных. Таким образом, файл данных в табличном пространстве, использующий блоки данных по 8K, ограничен размеров в 32GB. Табличное пространство может содержать до 1022 файлов данных. Табличные пространства SYSTEM и SYSAUX всегда создаются с маленькими файлами.

Такие табличные пространства создаются по умолчанию или явным указанием типа файлов (SMALLFILE). Например:

CREATE TABLESPACE SMALLTS DATAFILE '\db_1\oradata\smallts_01.dbf' SIZE 25G;

Или

CREATE SMALLFILE TABLESPACE SMALLTS DATAFILE '\db_1\oradata\smallts_01.dbf' SIZE 25G;

Работа с табличными пространствами, управляемыми Oracle

Oracle Managed Files (OMF) может облегчить администрирование файлов, используемых базой данных Oracle. Используя OMF, вы можете указывать операции в терминах табличного пространства, а не файлов операционной системы.

Для активации OMF установите в качестве значения параметра инициализации DB_CREATE_FILE_DEST название директории, в которой будут автоматически размещаться файлы данных. Например:

ALTER SYSTEM SET db_create_file_dest = '\db_1\oradata\OMF' SCOPE=BOTH;

При создании табличного пространства с использованием OMF имя файла данных можно опустить:

CREATE TABLESPACE TEST_TS;

Oracle создает файл данных с уникальным именем, зависящим от типа файла:

File Type

Format

Controlfiles

ora_%u.ctl

Redo Log Files

ora_%g_%u.log

Datafiles

ora_%t_%u.dbf

Temporary Datafiles

ora_%t_%u.tmp

Выбор управления экстентами

Для управления экстентами вы можете использовать локальное управление или старую технологию управления экстентами на основе словаря. Со словарным управлением экстентами, база данных отслеживает свободные и используемые экстенты в словаре данных, изменяя таблицы FET$ и UET$ рекурсивным SQL. Локальное управление используется по умолчанию, если не указано иное, и является предпочитаемым методом.

При локальном управлении табличными пространствами используются опции UNIFORM и AUTOALLOCATE.

Опция UNIFORM позволяет базе данных выделять и освобождать экстенты в табличном пространстве с одинаковым неизменяемым размером, который вы можете явно указать или использовать значение по умолчанию равное 1MB. Опция UNIFORM является опцией по умолчанию для временного (TEMPORARY) табличного пространства и не может быть указана для табличного пространства UNDO. Для создания согласованных экстентов 100MB используйте предложение EXTENT MANAGEMENT LOCAL UNIFORM SIZE 100M в предложении CREATE TABLESPACE. Например:

CREATE TABLESPACE TEST_TS DATAFILE '\db_1\oradata\TEST_TS_01.DBF'

SIZE 25G EXTENT MANAGEMENT LOCAL UNIFORM SIZE 100M;

Опция AUTOALLOCATE позволяет варьировать размер экстентов для каждого сегмента. Например, для Windows и Linux с блоками данных по 8KB, каждый сегмент содержит первые 16 экстентов по 64KB, затем размер экстентов увеличиваются до 1MB (для следующих 63 экстентов). Далее размер увеличивается до 8MB (для следующих 120 экстентов), затем 64MB и так далее для последующих сегментов. Этот алгоритм позволяет маленьким сегментам оставаться маленькими и большим сегментам позволяет расти без особого роста количества экстентов. AUTOALLOCATE лучше всего использовать для маленьких и больших таблиц.

Пример создания табличного пространства с опцией AUTOALLOCATE:

CREATE TABLESPACE TEST_TS DATAFILE '/u01/oradata/TEST_TS_01.DBF'

SIZE 25G EXTENT MANAGEMENT LOCAL AUTOALLOCATE;

Вы можете преобразовать управление табличным пространством с управления словарем на локальное управление и обратно с использованием PL/SQL пакета DBMS_SPACE_ADMIN. Как правило, табличное пространство SYSTEM и любое временное табличное пространство не может быть преобразовано с локального управления к устаревшему управлению на основе словаря.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]