max_allowed_packet
được đặt trong cấu hình mysql, không phải ở phía php
[mysqld]
max_allowed_packet=16M
Bạn có thể thấy giá trị của nó trong mysql như thế này:
SHOW VARIABLES LIKE 'max_allowed_packet';
Bạn có thể thử thay đổi nó như thế này, nhưng không chắc điều này sẽ hoạt động trên shared hosting:
SET GLOBAL max_allowed_packet=16777216;
Bạn có thể đọc về nó tại đây http:// dev .mysql.com / doc / refman / 5.1 / en / pack-too-large.html
CHỈNH SỬA
[Mysqld] là cần thiết để tạo max_allowed_packet
hoạt động kể từ ít nhất phiên bản mysql 5.5.
Gần đây, thiết lập một phiên bản trên AWS EC2 với Công cụ tìm kiếm Drupal và Solr, yêu cầu 32M max_allowed_packet
. Nó là bạn đặt giá trị trong [mysqld_safe]
(là cài đặt mặc định đi kèm với cài đặt mysql) ở chế độ /etc/my.cnf, nó không hoạt động. Tôi đã không đào sâu vào vấn đề. Nhưng sau khi tôi thay đổi nó thành [mysqld]
và khởi động lại mysqld, nó đã hoạt động.