При повседневном использовании DM7, когда мы создаем новые таблицы или вставляем данные, мы можем столкнуться с нехваткой диска. Ошибка такого типа часто возникает не из-за того, что на реальном жестком диске недостаточно места, а из-за того, что в соответствующем табличном пространстве недостаточно места для операций. В этой статье вы узнаете, как просмотреть использование табличного пространства.
Примечание: Демонстрационная среда этой статьи: Сервер базы данных DM x64 V7.1.6.46-Build (2018.02.08-89107) ENT
1. Создайте тестовую среду.
Создание табличного пространства: здесь мы создаем тестовое табличное пространство с начальным пространством 32 МБ и отключаем автоматическое расширение табличного пространства.
Создайте тестовую таблицу и поместите ее под табличное пространство TEST и введите некоторые тестовые данные:
2. Просмотрите использование табличного пространства.
После многократной вставки данных и их отправки мы можем получить большую таблицу из почти 50 000 строк. Тогда как мы можем узнать текущее использование табличного пространства?
2.1 Используйте инструменты управления DM для запроса
В случае графического интерфейса мы можем щелкнуть правой кнопкой мыши имя табличного пространства, чтобы просмотреть свойства.
Вы можете увидеть общий размер табличного пространства и текущее использование:
2.2 Использование операторов SQL для запроса
Если вы хотите запросить доступное пространство табличного пространства с помощью операторов SQL, нам нужно использовать представление dba_data_files, полный оператор выглядит следующим образом:
Единица измерения здесь - килобайт.
В то же время мы также можем использовать функцию TS_FREE_SPACE () для запроса доступного пространства табличного пространства. Следует отметить, что возвращаемое значение функции TS_FREE_SPACE () - это размер страницы, поэтому, если вы хотите отображать результаты в единицах КБ, вы должны что-то сделать Расчет, конкретное предложение выглядит следующим образом:
Можно обнаружить, что между результатами двух запросов есть определенный разрыв. Это связано с тем, что первый результат возвращает размер доступного пространства табличного пространства, а второй результат возвращает размер доступного пространства табличного пространства. В реальной работе, если мы создаем большое количество таблиц разделов в табличном пространстве, может случиться так, что даже если в табличном пространстве имеется много доступного пространства, невозможно создать новую таблицу разделов в этом пространстве из-за недостатка выделяемого пространства.
Если у нас есть несколько таблиц в табличном пространстве, мы также можем использовать функцию TABLE_USED_SPACE () для запроса использования пространства конкретной таблицей. Конкретный оператор выглядит следующим образом:
3. Решения, когда места недостаточно
Когда использование нашего табличного пространства близко к верхнему пределу, а затем вставлять в него данные, система выдаст запрос на недостаточное дисковое пространство.
Недостаток дискового пространства здесь не в том, что реальный жесткий диск заполнен, а в том, что в табличном пространстве недостаточно места. В этой ситуации мы можем использовать следующие методы:
1. Включите автоматическое расширение табличного пространства.
2. Измените размер файла табличного пространства.
3. Новый файл табличного пространства
О конкретном использовании этих трех точек мы поделимся с вами в следующей статье, с нетерпением ждем этого.