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

Bạn có thể tăng max_allowed_packet từ máy khách không?

Tôi đã đọc nhiều bài báo giải thích cách thực hiện điều này nhưng tôi đã đi đến kết luận rằng họ chỉ đơn giản là chưa kiểm tra nó đúng cách. Kết luận của tôi là:

  • max_allowed_packet của máy chủ là giới hạn trên được mã hóa cứng. Bạn có thể thay đổi nó cho toàn bộ máy chủ như bất kỳ cài đặt phía máy chủ nào khác (tệp cấu hình hoặc thông số dòng lệnh của máy chủ) nhưng không thể tăng nó từ máy khách.

  • Một số ứng dụng khách (chẳng hạn như tiện ích dòng lệnh chính thức) cho phép đặt max_allowed_packet về kết nối. Đó là cách duy nhất để thực sự thay đổi giá trị từ máy khách (thay đổi phiên hoặc biến toàn cục không ảnh hưởng đến kích thước của các gói được trao đổi) nhưng nó chỉ hữu ích nếu bạn muốn thấp hơn nó. Việc gửi các gói lớn hơn cài đặt của máy chủ sẽ vẫn gây ra các lỗi liên quan đến gói vì máy chủ sẽ không chấp nhận chúng.

Tóm lại:

  1. Bạn phải xử lý max_allowed_packet dưới dạng chỉ đọc.
  2. Nếu nó quá nhỏ, bạn cần phải thay đổi nó cho toàn bộ máy chủ hoặc sống chung với nó.

Rất tiếc là tôi không thể cung cấp liên kết đến tài liệu chính thức nhưng chủ đề này được ghi chép kém.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Các trường được chọn có thả xuống dễ bị ảnh hưởng bởi bất kỳ loại tiêm nào không

  2. Cạnh tranh trên Twitter ~ lưu tweet (PHP &MySQL)

  3. MySQL Workbench nhanh hơn nhiều so với Python cho cùng một truy vấn

  4. Chỉ mục tổng hợp cho một bảng quan hệ

  5. MySQL tự động tăng giữa các bảng