The MySQL server has gone away (error 2006) tạm dịch là máy chủ của đi đâu mất tiêu rồi =)))) 

Ơ... bật mysql nó vẫn lên mà, dự án khác vẫn kết nối được mà, mở ra database vẫn còn đây ... mà kêu mysql của mình mất tiêu là sao ta :D Hư cấu hư cấu =)))) 

Tất cả vẫn còn đây <3 

Thực ra MySQL của bạn vẫn còn đó, chỉ là khó tìm nhau quá thôi, tìm hoài không thấy nên nó báo lỗi luôn đấy <3 
Cách xử trí là hãy nhanh tay mở file cấu hình Mỹ.cnf ra và thay đổi cấu hình, rồi khởi động lại MySQL là okie ;) 


Chi tiết thay đổi được diễn giải ở đoạn sau: 


Cấu hình MySQL/MariaDB:

  • wait_timeout - Thời gian đợi để kết nối trước khi đóng được tính theo g. Tức là, nó kết nối tới db và chờ ở đó, nếu quá time này thì nó sẽ không chờ nữa và cho rằng không kết nối được. Vậy là bạn có thể nghĩ rằng, chính điều này gây ra lỗi đúng hem. Cũng có thể lý do vì thế đó, nên bạn hãy thử tăng giờ chờ của tham số này lên nha 
  • interactive_timeout - Số giây mà server đợi cho tới khi có tương tác với kết nối. Cái này time ít quá cũng có thể gây ra lỗi 
  • max_allowed_packet - Số lượng byte tối đa được gửi đi trong một packet. Cái này nhỏ quá cũng gay ra lỗi. 

Ví dụ bạn có thể configue như sau  my.cnf:

[mysqld]
# 8 hours
wait_timeout = 28800
# 8 hours
interactive_timeout = 28800
max_allowed_packet = 256M
Ngoài ra, cũng có một thuộc tính nữa cũng có thể gây ra lỗi đó là do cơ chế authenticaion. Bạn thử thêm Setting sau vào dưới [mysql] xem sao nhé (nhớ là dưới mysql). 
[mysqld]
default_authentication_plugin=mysql_native_passwordNgoài 
Tôi đã thay đổi và thành công :) 
[mysqld]
default_authentication_plugin=mysql_native_password
user=mysql
port=3306
socket =/opt/lampp/var/mysql/mysql.sock
key_buffer=16M
max_allowed_packet=256M
table_open_cache=64
sort_buffer_size=512K
net_buffer_length=8K
read_buffer_size=256K
read_rnd_buffer_size=512K
myisam_sort_buffer_size=8M
interactive_timeout = 28800

lưu ý: bạn nhớ xóa cache trước khi chạy lại lệnh nha 

php artisan cache:clear

php artisan config:clear

Post a Comment

Mới hơn Cũ hơn