Какой ROW_FORMAT является моей таблицей?

#mysql

#mysql

Вопрос:

Я обнаружил, что MySQL имеет несколько форматов строк, и это можно указать или изменить. Кроме того, ROW_FORMAT по умолчанию, по-видимому, со временем менялся с версиями MySQL, что понятно.

Однако я нигде не могу найти, где говорится, как узнать, что такое ROW_FORMAT существующей таблицы! Моя база данных существует уже много лет, начиная со старых версий MySQL, и я хочу убедиться, что я не использую устаревший дисковый формат с плохой производительностью.

Как мне узнать формат строки таблицы в MySQL?

Ответ №1:

Информационная схема предоставляет огромное количество информации.

 SELECT row_format FROM information_schema.tables
    WHERE table_schema="YOUR DB" AND table_name="YOUR TABLE" LIMIT 1;
  

2014.06.19 — Небольшое обновление

Следующий запрос предоставит вам формат строк всех таблиц в текущей базе данных:

 SELECT `table_name`, `row_format`
FROM `information_schema`.`tables`
WHERE `table_schema`=DATABASE();
  

Ответ №2:

Со следующим запросом:

 show table status like 'table_name';