Предположим, что у вас запущен клиент MySQL при помощи команды mysql test
.
Чтобы создать таблицу в формате InnoDB, необходимо в команде создания
таблицы SQL указать TYPE = InnoDB
:
CREATE TABLE CUSTOMER (A INT, B CHAR (20), INDEX (A)) TYPE = InnoDB;
Эта команда SQL создаст таблицу и индекс в столбце A табличной области
InnoDB. Кроме того, MySQL создаст файл CUSTOMER.frm
каталоге баз данных
MySQL с именем test
. В свой собственный словарь данных InnoDB добавит
запись для таблицы test/CUSTOMER
. Таким образом, можно создать таблицу с
таким же именем CUSTOMER
в другой базе данных MySQL, и это не приведет к
конфликту имен таблиц в рамках InnoDB.
Для любой таблицы, которая была создана с параметром TYPE = InnoDB
, можно
запросить количество свободного пространства в табличной области InnoDB.
Для этого нужно выполнить команду запроса состояния таблицы. Количество
свободного пространства будет выводиться в разделе примечаний к таблице в
выходной информации команды SHOW
.
Например:
SHOW TABLE STATUS FROM test LIKE 'CUSTOMER'
Обратите внимание на то, что статистические данные, которые команда SHOW
выдает по таблицам InnoDB, являются приблизительными: они используются для
оптимизации SQL. Точными являются зарезервированные размеры таблицы и
индекса, значения которых выдаются в байтах.