Lỗi WordPress MySQL Server Gone Away là một trong những thông báo gây khó chịu nhất mà quản trị viên website gặp phải. Khi lỗi này xuất hiện, trang web thường trắng bệch hoặc hiển thị thông báo “Error establishing a database connection” khiến người dùng bực bội. Bản chất của lỗi này là máy chủ MySQL của

Lỗi này thường xuất hiện trong quá trình WordPress thực hiện các truy vấn lớn đến cơ sở dữ liệu MySQL. Khi kết nối giữa WordPress và MySQL bị đứt giữa chừng, hệ thống trả về thông báo “MySQL server has gone away”. Điều này có thể xảy ra khi bạn nhập một bản sao lưu dung lượng lớn, cài đặt nhiều plugin cùng lúc, hoặc có quá nhiều người dùng truy cập đồng thời.
Theo thống kế từ các nhà phát triển, hơn 60% trường hợp lỗi này liên quan đến giá trị max_allowed_packet quá thấp hoặc thời gian chờ kết nối (wait_timeout) không phù hợp. Phần còn lại thường do máy chủ quá tải hoặc lỗi cấu hình từ phía hosting. Đây không phải lỗi tự nhiên mà là dấu hiệu cảnh báo hệ thống cần được tối ưu ngay.
Nguyên nhân khiến WordPress gặp lỗi MySQL Server Gone Away

Có rất nhiều nguyên nhân dẫn đến lỗi này, nhưng tựu trung lại chúng được chia thành 6 nhóm chính. Hiểu đúng nguyên nhân giúp bạn chọn giải pháp chính xác, không mất thời gian sửa sai.
- Giá trị max_allowed_packet quá nhỏ: MySQL giới hạn kích thước gói tin tối đa có thể gửi lên server. Khi bạn import file SQL lớn hoặc upload media dung lượng cao, gói tin vượt quá giới hạn này khiến kết nối bị hủy.
- Thời gian chờ kết nối (wait_timeout) ngắn: Mỗi kết nối MySQL chỉ được duy trì trong một khoảng thời gian nhất định. Nếu truy vấn kéo dài (ví dụ import dữ liệu hàng nghìn bài viết), server sẽ tự động ngắt kết nối.
- Máy chủ quá tải hoặc thiếu tài nguyên: RAM, CPU không đủ khiến MySQL bị kill process hoặc crash tạm thời. Điều này thường xảy ra với các hosting shared rẻ tiền.
- Lỗi plugin hoặc theme kém chất lượng: Một số plugin gọi truy vấn không tối ưu, vòng lặp vô hạn hoặc không đóng kết nối đúng cách gây rò rỉ bộ nhớ.
- Cấu hình PHP ảnh hưởng đến kết nối: Thời gian thực thi PHP tối đa (max_execution_time) hoặc bộ nhớ PHP (memory_limit) quá thấp khiến script bị dừng đột ngột trước khi truy vấn hoàn tất.
- Lỗi persistent connections: Sử dụng kết nối liên tục (persistent) trong môi trường không tương thích cũng là thủ phạm phổ biến gây ra lỗi này.
Dấu hiệu nhận biết lỗi WordPress MySQL Server Gone Away

Không phải lúc nào bạn cũng nhìn thấy dòng chữ “MySQL server has gone away” trực tiếp trên website.
Hướng dẫn khắc phục lỗi WordPress MySQL Server Gone Away từ cơ bản đến nâng cao

Hãy thực hiện tuần tự để tránh ảnh hưởng đến dữ liệu.
1. Tăng giá trị max_allowed_packet trong MySQL
Đây là giải pháp phổ biến và hiệu quả nhất.
Lỗi này không tự động xóa dữ liệu. Nó chỉ làm gián đoạn quá trình truy vấn, và dữ liệu chưa được ghi sẽ bị mất. Nếu bạn đang import thì cần thực hiện lại từ đầu. Dữ liệu đã tồn tại trước đó vẫn an toàn.
Tôi có thể sửa lỗi WordPress MySQL Server Gone Away mà không cần truy cập SSH không?
Có. Nếu bạn dùng shared hosting, hãy liên hệ nhà cung cấp để họ tăng max_allowed_packet cho bạn. Ngoài ra,
Các plugin thực hiện nhiều truy vấn lớn như: WP All Import, BackupBuddy, UpdraftPlus, Wordfence (khi quét toàn bộ site), Yoast SEO (khi reindex), và các plugin caching khi flush cache toàn bộ. Hãy update lên phiên bản mới nhất và kiểm tra cấu hình của chúng.
Làm sao để kiểm tra giá trị max_allowed_packet hiện tại?
Vào phpMyAdmin, click vào tab “SQL” và chạy query: SHOW VARIABLES LIKE ‘max_allowed_packet’; Kết quả hiện ra số byte (ví dụ 16777216 tương ứng 16MB). Bạn cũng có thể dùng command line: mysqladmin variables | grep max_allowed_packet.
Sau khi sửa lỗi, website vẫn báo lỗi “Error establishing a database connection” thì sao?
Lúc này lỗi không còn là “MySQL server gone away” mà là kết nối thất bại hoàn toàn. Kiểm tra lại thông tin database trong wp-config.php, đảm bảo MySQL service đang chạy (sudo systemctl status mysql), và kiểm tra xem database user có quyền truy cập đúng không. Đôi khi lỗi cũng do firewall chặn port 3306.
Kết luận

Lỗi WordPress MySQL Server Gone Away tuy gây phiền hà nhưng hoàn toàn có thể khắc phục nếu bạn hiểu rõ nguyên nhân. Hãy bắt đầu bằng việc tăng max_allowed_packet và tối ưu cấu hình PHP. Nếu lỗi vẫn tiếp diễn, hãy kiểm tra plugin lỗi hoặc cân nhắc nâng cấp hosting. Luôn sao lưu dữ liệu trước khi thay đổi bất kỳ cấu hình nào. Bằng cách chủ động phòng ngừa và xử lý chính xác, bạn sẽ giữ cho website WordPress của mình chạy mượt mà, không còn nỗi lo về lỗi kết nối MySQL.
- Hướng dẫn chi tiết cách defer javascript wordpress giúp tăng tốc website lên 40%
- WordPress phản hồi chậm: Nguyên nhân và giải pháp toàn diện từ A đến Z
- Woocommerce Object Cache Lỗi: Nguyên Nhân, Dấu Hiệu Và Cách Khắc Phục Toàn Diện
- Plugin WordPress Sau Cập Nhật Bị Lỗi: Nguyên Nhân, Cách Khắc Phục Toàn Diện
- Cách khắc phục lỗi Elementor Save Conflict dứt điểm














