Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Làm cách nào để kích hoạt chỉ mục lớn trong MariaDB 10?

Nó yêu cầu nhiều hơn chỉ hai cài đặt đó ...

SET GLOBAL innodb_file_format=Barracuda;
SET GLOBAL innodb_file_per_table=ON;
SET GLOBAL innodb_large_prefix=1;
logout & login (to get the global values);
ALTER TABLE tbl ROW_FORMAT=DYNAMIC;  -- or COMPRESSED

Có lẽ tất cả những gì bạn cần là thêm ROW_FORMAT=... vào CREATE TABLE của bạn .

Các hướng dẫn này là cần thiết cho 5.6.3 đến 5.7.7. Bắt đầu với 5.7.7, hệ thống mặc định chính xác để xử lý các trường lớn hơn.

Ngoài ra, bạn có thể sử dụng chỉ mục "tiền tố":

INDEX(column(191))

(Nhưng lập chỉ mục tiền tố có nhiều sai sót.)

"Nếu sau này máy chủ tạo định dạng bảng cao hơn, thì innodb_file_format_max được đặt thành giá trị đó" ngụ ý rằng cài đặt đó không phải là vấn đề.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Con trỏ lồng nhau trong Mysql

  2. mức độ an toàn của các tuyên bố do PDO chuẩn bị

  3. NHÓM MySQL BẰNG nhiều cột từ các bảng khác nhau

  4. Làm thế nào để thực thi hai truy vấn mysql làm một trong PHP / MYSQL?

  5. Khóa chính MySQL