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

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

Теории было много, но теория не подкрепленная практикой сама по себе бесполезна! Попробуем создать свое табличное пространство и поэкспериментируем с ним. Начнем с простого (помните команду CREATE TABLESPACE?) Запускайте SQL*Plus и вперед:

Мы с вами создали наше первое табличное пространство! Давайте посмотрим как это отразилось на самой системе. Сначала можете посмотреть содержимое каталога C:ORACLEORADATAPROBATEMP — и соответственно видим:

Эти данные чисто гипотетические у вас может быть другое! У меня данные с моего рабочего сервера Win2003 и Oracle 9.0.1.0, так что принимайте как есть! Главное видно, что файл появился и звать его ONE.DAT! Такое расширение я дал не случайно для того, чтобы не путать с основными файлами системы. У них расширение как это не смешно DBF. И каталог, я сделал загодя отдельный для того, чтобы не вносить сумятицу рабочий каталог сервера. Теперь давайте сделаем еще одно табличное пространство с другим именем и другими опциями создания:

А теперь в каталоге уже два файла:

Для полноты картины посмотрим системное представление dba_data_files. Описание его полей можно получить дав такую команду:

Теперь дадим вот такой запрос к этому представлению:

Все верно! У нас есть два табличных пространства, которые мы только что создали! Кстати я провожу все эти действия в схеме SYS и поэтому будьте внимательнее при удалении объектов! Или можете дать системные привилегии на создание и удаление табличных пространств MILLER-у, но какое из зол меньшее выбирать вам! 🙂 Теперь давайте переведем одно из табличных пространств в OFFLINE:

Попробуем дать предыдущий запрос снова:

Видите все вроде верно, но поле BYTES для табличного пространства TBLSPCMYONE пустое! Все верно оно в режиме OFFLINE! Убедимся в этом дав такой запрос к системному представлению DBA_TABLESPACES:

Вот теперь все понятно, к стати обратите внимания на поля CONTENTS, LOGGING помните предыдущий шаг? 🙂 Вернем пространство TBLSPCMYONE в ONLINE:

Читайте также:  Как сделать скриншот экрана в яндекс браузере

Теперь дадим такую команду:

Теперь пространство TBLSPCMYTWO в отключке! Попробуем что-либо создать на нем в таком режиме! Например табличку:

Все привет! ORA-01542 настигло нас! Вернем его в нормальное состояние и создадим таблицу:

Прекрасно! А, вот теперь попробуйте удалить пространство из словаря данных БД:

Вот теперь нам заявляют с помощью ORA-01549, что раздел не пуст! Можно конечно дать команду типа:

Но, чтобы не раздражать пользователя SYS (все же он DBA!) удалим табличку, а потом файл пространства в каталоге:

Мои рабочие заметки

Подписаться на этот блог

Follow by Email

Табличное пространство (Tablespace) в ORACLE

  • Получить ссылку
  • Facebook
  • Twitter
  • Pinterest
  • Электронная почта
  • Другие приложения
  • Получить ссылку
  • Facebook
  • Twitter
  • Pinterest
  • Электронная почта
  • Другие приложения

Комментарии

Отправить комментарий

Популярные сообщения из этого блога

КБК. КВФО — Код вида финансового обеспечения (деятельности)

TRUNCATE/ DELETE/ DROP. Или как очистить таблицу

Дано: Таблица MSG (сообщения) с большим количеством записей.
CREATETABLEmsg( idINTEGERNOTNULLPRIMARYKEY,descriptionCHAR(50)NOTNULL, date_createDATE);
Задача:
Необходимо очистить таблицу от данных/
Решение: Для решения данной задачи есть несколько способов. Ниже описание и пример каждого из них.
Самый простой способ (первый вариант) — выполнение оператора удаления записи. При его выполнении вы будете видеть результат (сколько записей удалено). Удобная штука когда необходимо точно знать и понимать правильные ли данные удалены. НО имеет недостатки перед другими вариантами решения поставленной задачи.

DELETE FROMmsg;—Удалит все строки в таблице—Удалит все строки у которых дата создания "2019.02.01" DELETE FROMmsg WHEREdate_create=’2019.02.01′;

Второй вариант. Использование оператораDML для очистки всех строк в таблице.
TRUNCATETABLEmsg;
При этом несколько особенностей использования данного оператора:
Его нет в Firebird, поэтому пользуемся первым и третьим вариантом.После выпо…

Объекты базы данных

RDBMS Oracle организует данные в виде нескольких тщательно разработанных структур, которые обеспечивают эффективное хранение и выборку информации. Правильное определение этих объектов гарантирует создание высокопроизводительной базы данных.

Читайте также:  Как поставить безопасный режим на андроиде самсунг

Табличные пространства

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

Создание табличных пространств

Как правило, табличные пространства для базы данных определяет администратор базы данных (DBA — database administrator) с использованием команды

Хотя табличные пространства обычно создает DBA, автору пришлось столкнуться с несколькими ситуациями, когда разработчику пришлось выполнить некоторые из так называемых традиционных функций DBA. Поэтому в эту книгу включена информация для DBA, которая может потребоваться разработчикам. Мы полагаем, что если разработчик прикладных программ Oracle знаком со многими задачами, стоящими перед DBA, он сможет использовать мощную базу данных Oracle более эффективно.

CREATE TABLESPACE tablespace_name

[DEFAULT STORAGE storage]

В приведенной выше команде create tablespace в качестве имени табличного пространства может применяться любая комбинация алфавитно-цифровых символов и символов подчеркивания (длиной до 30 символов). Спецификация файла с указанием имени и размера файла операционной системы имеет следующий вид:

AUTOEXTEND ON [NEXT integer [К | M]

[MAXSIZE UNLIMITED | integer [К | M] ] где filename — любое допустимое имя файла операционной системы (включая полный путь) и integer определяет размер файла с необязательным символом для обозначения Кб или Мб. Если требуемый файл уже существует, необходимо использовать необязательный параметр reuse (при этом размер этого файла не может быть изменен).

Использование параметра reuse позволяет перезаписывать существующий файл. Поэтому неосторожное применение этого параметра может серьезно повредить базу данных в случае неверно указанного имени файла. Oracle не проверяет, используется ли файл для другого табличного пространства перед тем, как его перезаписать. Обычно параметр REUSE рекомендуется применять только при переформировании базы данных или табличного пространства.

К спецификации файла Oracle версии 7.2 было добавлено фраза autoextend. При ее использовании для табличного пространства автоматически распределяется дополнительная память. До появления версии 7.2 табличные пространства имели фиксированный размер, и их расширение возлагалось на DBA. Если введены параметры NEXT и maxsize, этот файл будет расширяться с шагом, равным NEXT, вплоть до величины, определенной параметром MAXSIZE.

Читайте также:  Литиевый аккумулятор 12 вольт для шуруповерта

Фраза DEFAULT STORAGE в команде CREATE tablespace указывает объем пространства, которое вновь созданные объекты будут занимать внутри табличного пространства. Формат фразы storage приведен ниже.

(INITIAL integer [К | М] NEXT integer [К | М]

MINEXTENTS integer MAXEXTENTS integer)

Эти параметры задают начальный размер и объем наращивания табличного пространства. Начальный размер (initial) определяет объем пространства, которое отводится под первый экстент для любого объекта. Следующий размер (next) задает объем пространства для дополнительных экстентов объекта. Параметр PCTLNCKREASE (со значением от 0 до 100) определяет скорость роста для каждого дополнительного экстента. Параметр minetents задает минимальное количество экстентов, которые должны быть первоначально созданы для объекта, a maxextents ограничивает рост таблицы максимальным количеством экстентов. Максимальное значение для maxextents зависит от операционной системы и определяется стандартным размером блока базы данных. И наконец, база данных может быть создана в режиме online или offline (иными словами, открытой для доступа или закрытой).

В следующем примере создается интерактивное табличное пространство user_tools с использованием файла размером 250 Мб. Заданные по умолчанию размеры таблицы определяют ее начальный размер 256 Кб и будут добавляться дополнительные экстенты по 64 Кб со скоростью роста 50%.

CREATE TABLESPACE USER_TOOLS

DATAFILE ‘o:dbs ools.dbf ‘ SIZE 250M AUTOEXTEND ON NEXT 50M MAXSIZE UNLIMITED DEFAULT STORAGE (INITIAL 256K NEXT 64K PCTINCREASE 50 MINEXTENTS 1 MAXEXTENTS 249)

Если к табличному пространству добавляется таблица с использованием параметров, заданных по умолчанию, экстенты расширяются, как показано в таблице 12.1.

Таблица 12.1. Рост объектов в табличном пространстве.

Ссылка на основную публикацию
Сколько человек сидит в одноклассниках
Mail.Ru Group исследовала и сравнила аудитории самых популярных в России социальных сетей — «Одноклассники», «Мой Мир», «ВКонтакте», Facebook и Twitter....
Сигнал flash в телефоне panasonic
● 19.12.08 13:08 - krepsky - 9 / 19.12.08 Два дня ломаю голову… Такая ситуация - купили партию телефонов Panasonic...
Сигналы материнской платы при загрузке
BIOS (Basic Input/Output System – базовая система ввода-вывода). Программа системного уровня, предназначенная для первоначального запуска компьютера, настройки оборудования и обеспечения...
Сколько четырехзначных чисел можно составить из нечетных
Условие Решение 1 Решение 2 Решение 3 Поиск в решебнике Популярные решебники Издатель: Н. Я. Виленкин, В. И. Жохов, А....
Adblock detector