Лабораторная работа №3

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

а) Создать табличное пространство №1, со следующими свойствами:


Бригады

Вариант

1,2,3,10,13

Один файл данных, размером 20 мегабайт, авторасширяемый.

Выделение экстентов одинакового размера по 48 килобайт. Автоматическое управление пространством в сегментах.

4,5,6,11,14

Два файла данных, размером 30 мегабайт, неавторасширяемые.

Выделение экстентов одинакового размера по 96 килобайт. Автоматическое управление пространством в сегментах.

7,8,9,12

Один файл данных, размером 10 мегабайт, авторасширяемый, максимальный размер – 80 мегабайт.

Автоматическое определение размера выделяемых экстентов. Автоматическое управление пространством в сегментах.


б) Задать расположение OMF файлов, создать табличное пространство №2 с OMF-файлом и со следующими свойствами:


Бригады

Вариант

1,6,7,12

«Большое» табличное пространство. Размер файла данных 50 мегабайт. Автоматическое управление пространством в сегментах.

2,5,8,11,14

«Большое» табличное пространство, размер не указывается, автоматическое управление пространством в сегментах. После создания, увеличить размер файла на 15 мегабайт. Установить авторасширение файлов данных.

3,4,9,10,13

Обычное табличное пространства, размер файла не указывается, автоматическое управление пространством в сегментах. После создания добавить еще один файл размером 20 мегабайт.



в) Создать табличное пространство №3 с OMF-файлом и со следующими свойствами:

НЕ нашли? Не то? Что вы ищете?

Бригады

Вариант

1,2,7,12

Выделение экстентов одинакового размера по 32 килобайта. Ручное управление пространством в сегментах.

3,4,9,10,11

Выделение экстентов одинакового размера по 192 килобайта. Автоматическое управление пространством в сегментах.

5,6,7,8,13,14

Автоматическое определение размера выделяемых экстентов. Ручное управление пространством в сегментах.



в) Получить из представлений dba_tablespaces и dba_data_files, для созданных табличных пространств следующую информацию:

Название табличного пространства, его состояние, пути и размеры, входящих в него файлов данных, параметры управления экстентами, пространством в сегментах, является ли «bigfile» табличным пространством.

г) Для созданных табличных пространств получить количество свободного пространства. Сравнить с данными о размерах файлов данных из пункта в).

2.  Операции  с таблицами

а) Создать пользователя, который сможет использовать табличные пространства, созданные в пункте 1. Подключиться под учетной записью этого пользователя создать две таблицы:

Таблица №1 включает столбцы:

       Числовой автонумеруемый, с первичным ключем;

       Строковый столбец типа varchar2, с индексом.

Параметры хранения таблицы:

Бригады

Вариант

1,6,7,12

Размерность varchar2 столбца 400.  Таблица в табличном пространстве №1. PCTFREE – 10.

2,5,8,11,14

Размерность varchar2 столбца 1000. Таблица в табличном пространстве №2. PCTFREE – 40.

3,4,9,10,13

Размерность varchar2 столбца 1500. Таблица в табличном пространстве №1. PCTFREE – 30.


Параметры хранения индекса:


Бригады

Вариант

1,3,9,14

Индекс в табличном пространстве №2, PCTFREE - 30

2,5,8,11,12

Индекс в табличном пространстве №1, PCTFREE - 20

4,6,7,10,13

Индекс в табличном пространстве №3, PCTFREE - 50



Таблица №2 включает столбцы:

       Числовой автонумеруемый, с первичным ключем;

       Числовой столбец;

Строковый столбец типа varchar2 размерности 400;

       lob – столбец.

Таблицу разместить в табличном пространстве, занимающем наибольший объем (из трех созданных).

Параметры хранения lob-столбца:

Бригады

Вариант

1,2,7,11,14

lob-столбец расположен в том же табличном пространстве что и таблица

3,5,9,12

lob - столбец расположен в табличном пространстве №1

4,6,8,10,13

lob-столбец расположен в табличном пространстве №3


Выполнить одновременное заполнение данными таблиц №1 и №2

Заполнение данными таблицы №1:


Бригады

Вариант

1,6,7,12

20000 строк, длина значения вставляемого в строковый столбец  - 100% от его размерности.

2,5,8,11,14

30000 строк, длина значения вставляемого в строковый столбец  - 80% от его размерности.

3,4,9,10,13

40000 строк, длина значения вставляемого в строковый столбец  - 60% от его размерности.


Заполнение данными таблицы №2:


Бригады

Вариант

1,6,4,12

10000 строк, размер файла помещаемого в lob - столбец – 200kb

2,3,9,10,14

15000 строк, размер файла помещаемого в lob - столбец – 400kb

5,7,8,11,13

20000 строк, размер файла помещаемого в lob - столбец – 150kb


Для одновременного заполнения данными использовать python-сценарий из указаний (пункт 2.4).

г)  Для созданных объектов (включая lob-столбец) получить информацию:

       1) Для каждого сегмента - название, тип сегмента, табличное пространство, объем в байтах и блоках, кол-во экстентов, средний размер экстента в блоках.

2) фрагментацию сегментов данных (на основе представления dba_extents).

Привести информацию о свободном пространстве для всех созданных табличных пространств.

д) Выполнить удаление данных из созданных таблиц.


Бригады

Вариант

1,6,4,12

Таблица №1 – первые 50% строк. Таблица №2 – удалить каждую вторую строку.

2,3,9,10,14

Таблица №1 – последние 30% строк. Таблица №2 – первые 30% строк.

5,7,8,11,13

Таблица №1 – должна остаться только каждая 10 строка. Таблица №2 – последние 50% строк.

(чтобы получить каждую n-ю строку используйте в where блоке функцию mod(id, n) = 0, где id – автонумеруемый столбец идентификатор).

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

е) Выполнить сжатие пространства таблиц


Бригады

Вариант

1,4,9,10,13

Для таблицы №1 и таблицы №2 с опцией cascade

3,5,7,11

Для таблицы №1 без опции cascade и таблицы №2 с опцией cascade

2,6,8,12,14

Для таблицы №1 с опцией cascade и таблицы №2  без опции cascade


Привести информацию о свободном пространстве для всех созданных табличных

пространств.

Привести информацию из пункта г)

ж) Переместить для таблицы №2 в табличное пространство №1:

Бригады

Вариант

1,6,7,12

Сегмент данных и все остальные сегменты

2,5,8,11,14

Индекс и lob-сегмент.

3,4,9,10,13

Сегмент данных и lob-сегмент.


Привести информацию о свободном пространстве для всех созданных табличных

пространств.

Привести информацию из пункта г)

3. Работа с корзиной

а) Проверить режим использования корзины, если отключена, то включить. Удалить таблицу №1. Получить список объектов в корзине. Получить информацию о свободном пространстве в табличном пространстве, в котором находилась таблица.

б) Восстановить таблицу из корзины. Проверить, что таблица восстановлена

в) Повторно удалить таблицу:


Бригады

Вариант

1,2,3,4

Удалить таблицу из корзины после выполнения drop table.

5,6,7,8

Удалить таблицу без помещения в корзину, предварительно отключив использование корзины.

9,10,11,

После выполнения drop table очистить корзину полностью.

12,13

После выполнения drop table очистить корзину для табличного пространства, в котором расположена таблица.


4. Операции с табличными пространствами.

а) Уменьшить размер файла (или файлов) табличного пространства №1 до минимально возможного размера.

б) Повторно получить информацию о свободном месте в табличном пространстве №1.

в)  Перевести табличное пространство №2 в состояние:


Бригады

Вариант

1,4,8,10,13

Offline

2,5,9,11

Read Only

3,6,7,12

Backup


Получить информацию о его состоянии.

Попытаться выполнить:

       Чтение данных из созданной ранее таблицы.

       Модификацию данных в созданной ранее таблице.

Перевести табличное пространство в состояние online.

Контрольные вопросы на защиту:

1. Табличные пространства и файлы базы данных, отношение между ними.

2. Физическая и логическая структура базы данных.

3. Блоки, экстенты и сегменты.

4. Классификация табличных пространств по назначению.

5. Классификация табличных пространств по их характеристикам.

6. Операции над табличными пространствами.

7. Получение информации о пространстве, занимаемом объектами б. д. и о свободном пространстве.

8. Операции над сегментами.

9. Назначение параметра хранения pctfree.

10. Корзина, операции с ней.