Index WordPress MySQL (hoặc MariaDB) để tăng tốc độ load cho các website lớn, có nhiều dữ liệu.
Nếu website WordPress của bạn có database lớn với lượng bài viết, sản phẩm, người dùng… rất nhiều thì bài viết này chính là dành cho bạn. Theo thời gian, database của WordPress sẽ phình to lên với nhiều dữ liệu được lưu trữ. Nó khiến cho tốc độ phản hồi truy vấn của database cũng chậm hơn vì sẽ mất nhiều thời gian hơn để tìm kiếm dữ liệu được yêu cầu. Việc index WordPress MySQL (tương tự với MariaDB) sẽ giúp dữ liệu được lưu trữ một cách có tổ chức hơn, dễ dàng tìm kiếm hơn.
Tham khảo thêm:
- Xóa các table không sử dụng trong WordPress database
- Xóa các bản ghi không sử dụng trong WordPress database
Khi nào bạn nên index WordPress MySQL?
Điều này chỉ nên được thực hiện trên các website có database lớn, có hàng nghìn bài viết, hàng nghìn sản phẩm, hàng nghìn người dùng… Bạn cũng có thể áp dụng nó cho các website nhỏ, tuy nhiên hiệu quả sẽ không rõ rệt, thậm chí không có sự khác biệt.
Một số lưu ý quan trọng trước khi tiến hành
- Mặc dù quá trình thực hiện khá an toàn. Tuy nhiên, chúng tôi khuyên bạn nên backup database của website trước khi tiến hành để đề phòng các sự cố có thể xảy ra.
- Hãy chuyển công nghệ lưu trữ của các table trong database từ MyISAM sang InnoDB. Nếu bạn chưa chuyển, có thể tham khảo bài viết “Chuyển công nghệ lưu trữ database từ MyISAM sang InnoDB“.
- Nếu các table của bạn có dung lượng lớn, hãy index lần lượt từng table thay vì index tất cả cùng một lúc để tránh bị timed out.
- Các bạn có thể xóa plugin sau khi hoàn tất công việc, mọi kết quả index vẫn sẽ được giữ lại.
- Không sử dụng các plugin có tính năng tìm kiếm và thay thế dữ liệu trong database (chẳng hạn như Better Search Replace) sau khi đã index. Nếu muốn làm việc này, các bạn sẽ cần phải loại bỏ index để khôi phục về mặc định của WordPress trước (xem bước 6). Nếu không, rất có thể các bạn sẽ gặp lỗi thay thế sai dữ liệu, thậm chí làm hỏng database.
Hướng dẫn Index WordPress MySQL
1. Đầu tiên, các bạn cần cài đặt và kích hoạt một plugin có tên là Index WP MySQL For Speed (download).
2. Tiếp theo, truy cập Tools => Index MySQL. Tại đây, các bạn sẽ thấy giao diện như sau:
Trong đó:
- I have made a backup: tick vào mục này để xác nhận bạn đã backup database trước khi tiến hành index.
- Add high-performance keys: click vào nút Select All để chọn toàn bộ (nếu các table không có quá nhiều row). Ngược lại, hãy tick chọn một vài table cho mỗi lần chạy.
Click vào nút Add Keys Now để bắt đầu quá trình index WordPress MySQL. Thời gian nhanh hay chậm hoàn toàn phụ thuộc vào cấu hình của host và kích thước của các table.
3. Sau khi hoàn tất, các bạn sẽ nhận được thông báo trông giống như thế này:
4. Nếu các bạn nhận được yêu cầu Convert keys thay vì Add keys cho table nào đó, hãy chọn table rồi click vào nút Convert Keys Now.
5. Kiểm tra kết quả bằng cách thử truy cập và cảm nhận tốc độ xử lý của website có được cải thiện so với trước đó hay không.
6. Nếu muốn loại bỏ index để khôi phục mặc định của WordPress, các bạn làm tương tự như bước 2 nhưng thay vào đó click nút Revert Keys Now.
Thật đơn giản phải không nào? Chúc các bạn thành công!
Bạn đã index WordPress MySQL bao giờ chưa? Bạn đánh giá thế nào về hiệu quả của nó? Hãy cho chúng tôi biết ý kiến của bạn thông qua khung bình luận bên dưới.
Nếu bạn thích bài viết này, hãy theo dõi blog của tôi để thường xuyên cập nhật những bài viết hay nhất, mới nhất nhé. Cảm ơn rất nhiều. :)
cũng thấy hay mà không dám thử, đụng vào cái này em thấy nguy hiểm quá
Backup database đi bạn, xong thử thoải mái. Lỗi thì restore thôi, mà phần lớn là không lỗi gì đâu. :))
WP căn bản có dùng k nhỉ, site e mới 300 post vs 500 tag dạng tin tức k biết nên sử dụng không
Có bạn nhé. Mà sao dùng nhiều tag vậy? Nhiều tag quá nó làm “loãng” web, không tốt cho SEO đâu. :P
uh trước đây google có lấy tag làm chỉ số nên thêm vào 1 bài 2-4 tag, giờ k giám xóa sợ bị gãy linl. e vừa update như bài bác thì thấy có vẻ nhanh hơn thì phải, truy cập k cảm nhận dc nhưng truy cập các page speed vs GTmetrix có lên ít điểm
Các site có lượng dữ liệu lớn, database cồng kềnh thì mới thấy rõ hiệu quả. Còn về tag thì bạn gộp vs xóa bớt đi. Redirect 301 là được mà. Mình vừa xóa gần 400 tag đây, chẳng thấy ảnh hưởng gì tiêu cực, thậm chí còn tăng traffic. :P
giờ xóa tag 1 phát có bị google đánh xuống k nhỉ, vào xem đang gần 500 tag mà sợ xóa 1 lúc sợ bị link gãy google đánh giá yếu. giờ xóa là link về 404
Redirect 301 các trang 404 về trang chủ hoặc bài viết tương tự là được mà. Tham khảo: Redirect trang bị lỗi 404 về trang chủ trong WordPress
Yoast SEO Premium có tính năng tạo 401 khi xóa bác à, vừa thử xóa thì nó hiện 2 lựa chọn tạo chuyển sang trang mới hoặc sang 401. e cho thành 401 luôn
Xem kỹ đi bạn. Đó là 410, không phải là 301. :P
Làm xong mình gỡ plugin đi được không em.
Cái này em không rõ anh nhé. Hình như xóa được. Em chưa thử. Site của em vẫn duy trì plugin.
Anh đã làm theo hướng dẫn bài viết. Không thấy lỗi gì, tốc đã thì cảm nhận mượt hơn hẳn. Cảm ơn Hiếu !
Cho mình hỏi việc index này giống như công khai dữ liệu database lên trực tuyến đúng không. Nếu vậy mình cần bảo mật gì không?
Cái này không phải index như Google đâu bạn. Nó giống tính năng index của Windows ấy. Nghĩa là đánh chỉ mục và sắp xếp dữ liệu một cách khoa học hơn để khi truy vấn có thể tìm ra dữ liệu cần thiết nhanh hơn. Nên bạn không cần phải bảo mật cái gì cả.