Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Cách hiển thị tất cả bảng MySQL kèm storage engine

Truy vấn INFORMATION_SCHEMA.TABLES lọc theo cột ENGINE.

1. Xem chi tiết tất cả bảng InnoDB

SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE ENGINE = 'InnoDB';

Trả về nhiều cột: TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME, TABLE_TYPE, ENGINE, VERSION, ROW_FORMAT, TABLE_ROWS, AVG_ROW_LENGTH, DATA_LENGTH, INDEX_LENGTH, AUTO_INCREMENT, CREATE_TIME, TABLE_COLLATION...

2. Chỉ liệt kê tên bảng InnoDB

SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE ENGINE = 'InnoDB';

Kết quả gọn nhẹ:

+---------------------------+
| TABLE_NAME                |
+---------------------------+
| innodb_table_stats        |
| innodb_index_stats        |
| db                        |
| user                      |
| ...                       |
| student                   |
| moviecollection           |
| bookindexes               |
| duplicatebookindexes      |
| ...                       |
| duplicatefound            |
+---------------------------+
94 rows in set (0.03 sec)

Ứng dụng

  • Kiểm tra engine của bảng: SHOW TABLE STATUS WHERE Name = 'ten_bang'.
  • Chuyển engine: ALTER TABLE ten_bang ENGINE = InnoDB; (hoặc MyISAM).
  • Lọc theo database: thêm AND TABLE_SCHEMA = 'ten_db'.