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

Chèn MySQL chậm

Đó có thể là thời điểm để phân vùng theo chiều ngang và di chuyển trường đốm màu vào một bảng riêng biệt. Trong bài viết này này trong 'Lưu ý nhanh về phân vùng theo chiều dọc', tác giả xóa trường varchar lớn hơn khỏi bảng và nó làm tăng tốc độ truy vấn về thứ tự độ lớn.

Lý do là quá trình truyền dữ liệu trên đĩa trở nên nhanh hơn đáng kể nếu có ít không gian hơn để bao phủ, vì vậy việc di chuyển các trường lớn hơn ở nơi khác sẽ tăng hiệu suất.

Ngoài ra (và có thể bạn đã làm điều đó) sẽ có lợi khi giảm kích thước cột chỉ mục của bạn xuống mức tối thiểu tuyệt đối (char (32) trong mã hóa ascii cho md5), bởi vì kích thước của khóa tỷ lệ thuận với tốc độ sử dụng nó .

Nếu bạn thực hiện nhiều lần chèn cùng một lúc với bảng InnoDB, bạn có thể tăng đáng kể tốc độ chèn bằng cách gói chúng vào giao dịch và thực hiện chèn mupliple trong một truy vấn:

START TRANSACTION
INSERT INTO x (id, md5, field1, field2) values (1, '123dab...', 'data1','data2'),(2,'ab2...','data3','data4'),.....;
COMMIT


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. chuyển hướng 404 đến các url tương tự

  2. Truy vấn LIKE trong MySQL với dấu gạch dưới

  3. Sử dụng trường DATE làm khóa chính của thứ nguyên ngày với MySQL

  4. Sao lưu cơ sở dữ liệu MySQL của bạn

  5. Rails 4 MySQL bigInt các vấn đề và lỗi về khóa chính