Biến hệ thống table_type đã bị loại bỏ (deprecated) kể từ MySQL 5.5.3 và không còn hoạt động. Thay vào đó, hãy sử dụng biến default_storage_engine để đặt engine lưu trữ mặc định cho phiên làm việc hiện tại.
Cú pháp mới
SET default_storage_engine = ten_engine;
Giá trị phổ biến: InnoDB (mặc định từ MySQL 5.5), MyISAM, MEMORY, CSV...
Ví dụ đặt engine MyISAM cho session hiện tại
mysql> SET default_storage_engine = MyISAM;
Query OK, 0 rows affected (0.00 sec)
Tạo bảng và kiểm tra engine
mysql> CREATE TABLE DemoTable (Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY);
mysql> SHOW TABLE STATUS WHERE Name = 'DemoTable';\G
Kết quả (Engine = MyISAM)
*************************** 1. row ***************************
Name: DemoTable
Engine: MyISAM
Version: 10
Row_format: Fixed
Rows: 0
Avg_row_length: 0
Data_length: 0
Max_data_length: 1970324836974591
Index_length: 1024
Data_free: 0
Auto_increment: 1
Create_time: 2019-05-01 22:15:03
Update_time: 2019-05-01 22:15:03
Check_time: NULL
Collation: utf8_unicode_ci
Checksum: NULL
Create_options:
Comment:
1 row in set (0.34 sec)
Lưu ý quan trọng:
- Việc
SET default_storage_enginechỉ ảnh hưởng đến phiên làm việc hiện tại (session). Khởi động lại MySQL hoặc kết nối mới sẽ quay về mặc định (thường là InnoDB). - Để thay đổi vĩnh viễn, cấu hình trong file
my.cnf(hoặcmy.iniWindows) dưới section[mysqld]:default-storage-engine=MyISAMrồi restart MySQL. - Tuy nhiên, InnoDB là engine được khuyến nghị cho hầu hết ứng dụng nhờ hỗ trợ transaction, khóa ngoại, khôi phục sự cố (crash recovery) tốt hơn.