Làm cách nào để sửa máy chủ mysql 2006 đã biến mất?

Tại sao các trang web Magento điều khiển cơ sở dữ liệu lại phổ biến?

Do đó, quản lý cơ sở dữ liệu là rất quan trọng đối với Magento Website

Thông thường, do cài đặt sai trong tệp cấu hình MySQL, các trang web Magento hiển thị các lỗi như 2006 MySQL server has gone away

Chúng tôi biết điều này bởi vì, tại Bobcares, chúng tôi thường nhận được yêu cầu từ khách hàng của mình để sửa lỗi Magento MySQL như một phần của Dịch vụ quản lý máy chủ của chúng tôi

Do đó, trong bài viết này, chúng tôi thảo luận về cách Kỹ sư hỗ trợ của Bobcares có thể giúp bạn khắc phục các sự cố thuộc loại này một cách nhanh chóng và hiệu quả

Điều gì, khi nào và tại sao máy chủ MySQL đã biến mất?

Magento lưu trữ tất cả thông tin trong cơ sở dữ liệu MySQL

Quản lý cơ sở dữ liệu là rất quan trọng khi bạn phụ trách một trang web Magento. Tuy nhiên, nó có thể khá phức tạp. Ngay cả những lỗi nhỏ cũng có thể dẫn đến lỗi trang web hoặc thậm chí mất dữ liệu hoàn toàn

Lỗi làSQLSTATE[HY000]: General error: 2006 MySQL server has gone away một lỗi phổ biến mà hầu hết chủ sở hữu trang web gặp phải khi họ quản lý cơ sở dữ liệu. Hầu hết, lỗi này có thể xảy ra khi chúng tôi kết nối với cơ sở dữ liệu Magento hoặc khi cố gắng tạo cơ sở dữ liệu. Lỗi trên bảng điều khiển Magento trông giống như

Ở đây, mã SQLSTATE cho biết tình trạng lỗi trong cơ sở dữ liệu. Cũng thế. HY000 cho biết mô tả "lỗi chung"

Theo kinh nghiệm của chúng tôi trong việc quản lý máy chủ MySQL, có nhiều nguyên nhân dẫn đến lỗi này. Nó bao gồm

  1. Cài đặt thời gian chờ máy chủ
  2. Cài đặt giới hạn truy vấn không phù hợp
  3. Chèn quá nhiều hàng
  4. khối tường lửa
  5. Lỗi tra cứu tên máy chủ

Cách chúng tôi sửa lỗi 2006 Máy chủ MySQL đã biến mất trên Magento

Bây giờ, chúng ta sẽ xem thông tin về lý do xảy ra lỗi này và cách Kỹ sư hỗ trợ của chúng tôi khắc phục sự cố

1. Cài đặt hết thời gian trong cấu hình MySQL

Thông thường, lỗi SQLSTATE[HY000]: General error: 2006 MySQL server has gone away này xảy ra khi không có máy chủ MySQL. Trong những trường hợp như vậy, MySQL ngừng hoạt động như vậy. Điều này có thể là do thiếu bộ nhớ trong máy chủ hoặc do kết nối mạng kém ngăn truy cập máy chủ

Đôi khi, cài đặt không đúng trong cấu hình MySQL gây ra tình trạng không khả dụng của máy chủ MySQL. Ví dụ: khi các thông số như wait_timeout ngắn hơn 10 giây có thể dẫn đến lỗi

Để khắc phục sự cố này, Kỹ sư hỗ trợ của chúng tôi kiểm tra cấu hình MySQL tại. cnf/của tôi. ini và điều chỉnh giá trị này theo yêu cầu truy vấn của MySQL

Trên máy chủ Linux,

Chúng tôi mở /etc/my.cnf và sửa đổi giá trị của wait_timeout. Ngoài ra, chúng tôi đặt tùy chọn, kết nối lại thành 1, để đảm bảo rằng MySQL cố gắng kết nối lại sau khi kết nối không thành công. Cấu hình cuối cùng sẽ giống như

[mysqld]
wait_timeout = 60
reconnect = 1

Sau đó, chúng tôi khởi động lại dịch vụ MySQL bằng cách sử dụng nó

/etc/init.d/mysql restart

Trên máy chủ Windows

Chúng tôi mở /path-to-mysql-installation/bin/my.ini, đặt wait_timeout = 60 giây

2. Cài đặt giới hạn truy vấn không phù hợp

Tương tự, một lý do khác cho lỗi này có thể là cài đặt giới hạn truy vấn không đúng trong tệp cấu hình MySQL. Nếu máy khách MySQL hoặc máy chủ MySQL nhận gói không đúng (không theo thứ tự) hoặc lớn hơn max_allowed_packet byte, lỗi này có thể xảy ra. Và, nếu gói liên lạc quá lớn, chúng tôi có thể mất kết nối với máy chủ MySQL và dẫn đến lỗi truy vấn

Vì vậy, các Kỹ sư hỗ trợ của chúng tôi đã giải quyết vấn đề này bằng cách tăng giới hạn truy vấn, biến max_allowed_packet trong tệp cấu hình MySQL

Trên Linux,

Chúng tôi mở /etc/my.cnf và tăng giá trị max_allowed_packet

[mysqld]
max_allowed_packet=256M

Trên Windows

Tương tự, chúng tôi mở /path-to-mysql-installation/bin/my.ini, đặt max_allowed_packet = 256M

3. khối tường lửa

Hầu hết thời gian khối tường lửa có thể tạo ra sự cố với cài đặt Magento mới. Theo mặc định, MySQL sử dụng cổng 3306 để thiết lập kết nối. Hầu hết, mọi máy chủ đều sử dụng tường lửa để bảo vệ chúng khỏi bị truy cập trái phép. Do đó, hạn chế tường lửa này cũng có thể là một lý do gây ra lỗi 2006 MySQL server has gone away trên máy chủ Magento

Ngoài ra, lỗi có thể xảy ra khi cổng MySQL bị chặn bởi tường lửa, do đó ngăn cản mọi kết nối đến máy chủ MySQL

Tương tự như vậy, khách hàng cũng có thể thấy lỗi máy chủ MySQL đã biến mất nếu MySQL được khởi động với tùy chọn

/etc/init.d/mysql restart
1

Do đó, Kỹ sư hỗ trợ của chúng tôi khắc phục sự cố này bằng cách điều chỉnh cấu hình tường lửa

[Bắt lỗi 2006 Máy chủ MySQL đã biến mất trên máy chủ Magento? . ]

Sự kết luận

Nói tóm lại, lỗi 2006 Máy chủ MySQL đã biến mất trên Magento có thể xảy ra do cài đặt không đúng trong tệp cấu hình MySQL, chẳng hạn như cài đặt giới hạn truy vấn, cài đặt thời gian chờ, v.v. Hôm nay, chúng tôi đã xem các nguyên nhân gây ra lỗi và cách các Kỹ sư hỗ trợ của chúng tôi khắc phục lỗi đó