Làm cách nào để sửa lỗi máy chủ MySQL đã biến mất trong PHP?

Tôi đã thử truy vấn một phiên bản Cơ sở dữ liệu Amazon Relational Database Service [Amazon RDS] đang chạy MySQL và tôi nhận được một trong các thông báo lỗi sau. "Máy chủ MySQL đã biến mất" hoặc "Mất kết nối với máy chủ trong khi truy vấn. "

Mô tả ngắn

Nếu máy chủ hết thời gian chờ và đóng kết nối, bạn có thể gặp một trong các lỗi sau

  • CR_SERVER_GONE_ERROR - Máy khách không thể gửi câu hỏi đến máy chủ
  • CR_SERVER_LOST - Máy khách không gặp lỗi khi ghi vào máy chủ, nhưng máy khách không nhận được câu trả lời đầy đủ [hoặc bất kỳ câu trả lời nào] cho câu hỏi

Để biết thêm thông tin, hãy xem tài liệu MySQL dành cho máy chủ MySQL đã biến mất

Nghị quyết

Xem các nguyên nhân sau đây và các giải pháp liên quan cho các lỗi này

  • Nếu một kết nối không hoạt động quá lâu, thì kết nối có thể bị ngắt không chính xác từ máy khách. Để giải quyết vấn đề này, hãy xác minh rằng thời gian chờ của ứng dụng ngắn hơn thời gian chờ của MySQL và đảm bảo rằng các ứng dụng của bạn đóng các kết nối không hoạt động
  • Nếu kết nối hết thời gian chờ, thì hãy tăng thời gian chờ cho MySQL bằng cách tăng các tham số wait_timeout và Interactive_timeout bằng cách sử dụng nhóm tham số tùy chỉnh. Để biết thêm thông tin, hãy xem Làm việc với các nhóm tham số DB
  • Nếu truy vấn tạo ra lỗi đang truy xuất một tập dữ liệu lớn thì hãy tăng tham số kích thước max_allowed_packet bằng cách sử dụng nhóm tham số tùy chỉnh. Để biết thêm thông tin, xem
    Ghi chú. Đối với Amazon Aurora, bạn có thể sửa đổi các tham số và đặt chúng trong một nhóm tham số cụm để áp dụng ở cấp độ toàn bộ cụm. Đặt nó trong nhóm tham số DB chỉ áp dụng các tham số ở cấp phiên bản. Đối với cơ sở dữ liệu MySQL của Amazon Lightsail, bạn phải kiểm tra xem có sẵn các tham số để sửa đổi hay không trước khi sửa đổi chúng bằng giao diện dòng lệnh [CLI]. Để biết thêm thông tin, hãy xem Cập nhật tham số cơ sở dữ liệu trong Amazon Lightsail. Đối với phiên bản Lightsail hoặc cơ sở dữ liệu MySQL cục bộ của máy chủ hoặc MySQL của Amazon Elastic Compute Cloud [Amazon EC2], bạn có thể đặt tham số trong tệp cấu hình. Bạn cũng có thể đặt xxx chung, tương tự như cách nó được đặt trong môi trường MySQL tại chỗ bình thường
  • Nếu lỗi chỉ xảy ra khi trả về tập dữ liệu lớn, máy khách có thể đang sử dụng giá trị MTU lớn là 9001. Để giải quyết vấn đề này, hãy giảm giá trị MTU TCP/IP của máy khách. Để biết thông tin về cách thay đổi giá trị MTU máy khách của bạn, hãy xem
  • Nếu bất kỳ tham số init_connect nào được đặt thành giá trị không cho phép xử lý tham số đó, các kết nối máy khách được liên kết có thể không thành công. Đảm bảo rằng tất cả các tham số init_connect đều được xử lý chính xác. Đảm bảo rằng người dùng có quyền EXECUTE đối với bất kỳ quy trình nào được tham chiếu dưới dạng tham số init_connect
  • Nếu tất cả các kết nối bị rớt cùng lúc, hãy xác nhận rằng các kết nối khác vẫn hoạt động khi sự cố này xảy ra. Để giải quyết vấn đề này, hãy xác minh phiên bản Cơ sở dữ liệu MySQL không gặp sự cố hoặc lỗi bằng cách xem các sự kiện Amazon RDS và xem lại

Bạn có cần thanh toán hoặc hỗ trợ kỹ thuật?

Bài viết dưới đây sẽ cung cấp thông tin và các bước khắc phục lỗi website của bạn

MySQL Server Has Gone Away

Khi gặp phải lỗi này lần đầu tiên, bạn có thể bối rối, "Mày MySQL là cái gì vậy?  Và tại sao nó lại biến mất?" . Một số lý do phổ biến cho lỗi này là

  1. Thời gian chờ php của bạn quá thấp
  2. Một bảng cơ sở dữ liệu đã bị hỏng hoặc bị hỏng
  3. Các gói cơ sở dữ liệu đang bị loại bỏ hoặc quá lớn

Rất may, việc khắc phục lỗi này có thể được thực hiện khá dễ dàng, chúng tôi sẽ đề cập đến trong phần tiếp theo

Hướng dẫn

Tăng thời gian chờ php

GHI CHÚ
Để cập nhật wait_timeout, bạn sẽ cần một GridContainer để cập nhật chỉnh sửa máy chủ của bạn. tập tin cnf

  1. Đăng nhập vào Trung tâm tài khoản của bạn
  2. Điều hướng đến GridContainer của bạn
  3. Cuộn xuống phần Cấu hình MySQL. Nhấp vào CHỈNH SỬA CẤU HÌNH để mở trình chỉnh sửa
  4. chỉnh sửa của bạn của tôi. cnf và cập nhật wait_timeout lên giá trị cao hơn, chẳng hạn như 300. Khi bạn đã hoàn tất, hãy nhấp vào Lưu cấu hình
  5. Bạn có thể kiểm tra trang web của mình để xem trang web của bạn có hoạt động trở lại không. Nếu không, bạn có thể tiếp tục với các bước bên dưới

  1. Truy cập máy chủ của bạn bằng SFTP hoặc SSH
  2. Điều hướng đến của tôi của bạn. tập tin cnf. Điều này sẽ được đặt dưới /etc/my. cnf
  3. Cập nhật hoặc thêm dòng mã sau vào của tôi. cnf
    wait_timeout=300
  4. Lưu các thay đổi của bạn
  5. Khởi động lại máy chủ của bạn hoặc chỉ dịch vụ MySQL
  6. Thời gian chờ php của bạn bây giờ sẽ được tăng lên. Bạn có thể kiểm tra trang web của mình để xem trang web của bạn có hoạt động trở lại không. Nếu không, bạn có thể tiếp tục với các bước bên dưới

Sửa chữa các bảng cơ sở dữ liệu

  1. Log into phpMyAdminphpMyAdminphpMyAdminphpMyAdminphpMyAdmin
  2. Chọn đúng cơ sở dữ liệu mong muốn
  3. Nhấp vào tab Cấu trúc. Sau đó chọn hộp thích hợp để chọn tất cả các bảng của bạn
  4. Từ trình đơn thả xuống, chọn Bảng sửa chữa
  5. Bàn của bạn bây giờ sẽ được sửa chữa. Bạn có thể kiểm tra trang web của mình để xem trang web của bạn có hoạt động trở lại không. Nếu không, bạn có thể tiếp tục với các bước bên dưới

Vô hiệu hóa plugin & chủ đề

Plugin và chủ đề là một trong những lý do phổ biến nhất khiến trang web ngừng hoạt động. Chúng tôi có thể cố gắng thu hẹp thủ phạm tiềm ẩn bằng cách vô hiệu hóa tất cả chúng, kiểm tra xem trang web của bạn có đang hoạt động không, sau đó từ từ kích hoạt lại từng cái một. Nếu bạn bật lại plugin hoặc chủ đề và trang web của bạn đột nhiên ngừng hoạt động trở lại, thì bạn sẽ biết cái nào gây ra sự cố. Từ đó, bạn có thể điều tra thêm với nhà phát triển trang web của mình hoặc nhà phát triển plugin/chủ đề. Nếu bạn muốn xem lại cách tắt những thứ này, vui lòng xem các bài viết bên dưới

  • Cách tắt plugin WordPress để khắc phục sự cố
  • Cách tắt plugin WordPress để khắc phục sự cố
  • Cách tắt plugin WordPress để khắc phục sự cố
  • Cách tắt plugin WordPress để khắc phục sự cố
  • Cách tắt plugin WordPress để khắc phục sự cố
  • Cách hủy kích hoạt chủ đề WordPress để khắc phục sự cố
  • Cách hủy kích hoạt chủ đề WordPress để khắc phục sự cố
  • Cách hủy kích hoạt chủ đề WordPress để khắc phục sự cố
  • Cách hủy kích hoạt chủ đề WordPress để khắc phục sự cố
  • Cách hủy kích hoạt chủ đề WordPress để khắc phục sự cố

Khôi phục từ bản sao lưu

Nếu tất cả các giải pháp trên không khắc phục được trang web của bạn, thì bạn có thể muốn khôi phục từ bản sao lưu. Để biết danh sách các tùy chọn sao lưu khả dụng trên máy chủ của bạn, vui lòng xem bài viết bên dưới

Chủ Đề