Tối ưu hóa và chống phân mảnh MySQL

Sau một thời gian hoạt động, cơ sở dữ liệu MySQL có thể bị phân mảnh do thao tác thêm, sửa, xóa dữ liệu liên tục. Điều này làm giảm hiệu năng truy vấn và khiến cơ sở dữ liệu hoạt động không còn tối ưu. Để khắc phục, bạn nên định kỳ chạy lệnh kiểm tra và tối ưu hệ thống.

Tối ưu hóa và chống phân mảnh MySQL

1. Câu lệnh tối ưu đơn giản

MySQL cung cấp sẵn một công cụ dòng lệnh gọi là mysqlcheck. Bạn chỉ cần chạy lệnh sau trên server (áp dụng cho cả CentOS và Ubuntu):

mysqlcheck -o --all-databases

Lệnh trên sẽ:

  • Kiểm tra tất cả cơ sở dữ liệu hiện có
  • Tự động tối ưu các bảng nếu phát hiện có phân mảnh
  • Không yêu cầu tắt MySQL khi chạy (nên có thể thực hiện live)

2. Lưu ý trước khi thao tác

  • Nên chạy bằng tài khoản có quyền root hoặc sử dụng sudo
  • Cần đảm bảo bạn có quyền truy cập vào MySQL qua command-line
  • Với website lớn, thao tác này có thể mất vài giây đến vài phút

3. Sao lưu trước khi tối ưu (nên làm)

Dù lệnh trên an toàn, bạn vẫn nên sao lưu cơ sở dữ liệu trước khi thực hiện để tránh mất mát dữ liệu không mong muốn. Bạn có thể tham khảo hướng dẫn chi tiết tại đây:

Kết luận

Việc tối ưu hóa cơ sở dữ liệu nên được thực hiện định kỳ, đặc biệt với các website có lưu lượng cao hoặc sử dụng MySQL lâu năm. Chỉ với một lệnh đơn giản, bạn có thể cải thiện hiệu năng truy vấn và đảm bảo hệ thống hoạt động ổn định hơn.

Bình luận


  • Không có bình luận.

Init Toolbox

Nhấn Ctrl + \ trên máy tính, hoặc vuốt sang trái ở bất kỳ đâu trên mobile.

Đăng nhập





Đang tải...