Как я могу проверить тип двигателя MySQL для конкретной базы данных с помощью запроса mysql?
Как я могу проверить тип двигателя MySQL для конкретной базы данных?
Ответ 1
В MySQL базы данных не имеют типа двигателя; таблицы имеют типы двигателей. В дружественном руководстве даже явно указано:
Важно помнить, что вы не ограничены использованием одного и того же механизма хранения для всего сервера или схемы: вы можете использовать другой механизм хранения для каждой таблицы в вашей схеме.
Вы можете запросить базу данных information_schema
(замените имя базы данных и имя таблицы в примере):
SELECT `ENGINE` FROM `information_schema`.`TABLES`
WHERE `TABLE_SCHEMA`='your_database_name' AND `TABLE_NAME`='your_table_name';
Вы также можете получить значение глобальной переменной окружения storage_engine
- которая используется только по умолчанию, когда таблица создается без указанного ядра, она не влияет на сервер каким-либо другим образом:
SHOW GLOBAL VARIABLES LIKE 'storage_engine'
Ответ 2
В базах данных нет движков. У таблиц есть. Вы можете запустить, например. ПОКАЗАТЬ ТАБЛИЦУ СТАТУСА:
SHOW TABLE STATUS FROM mydatabase
Доступные двигатели можно найти с помощью ПОКАЗАТЬ ДВИГАТЕЛИ.
Совет. Если вы используете официальный клиент командной строки, а не инструменты GUI, вы можете использовать команду \G
( не путать с нижним регистром \G
):
Отправьте текущую инструкцию на сервер, который будет выполнен, и отобразите результат в вертикальном формате.
... который превращает это:
mysql> SHOW TABLE STATUS;
+----------------------------------+--------+---------+------------+------+----------------+-------------+-----------------+-----------
---+-----------+----------------+---------------------+-------------+------------+-------------------+----------+----------------+-----
------------------------------------------------------+
| Name | Engine | Version | Row_format | Rows | Avg_row_length | Data_length | Max_data_length | Index_leng
th | Data_free | Auto_increment | Create_time | Update_time | Check_time | Collation | Checksum | Create_options | Comm
ent |
+----------------------------------+--------+---------+------------+------+----------------+-------------+-----------------+-----------
---+-----------+----------------+---------------------+-------------+------------+-------------------+----------+----------------+-----
------------------------------------------------------+
| canal | InnoDB | 10 | Compact | 0 | 0 | 16384 | 0 |
0 | 27262976 | 1 | 2015-04-10 11:07:01 | NULL | NULL | utf8_general_ci | NULL | |
... в это:
mysql> SHOW TABLE STATUS\G
*************************** 1. row ***************************
Name: canal
Engine: InnoDB
Version: 10
Row_format: Compact
Rows: 0
Avg_row_length: 0
Data_length: 16384
Max_data_length: 0
Index_length: 0
Data_free: 27262976
Auto_increment: 1
Create_time: 2015-04-10 11:07:01
Update_time: NULL
Check_time: NULL
Collation: utf8_general_ci
Checksum: NULL
Create_options:
Comment:
*************************** 2. row ***************************
Name: cliente
Engine: InnoDB
Ответ 3
SHOW TABLE STATUS
извлекает такие вещи, см. Документы MySQL.
Ответ 4
Используйте эту команду:
SHOW ENGINES\G;
Ваш двигатель по умолчанию будет отображаться как Поддержка: ПО УМОЛЧАНИЮ
Ответ 5
список двигателей, используемых базами данных:
SELECT TABLE_SCHEMA
, ENGINE
FROM information_schema
. TABLES
группу TABLE_SCHEMA
, ENGINE
порядок TABLE_SCHEMA
, ENGINE
;