Mã lỗi: 2006 - máy chủ mysql đã biến mất

Khi bạn cố gắng nhập một tệp SQL lớn vào cơ sở dữ liệu MySQL của mình nhưng giữa quá trình, nó sẽ hiển thị lỗi này

“General error: 2006 MySQL server has gone away“

Giống như nó vừa ra ngoài uống một tách trà, và sau đó điều duy nhất bạn muốn trên đời là nó quay trở lại

Mã lỗi: 2006 - máy chủ mysql đã biến mất

Có hai lý do cho lỗi đó

  • Máy chủ đã hết thời gian chờ và đóng kết nối
  • Máy chủ đã bỏ một gói không chính xác hoặc quá lớn. Nếu mysqld nhận được một gói quá lớn hoặc không chính xác, nó sẽ giả định rằng đã xảy ra sự cố với máy khách và đóng kết nối

Và có hai điều bạn có thể làm để khắc phục nó

1. Tăng wait_timeout

  • Để xem giá trị hiện tại, hãy chạy lệnh này

SELECT @@wait_timeout;

  • Từ ứng dụng khách của bạn, hãy thực hiện lệnh này để đặt giá trị cao hơn cho wait_timeout

SET GLOBAL wait_timeout=600;

  • Bạn cũng có thể khắc phục bằng cách thay đổi biến mysql giới hạn [wait_timeout] trong tệp cấu hình my.cnf của mình. Thông thường nó nằm ở
    SELECT @@wait_timeout;
    
    0

wait_timeout=600;

Sau đó khởi động lại máy chủ và thử nhập lại

2. Tạo

SELECT @@wait_timeout;
1

biến max_allowed_packet là kích thước tối đa của một gói hoặc bất kỳ chuỗi được tạo/trung gian nào hoặc bất kỳ tham số nào được gửi bởi hàm API mysql_stmt_send_long_data() C. Giá trị nhỏ nhất là 1024 và giá trị lớn nhất là 107374182. Giá trị này theo mặc định là nhỏ, để bắt các gói lớn hoặc không chính xác

  • Để xem giá trị hiện tại

SELECT @@max_allowed_packet;

  • Từ phía máy khách của bạn, hãy tăng giá trị toàn cầu của
    SELECT @@wait_timeout;
    
    1bằng cách chạy lệnh này sau khi đăng nhập vào tài khoản gốc

________số 8_______

Thay a-big-size bằng giá trị lớn hơn, 107374182 chẳng hạn

  • Hoặc bạn có thể chỉnh sửa tệp cấu hình MySQL của tôi. cnf với dòng này

max_allowed_packet=a-big-size

Sau đó khởi động lại máy chủ và thử nhập lại


Cần một Công cụ GUI tốt cho MySQL? . 


Cơ sở dữ liệu là thành phần chính của hầu hết các trang web hiện đại nên các lỗi ảnh hưởng đến cơ sở dữ liệu của bạn có xu hướng đặc biệt đáng lo ngại. Ví dụ: lỗi “Máy chủ MySQL đã biến mất” có thể khiến bạn tin rằng cơ sở dữ liệu của mình đã bị mất. Điều đó có nghĩa là bạn có thể phải dùng đến bản sao lưu mới nhất để khởi động và chạy trang web của mình

Mặc dù nghe có vẻ đáng sợ, tuy nhiên, lỗi “MySQL server has gone gone” khá dễ khắc phục. Trên thực tế, với các hướng dẫn phù hợp, trang web của bạn sẽ được sao lưu và chạy trong vài phút

Trong bài viết này, chúng tôi sẽ cho bạn thấy lỗi “MySQL server has gone gone” trông như thế nào và nguyên nhân có thể gây ra lỗi này trong WordPress. Sau đó, chúng tôi sẽ hướng dẫn bạn cách khắc phục và ngăn lỗi này xuất hiện lại trong tương lai

Cùng bắt tay vào làm

Giới thiệu về lỗi “MySQL Server Has Gone Away”

Trước tiên, chúng ta hãy xem nhanh lỗi “MySQL server has gone gone” trông như thế nào

Mã lỗi: 2006 - máy chủ mysql đã biến mất
Trình duyệt hiển thị lỗi "Máy chủ MySQL đã biến mất"

Bản thân lỗi này khá đơn giản và nó hầu như luôn xuất hiện theo cùng một cách. Tuy nhiên, tùy thuộc vào trình duyệt bạn sử dụng và cấu hình máy chủ của bạn, từ ngữ cụ thể có thể thay đổi một chút

Kinsta chiều chuộng tôi đến mức bây giờ tôi yêu cầu mức độ dịch vụ đó từ mọi nhà cung cấp. Chúng tôi cũng cố gắng đạt được mức đó với sự hỗ trợ của công cụ SaaS

Mã lỗi: 2006 - máy chủ mysql đã biến mất
Suganthan Mohanadasan từ @Suganthanmn
Xem kế hoạch

Đối với bản thân lỗi, nó liên quan đến cơ sở dữ liệu MySQL của bạn, như bạn có thể tưởng tượng từ cái tên. Cụ thể hơn, một trong ba điều thường gây ra lỗi này trên hầu hết các trang web

  1. Có một bảng bị hỏng trong cơ sở dữ liệu của bạn. Cơ sở dữ liệu của bạn bị hỏng nên bạn cần hoàn nguyên về bản sao lưu gần đây hoặc sửa chữa nó
  2. Cài đặt 'thời gian chờ' PHP của bạn quá thấp. Nếu tập lệnh PHP cần quyền truy cập vào cơ sở dữ liệu của bạn và nó không thể tìm nạp thông tin trong khoảng thời gian chờ đã được đặt, điều này cũng có thể gây ra lỗi nói trên
  3. 'Gói' đã bị loại bỏ hoặc quá lớn. Máy chủ cho rằng đây là trường hợp, về cơ bản, nó sẽ đóng kết nối và đưa ra lỗi

May mắn thay, tất cả những vấn đề này có thể được giải quyết dễ dàng. Hãy nói về cách bạn có thể bắt đầu quá trình khắc phục sự cố

Cách khắc phục lỗi “MySQL Server Has Gone Away” trong WordPress (3 phương pháp)

Như chúng ta đã thấy, có một số nguyên nhân tiềm ẩn gây ra lỗi WordPress cụ thể này

Vì lý do đó, có nhiều giải pháp khả thi khác nhau. Trong hầu hết các trường hợp, một trong những cách khắc phục bên dưới sẽ giúp loại bỏ lỗi trên trang web của bạn. Vì vậy, nếu một cái không hoạt động, bạn chỉ cần chuyển sang cái tiếp theo

1. Chỉnh sửa WordPress wp-db của bạn. tệp php

Nếu cài đặt thời gian chờ PHP của trang web của bạn quá thấp và cơ sở dữ liệu của bạn quá lớn, thì việc tìm nạp dữ liệu bạn cần trong cửa sổ đó có thể là một vấn đề. Như chúng tôi đã đề cập trước đây, điều này có thể gây ra lỗi “Máy chủ MySQL đã biến mất”

Để ngăn điều đó xảy ra, bạn cần chỉnh sửa một trong các tệp cốt lõi của WordPress, được gọi là wp-db. php. Bạn có thể tìm thấy tệp này trong thư mục gốc WordPress của mình bằng cách mở thư mục wp-gộp

Mã lỗi: 2006 - máy chủ mysql đã biến mất
wp-db. tập tin php

Để truy cập các tệp này, chúng tôi khuyên bạn nên sử dụng và kết nối qua SFTP (hiểu sự khác biệt giữa FTP và SFTP). Khi bạn đã kết nối với trang web của mình, hãy tìm wp-db. php và nhấp chuột phải vào nó để mở tệp bằng trình soạn thảo văn bản cục bộ mặc định của bạn. Làm theo hướng dẫn nhanh này để hiển thị tất cả các tệp ẩn trong Filezilla

Sau đó, tìm kiếm trong tệp cho dòng sau

$this->ready = true;

Thêm dòng sau ngay bên dưới mã đó

$this->query("set session wait_timeout=300");

Những gì mã này thực hiện là đặt giá trị thời gian chờ PHP của bạn thành 300 giây, giá trị này sẽ nhiều hơn mức bạn cần để ngăn bất kỳ lỗi nào hiển thị

Bây giờ hãy lưu các thay đổi vào wp-db của bạn. php và đảm bảo rằng trang web của bạn đang tải như bình thường

Triển khai ứng dụng của bạn lên Kinsta - Bắt đầu với Khoản tín dụng $20 ngay bây giờ

Chạy nút của bạn. js, Python, Go, PHP, Ruby, Java và Scala, (hoặc hầu hết mọi ứng dụng khác nếu bạn sử dụng Dockerfiles tùy chỉnh của riêng mình), trong ba bước đơn giản

Triển khai ngay bây giờ và nhận $20 giảm giá

Xin lưu ý rằng nếu bạn là người dùng Kinsta, bạn không cần phải thay đổi cài đặt thời gian chờ PHP của trang web của mình. Tất cả các gói của chúng tôi đều có giá trị thời gian chờ cơ bản là 300 giây ngay lập tức và chúng tôi có thể giúp bạn tăng giá trị này tùy theo nhu cầu của bạn

2. Sửa chữa cơ sở dữ liệu WordPress của bạn

Đôi khi cơ sở dữ liệu WordPress của bạn có thể bị hỏng, do đó có thể dẫn đến lỗi khi bạn đang cố thiết lập kết nối với nó. Đây không phải là điều phổ biến nhưng nó có thể xảy ra trong quá trình phát triển của một trang web bình thường khi bạn thêm nhiều bảng hơn vào cơ sở dữ liệu của mình (cũng như thông tin về plugin và chủ đề)

Để khắc phục sự cố này, bạn có thể sử dụng chức năng WordPress tích hợp để. Tuy nhiên, trước tiên, bạn sẽ phải bật tính năng đó. Điều này liên quan đến việc điều hướng đến thư mục gốc WordPress của bạn và mở wp-config. php để chỉnh sửa nó

Khi tệp được mở, cuộn xuống dưới cùng và thêm dòng sau vào tệp

define('WP_ALLOW_REPAIR', true);

Dòng mã đơn giản đó yêu cầu WordPress kích hoạt chức năng sửa chữa cơ sở dữ liệu. Lưu các thay đổi vào wp-config. php và đóng tệp. Để chạy chức năng, chỉ cần truy cập URL sau

https://yourwebsite.com/wp-admin/maint/repair.php

Sau đó, WordPress sẽ hỏi xem bạn có muốn sửa chữa cơ sở dữ liệu của mình hay sửa chữa và tối ưu hóa nó không. Tùy chọn đầu tiên là tất cả những gì bạn cần để sửa lỗi “Máy chủ MySQL đã biến mất”

Mã lỗi: 2006 - máy chủ mysql đã biến mất
Tùy chọn cơ sở dữ liệu sửa chữa trong WordPress

Quá trình này sẽ không mất nhiều thời gian và khi hoàn tất, lỗi được đề cập sẽ biến mất. Tuy nhiên, bạn vẫn còn một số việc phải dọn dẹp, vì bạn sẽ cần tắt chức năng sửa chữa cơ sở dữ liệu trên trang web của mình. Nếu không, bất kỳ ai cũng có thể kích hoạt nó bằng cách truy cập cùng một URL

Mệt mỏi với hỗ trợ lưu trữ WordPress cấp 1 mà không có câu trả lời? . Kiểm tra kế hoạch của chúng tôi

Do đó, trước khi kết thúc, hãy quay lại thư mục gốc WordPress của bạn và xóa dòng mã bạn đã thêm trước đó. Sau đó lưu các thay đổi của bạn vào tệp và đóng nó

3. Khôi phục trang web của bạn bằng bản sao lưu thông qua nhà cung cấp dịch vụ lưu trữ của bạn

Nếu vẫn thất bại, bạn luôn có thể sử dụng bản sao lưu đầy đủ của trang web của mình để khôi phục nó về điểm khi cơ sở dữ liệu hoạt động bình thường. Lý tưởng nhất là bạn sẽ làm điều này với một bản sao lưu gần đây để bạn mất ít dữ liệu nhất có thể

Vấn đề là không phải tất cả các máy chủ web WordPress đều cung cấp chức năng sao lưu tích hợp cho người dùng của họ. Điều đó có nghĩa là bạn thường gặp khó khăn khi sử dụng các giải pháp thủ công như plugin. Những công cụ này không nhất thiết là xấu, nhưng nếu bạn không có quyền truy cập vào khu vực quản trị WordPress của mình, việc khôi phục bản sao lưu trở thành một nhiệm vụ khó khăn

Thông tin

Kinsta cung cấp các bản sao lưu tự động hàng ngày và do hệ thống tạo cho tất cả các gói. Sao lưu hàng giờ tùy chọn cũng có sẵn

Mặt khác, tại Kinsta, bạn có quyền truy cập vào các bản sao lưu đầy đủ của trang web của mình với mọi gói. Để khôi phục trang web của bạn (bao gồm cả cơ sở dữ liệu của nó) về điểm trước đó, bạn chỉ cần truy cập bảng điều khiển lưu trữ của mình và tìm tab Sao lưu

Mã lỗi: 2006 - máy chủ mysql đã biến mất
Khôi phục bản sao lưu của bạn trong MyKinsta

Nhấp vào bản sao lưu bạn muốn khôi phục và bạn sẽ thấy thêm chi tiết về thời điểm nó được tạo. Đối với mỗi bản sao lưu, có một nút Khôi phục mà bạn có thể sử dụng để đưa trang web của mình trở lại trạng thái tại thời điểm đó

Hãy nhớ, mặc dù. sử dụng chức năng này sẽ ghi đè lên phiên bản hiện tại của trang web của bạn. Vì vậy, bạn sẽ chỉ muốn sử dụng nó như một biện pháp cuối cùng khi bạn chắc chắn rằng mình sẽ không mất bất kỳ thông tin quan trọng nào

Thông tin

Tất cả các gói Kinsta đều có tính năng tối ưu hóa cơ sở dữ liệu MySQL tự động hàng tuần để đảm bảo hiệu suất cơ sở dữ liệu tốt hơn. Kiểm tra các kế hoạch của chúng tôi để biết thêm thông tin

Bạn gặp phải lỗi đáng sợ *MySQL Server Has Gone Away* trong WordPress? . 😰🔧 #vấn đề về mysqlNhấp để Tweet

Tóm lược

Trang web của bạn càng phát triển thì càng cần nhiều dữ liệu để lưu trữ. Tất cả thông tin đó đi vào cơ sở dữ liệu WordPress của bạn. Trong một số trường hợp, nếu dung lượng quá lớn, bạn có thể gặp lỗi như “Máy chủ MySQL đã biến mất”

Nếu bạn gặp phải lỗi cụ thể này, đây là ba cách bạn có thể loại bỏ nó

  1. Chỉnh sửa WordPress wp-db của bạn. tập tin php
  2. Sửa chữa cơ sở dữ liệu WordPress của bạn
  3. Khôi phục trang web của bạn bằng bản sao lưu thông qua nhà cung cấp dịch vụ lưu trữ của bạn

Trong hướng dẫn khác này, chúng tôi chỉ cho bạn các mẹo và bước bổ sung về cách khắc phục sự cố cơ sở dữ liệu WordPress của bạn

Bây giờ bạn đã biết cách khắc phục, đã đến lúc thực sự thoát khỏi thông báo lỗi khó chịu này. Nếu bạn vẫn gặp sự cố với MySQL, bạn có thể muốn kiểm tra Cách khắc phục lỗi MySQL 1064


Nhận tất cả các ứng dụng, cơ sở dữ liệu và trang web WordPress của bạn trực tuyến và dưới một mái nhà. Nền tảng đám mây hiệu suất cao, đầy đủ tính năng của chúng tôi bao gồm

  • Dễ dàng thiết lập và quản lý trong bảng điều khiển MyKinsta
  • Hỗ trợ chuyên gia 24/7
  • Mạng và phần cứng Google Cloud Platform tốt nhất, được cung cấp bởi Kubernetes để có khả năng mở rộng tối đa
  • Tích hợp Cloudflare cấp doanh nghiệp cho tốc độ và bảo mật
  • Tiếp cận đối tượng toàn cầu với tối đa 35 trung tâm dữ liệu và hơn 275 PoP trên toàn thế giới

Hãy tự kiểm tra với $20 trong tháng đầu tiên của Lưu trữ ứng dụng hoặc Lưu trữ cơ sở dữ liệu. Khám phá kế hoạch của chúng tôi hoặc nói chuyện với bộ phận bán hàng để tìm thấy sự phù hợp nhất của bạn

Tại sao cơ sở dữ liệu MySQL của tôi biến mất?

Lý do phổ biến nhất dẫn đến lỗi máy chủ MySQL đã biến mất là máy chủ đã hết thời gian chờ và đóng kết nối . Trong trường hợp này, bạn thường nhận được một trong các mã lỗi sau (mã lỗi bạn nhận được phụ thuộc vào hệ điều hành). Khách hàng không thể gửi câu hỏi đến máy chủ.

SQLyog có giống với MySQL không?

SQLyog là công cụ GUI dành cho RDBMS MySQL .

SQLyog MySQL là gì?

SQLyog là giải pháp quản trị và phát triển MySQL mạnh mẽ , được 2 người tin cậy. 5 triệu người dùng trên khắp thế giới. Với SQLyog, các tổ chức có một công cụ cho phép các nhà phát triển cơ sở dữ liệu, quản trị viên và kiến ​​trúc sư so sánh, tối ưu hóa và lập tài liệu một cách trực quan.