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

MySQL, Lỗi 126:Tệp khóa không chính xác cho bảng

Có vẻ như truy vấn của bạn đang trả về một tập hợp kết quả trung gian lớn yêu cầu tạo một bảng tạm thời và vị trí được định cấu hình cho các bảng tạm thời của mysql (/ tmp) không đủ lớn cho bảng tạm thời kết quả.

Bạn có thể thử tăng kích thước phân vùng tmpfs bằng cách gắn nó lại:

mount -t tmpfs -o remount,size=1G tmpfs /tmp

Bạn có thể thực hiện thay đổi này vĩnh viễn bằng cách chỉnh sửa / etc / fstab

Nếu bạn không thể làm điều này, bạn có thể thử thay đổi vị trí của các bảng tạm thời bằng cách chỉnh sửa mục nhập "tmpdir" trong tệp my.cnf của bạn (hoặc addit nếu nó chưa có). Hãy nhớ rằng thư mục bạn chọn phải được người dùng mysql ghi được

Bạn cũng có thể thử ngăn việc tạo bảng tạm thời trên đĩa bằng cách tăng các giá trị cho các tùy chọn cấu hình mysql:

tmp_table_size
max_heap_table_size

thành các giá trị lớn hơn. Bạn sẽ cần tăng cả hai thông số trên

Ví dụ:

set global tmp_table_size = 1G;
set global max_heap_table_size = 1G;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. com.mysql.jdbc.MysqlDataTruncation:Cắt bớt dữ liệu:Dữ liệu quá dài cho cột 'column_name'

  2. Truy vấn SQL trả về tất cả các ngày không được sử dụng trong bảng

  3. mysql hiển thị Số hàng từ bảng khác trong mỗi hàng

  4. Cách sao lưu cơ sở dữ liệu được mã hóa với máy chủ Percona cho MySQL 8.0

  5. Làm cách nào để truy vấn cơ sở dữ liệu MySQL từ ứng dụng Rails không có mô hình?