Сервер Oracle поддерживает набор «таблиц» низкого уровня, имя которых начинается с префикса X$ и которые доступны только административному пользователю SYS. Такие таблицы часто называют динамическими X$ таблицами, так как информация в них постоянно обновляется.
По своей сути X$ таблицы не являются таблицами в нормальном понимании этого слова. Они представляют собой лишь промежуточный табличный интерфейс к внутренним структурам памяти, которые Oracle повсеместно использует в своей работе. Доступ к содержимому этих структур организован в виде таблиц, и может осуществляться через оператор SELECT.
Большинство названий X$ таблиц следуют строгому правилу именования, где первые буквы имени после префикса представляют собой слой или модуль в ядре Oracle. Именно по этому сочетанию имени часто можно определить, к которому типу относится информация, содержащаяся в конкретной X$ таблице. Список X$ таблиц в каждом релизе Oracle фиксирован. Получить его для текущей базы данных, можно через запрос к динамическому представлению V$FIXED_TABLE.
Не смотря на то, что Oracle не хранит в словаре описание столбцов X$ таблиц, получить их список всё же возможно. В первом случае это можно сделать через команду DESCRIBE утилиты SQLPlus, во втором случае, через запрос к динамической таблице X$KQFCO, где перечислены столбцы всех динамических X$ таблиц.
Как было сказано выше, доступ к X$ таблицам в Oracle имеет только пользователь SYS. Попытка предоставления привилегий на просмотр X$ таблиц другим пользователям в любом случае приведёт к ошибке. Если пользователю всё же требуется доступ к конкретной X$ таблице (что очень нежелательно), то на данную таблицу можно организовать представление в схеме SYS, после чего можно спокойно выдавать права на его просмотр как на любой другой объект.
X$BH
Содержит структуры заголовков буферов буферного кэша.
X$KCCAL
Содержит структуры включающие информацию об архивных журналах. Первоначальные данные берутся из контрольного файла.
X$KGLLK
Содержит все структуры блокировок библиотечного кэша.
X$KGLPN
Содержит все структуры закреплений в библиотечном кэше.
X$KGLOB
Содержит все структуры ресурсов в библиотечном кэше.
X$KSMFS
Содержит структуры включающие размер фиксированной области SGA. Так же в таблице дополнительно содержится размер буферного и журнального кэша.
X$KSMFSV
Содержит внешнее имя, тип, адрес и размер всех переменных в фиксированной области SGA.
X$KSMJS
Содержит суммарный размер Java пула.
X$KSMDD
Содержит структуры заголовков сегментированных массивов. Сегментированный массив используется для хранения объектов, таких как, например блокировки и транзакции.
X$KSMHP
Содержит структуры описывающие chunks (участки памяти) в подкучах (subheaps). Некоторые кучи памяти могут иметь так называемые подкучи, которые состоят из одного или нескольких экстентов.
X$KSMSP
Содержит структуры описывающие chunks (участки памяти) в разделяемом пуле.
X$KSMSPR
Содержит структуры описывающие chunks (участки памяти) в резервной области разделяемого пула.
X$KSPPI
Содержит структуры включающие название и описание параметров инициализации (включая скрытые).
X$KSMLRU
Содержит структуры содержащие информацию о выделениях chunks в разделяемом пуле по причине устаревания объектов. Объекты хранятся и очищаются на основании алгоритма LRU. Запрос к этой таблице можно сделать только один раз. Последующий запрос не возвращает строк.