Hôm này mình gặp vài case về việc VPS sử dụng AAPANEL thường xuyên bị đầy dung lượng. Khi kiểm tra bằng lệnh df -h
thì ra kết quả disk đã dùng hết 100%
Khi kiểm tra chi tiết từng thư mục thì phát hiện đầy do các file mysql-bin sinh ra quá nhiều trong /www/server/data
. Mỗi file đến vài GB và sinh liên tục.
Các tệp có tên như mysql-bin.000021, mysql-bin.000022, v.v., là các binlog (Binary Logs) của MySQL. Các tệp này được sử dụng để ghi lại tất cả các thay đổi đối với cơ sở dữ liệu MySQL, chẳng hạn như câu lệnh INSERT, UPDATE, DELETE, vv. Binlog rất hữu ích cho việc khôi phục dữ liệu hoặc đồng bộ hóa cơ sở dữ liệu giữa các máy chủ (replication). Tuy nhiên nhiều quá thì sẽ đầy và một số trường hợp sẽ không cần đến nó. Do đó bài hướng dẫn này sẽ giúp bạn tắt nó đi.
Nhưng việc này cần thực hiện an toàn nếu không sẽ gặp lỗi không mong muốn như lỗi mysql hoặc database.
Các bước xử lý mysql-bin trên aaPanel
Nếu dịch vụ mysql của bạn đang chạy, thì tôi khuyên bạn nên thực hiện sao lưu lại dữ liệu ra trước. Sau đó bạn hãy Stop dịch vụ mysql đi.
Bây giờ bạn vào phần Logs như ảnh click vào Empty và Off đi.
Đồng thời lúc này ở trong my.cnf
2 dòng sau cũng đã được vô hiệu. Nếu bạn quen dùng lệnh thì có thể mở trực tiếp file my.cnf
lên và comment 2 dòng này lại.
#log-bin=mysql-bin
#binlog_format=mixed
Bây giờ bạn hãy thực hiện khởi động lại dịch vụ mysql. Sau khi khởi động thành công thì bạn có thể xoá bỏ các file mysql-bin trên rồi nhé.
Chúc bạn thực hiện thành công. Nếu bạn cần xử lý hãy liên hệ với tôi. Tôi sẽ giúp bạn thực hiện nhé.