Contents
1. Dọn dẹp database với plugin
Trước khi vào các phần can thiệp thủ công vào database, mình muốn nói qua cho bạn biết về cách dọn dẹp database bằng plugin vì nó an toàn hơn, dễ thực hiện.
Trong WordPress có rất nhiều plugin miễn phí có thể hỗ trợ bạn quét sạch mọi dữ liệu rác chỉ với một cú click, điển hình là plugin WP Database Cleaner giúp bạn dọn dẹp các dữ liệu không cần thiết, kể cả các tags chưa có bài viết.
Nhưng nếu bạn có chi phí, mình khuyên các bạn nên dùng plugin Smart Cleanup Tools mà mình đang dùng cho Thachpham.com, vô cùng tốt và hiệu quả, hỗ trợ tự động dọn dẹp database định kỳ.
2. Dọn dẹp database với lệnh SQL
Nguy hiểm là vậy nhưng hiệu quả của nó rất tốt, chỉ cần một chút hiểu biết SQL là bạn sẽ dễ dàng sử dụng nó trong bất kỳ trường hợp nào. Nhưng ở đây, mình chỉ hướng dẫn bạn cách xóa các cookies không cần thiết chứa trong table wp_options vì nó có thể chiếm vài MB của database nếu blog của bạn hoạt động lâu rồi.
Đầu tiên hãy truy cập vào PhpMyAdmin, chọn database mà bạn cần dọn dẹp bên cột trái và ấn nút SQL phía trên để bắt đầu thực thi lệnh.
Sau đó copy đoạn này vào bên trong khung chạy lệnh rồi ấn nút Go, nếu bạn dùng prefix database khác với wp_ thì sửa lại nhé. Nó có hỏi thì thì cứ Ok.
DELETE FROM `wp_options` WHERE `option_name` LIKE ‘%_transient_%’
Và bây giờ bạn sẽ nhận được thông báo màu xanh hiển thị số dòng mà nó đã xóa đi, ít hay nhiều tùy theo độ lớn database của bạn.
3. Xóa các table của các plugin không còn sử dụng
Một số plugin khi cài vào sẽ “bonus” cho bạn thêm vào table trong database mà khi gỡ ra nó không chịu xóa đi, điều này có thể làm bạn hơi rối mắt.
Do đó, thi thoảng nên kiểm tra xem trong database của bạn có table nào không còn sử dụng hay không. Nếu không thì cứ chọn nó và chọn tác vụ Drop là xong.
Hãy cẩn thận khi xóa table nhé và chắc chắn bạn nên hiểu mình đang làm gì, cũng đừng nên quên backup database trước khi làm việc này.
4. Tìm và xóa các giá trị database không sử dụng
Nếu bạn đã sử dụng website WordPress trong một thời gian dài, đã từng sử dụng quá nhiều plugin và theme khác nhau thì chắc chắn database của bạn sẽ chứa rất nhiều những giá trị không còn sử dụng đến, ví dụ như các cột giá trị của post meta và các thiết lập tùy chọn tự sản sinh ra trong plugin và theme.
Khi vào database, bạn nên để ý đến table wp_postmeta đầu tiên vì nó sẽ chứa các dữ liệu liên quan đến các dữ liệu vĩ mô của các post, ví như bạn sử dụng các plugin có thiết lập khi đăng bài thì nó sẽ lưu vào đây. Hãy ấn chọn table này và bạn sẽ thấy các giá trị của nó:
Bạn hãy để ý phần meta_key, nghĩa là tên của khóa trong custom field. Bạn xem có khóa nào của các plugin mà bạn nghĩ là không còn sử dụng nữa ngoài các khóa của WordPress (luôn bắt đầu là _wp). Chẳng hạn như mình thấy, mình có một số khóa tên essb_hidefb, essb_off và các khóa này mình nghĩ là không còn sử dụng nữa. Vậy thì việc tiếp theo mà mình cần làm đó là tìm toàn bộ các khóa theo tên này xem nó có nhiều không.
Mình chọn lên tab Search ở trên. Ở phần khóa meta_key, mình sẽ nhập một phần tên của khóa cần tìm kiếm và mình sẽ chọn kiểu Operator là LIKE %…% để có thể tìm theo tên tương đồng. Cuối cùng ấn nút Go để nó tìm.
Và bây giờ nó sẽ liệt kê ra toàn bộ danh sách các khóa theo tên mà bạn tìm, bạn sẽ biết được nó có bao nhiêu dữ liệu như vậy.
Nếu bạn cảm thấy cần xóa toàn bộ các dữ liệu này thì hãy copy cái dòng Query ở trên.
Và chuyển qua tab SQL kế bên rồi paste vào, thay chữ SELECT * thành DELETE rồi ấn Go.
Và nó sẽ thông báo có bao nhiêu dữ liệu liên quan tới khóa này đã được xóa.
Các bạn làm tương tự với các table khác nhé. Xin nhắc lại là làm table nào thì hãy chọn table đó rồi làm theo cách 4 này.
LỜI KẾT
Ở trên mình đã chỉ bạn một vài cách làm sạch dữ liệu thừa trong database và sau khi làm xong, bạn chắc chắn sẽ thấy sự thay đổi rõ rệt trong dung lượng database của web mình.
Một database nhẹ có thể vừa giúp bạn tiện lợi trong việc sao lưu, di chuyển mà vừa giúp website xử lý nhanh hơn, hy vọng các tips nhỏ trên sẽ giúp ích bạn trong việc tối ưu database.