Відповіді:
SHOW TABLE STATUS WHERE Name = 'xxx'
Це дасть вам (серед іншого) Engine
стовпець, який ви хочете.
show full columns from t1
?
Щоб показати список усіх таблиць у базі даних та їх двигунів, використовуйте цей SQL-запит:
SELECT TABLE_NAME,
ENGINE
FROM information_schema.TABLES
WHERE TABLE_SCHEMA = 'dbname';
Замініть dbname
на ім’я бази даних.
SELECT ENGINE FROM information_schema.TABLES WHERE TABLE_SCHEMA = '<database_name>' AND TABLE_NAME = '<table_name>'
COUNT(*)
і GROUP BY
.
або просто
show table status;
тільки що це перерахує всі таблиці вашої бази даних.
Трохи налаштуйтесь на відповідь Джокера (я б опублікував коментар, але у мене ще недостатньо карми):
SELECT TABLE_NAME, ENGINE
FROM information_schema.TABLES
WHERE TABLE_SCHEMA = 'database' AND ENGINE IS NOT NULL;
Це виключає представлення MySQL зі списку, у якому немає двигуна.
mysqlshow -i <database_name>
покаже інформацію для всіх таблиць певної бази даних.
mysqlshow -i <database_name> <table_name>
буде робити це лише для конкретної таблиці.
Ще один спосіб, можливо, найкоротший, щоб отримати статус єдиного або зібраного набору таблиць:
SHOW TABLE STATUS LIKE 'table';
Потім ви можете використовувати оператори LIKE, наприклад:
SHOW TABLE STATUS LIKE 'field_data_%';
Якщо ви користуєтесь Linux:
Для того, щоб показати двигуни для всіх таблиць для всіх баз даних на сервері MySQL, без таблиць information_schema
, mysql
, performance_schema
:
less < <({ for i in $(mysql -e "show databases;" | cat | grep -v -e Database-e information_schema -e mysql -e performance_schema); do echo "--------------------$i--------------------"; mysql -e "use $i; show table status;"; done } | column -t)
Вам може сподобатися це, якщо ви хоч на Linux.
Відкриє всю інформацію для всіх таблиць less
, натисніть, -S
щоб нарізати занадто довгі рядки.
Приклад виводу:
--------------------information_schema--------------------
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time C
CHARACTER_SETS MEMORY 10 Fixed NULL 384 0 16434816 0 0 NULL 2015-07-13 15:48:45 NULL N
COLLATIONS MEMORY 10 Fixed NULL 231 0 16704765 0 0 NULL 2015-07-13 15:48:45 NULL N
COLLATION_CHARACTER_SET_APPLICABILITY MEMORY 10 Fixed NULL 195 0 16357770 0 0 NULL 2015-07-13 15:48:45 NULL N
COLUMNS MyISAM 10 Dynamic NULL 0 0 281474976710655 1024 0 NULL 2015-07-13 15:48:45 2015-07-13 1
COLUMN_PRIVILEGES MEMORY 10 Fixed NULL 2565 0 16757145 0 0 NULL 2015-07-13 15:48:45 NULL N
ENGINES MEMORY 10 Fixed NULL 490 0 16574250 0 0 NULL 2015-07-13 15:48:45 NULL N
EVENTS MyISAM 10 Dynamic NULL 0 0 281474976710655 1024 0 NULL 2015-07-13 15:48:45 2015-07-13 1
FILES MEMORY 10 Fixed NULL 2677 0 16758020 0 0 NULL 2015-07-13 15:48:45 NULL N
GLOBAL_STATUS MEMORY 10 Fixed NULL 3268 0 16755036 0 0 NULL 2015-07-13 15:48:45 NULL N
GLOBAL_VARIABLES MEMORY 10 Fixed NULL 3268 0 16755036 0 0 NULL 2015-07-13 15:48:45 NULL N
KEY_COLUMN_USAGE MEMORY 10 Fixed NULL 4637 0 16762755 0
.
.
.
перейдіть у базу даних information_schema, там ви знайдете таблицю "таблиць" і виберіть її;
Mysql> використовувати information_schema; Mysql> виберіть ім'я таблиці, двигун із таблиць;
Якщо ви GUI хлопець і просто хочете , щоб знайти його в PhpMyAdmin , ніж вибрати таблицю за вашим вибором і попрямувати на Operations
вкладку >> Table options
>> Storage Engine
. Ви навіть можете змінити його звідти, скориставшись спадним списком параметрів.
PS: Цей посібник базується на версії 4.8 PhpMyAdmin. Не можна гарантувати той самий шлях для дуже старих версій.