Tối ưu mysql và database có lẽ là 1 trong những thứ khó nhằn nhất, vì nó cần nhiều kinh nghiệm, phần lớn quản trị server ăn tiền ở mảng này, khi xem bài của 2 tác giả mình thích là Centminmod và Webinoly họ đều có dịch vụ cấu hình mysql và xử lý database cho các ca khó 😀 còn ở bài này, chúng ta xử lý cơ bản, nhẹ nhàng, ở mức học việc, là dùng plugin =))
Cơ bản thì cũng là xóa các thứ đã xóa mà vẫn còn sót trong database, xóa các log của các plugin, theo năm tháng nó nhiều lên 😛 sau đó thì xử lý 1 tẹo cái autoload của wp_options, tiếp theo là index database
Cụ thể trường hợp của mình thì database từ 90Mb xuống còn ~32Mb, autoloaded options size từ hơn 4Mb xuống ~400kb, thời gian chỉ mất 5-10 phút là hoàn thành, mình sẽ nói các ý chính, còn mấy cái lông gà, lông vịt thì sẽ đi lướt
Advanced DB Cleaner PRO
Bạn có thể google các bản trên mạng, plugin này khá nổi tiếng nên nhiều trang share lắm, down về xong cài đặt bình thường là được
Tab General
Tab đầu tiên thì không quan trọng lắm, xóa mấy thứ râu kia cả, không có tác dụng nhiều lắm, nhìn lướt qua là được
Tab Tables
Ấn Scan tables, sau đó ấn vào để lọc các tables Orphans
Orphans mình google thì đại ý là con không cha 😀 nghĩa là nó nằm trong database thôi, chứ nó chẳng có liên hệ với plugin nào đang có cả, kiểu bạn cài plugin vào, sau đó xóa đi, các tables cũ nó vẫn còn sót lại không xóa
Không chắc 100% là Advanced DB Cleaner PRO check đúng hết được, có khi sẽ nhầm 😀 nhìn sơ 1 lượt cho vui xong delete thẳng tay nếu đã backup database 😛
Tiếp theo ấn vào lọc All, search theo size dung lượng lớn nhất, nhìn 5-10 table đầu tiên là đủ, thường mấy thèng gây nặng nhất ở đây
Cụ thể như trường hợp của mình là cái plugin Bloom, mình dùng từ 2018 tới năm nay là gần 5 năm, không sờ vào, dù trang bé tí, nó vẫn phình lên tới ~41Mb
Ấn vào Bulk actions, chọn Empty rows đi
Ngó sơ thêm top 10 còn thèng nào nặng mà không quan trọng, kiểu log thì xóa đi cho nhẹ, bạn cũng có thể thấy wp_yoast_indexable và 1 lố các thứ liên quan, xưa mình có dùng Yoast, mà sau chán không dùng, nó vẫn còn sót lại trong database
Có thể search wp_yoast để cho ra nhiều bảng có tên đó rồi chọn, trường hợp biết chắc chắn plugin này không còn cài, thì cứ thẳng tay delete, không cần Empty rows
Lúc này các table không quan trọng, nặng nhất cũng chỉ còn vài trăm kb, có thể bỏ qua, không cần nhắm nhúi chỉnh sửa thêm bớt vài trăm kb database làm gì
Tab options
Ấn Scan, sau đó ấn vào lọc các Orphans, mạnh tay xóa, nếu đã backup database 😀
Tiếp theo ấn vào lọc All, search theo size dung lượng lớn nhất, nhìn 5-10 dòng đầu tiên là đủ, thấy các thứ bình thường cả thì có thể cho qua, không cần kiểm tra quá kĩ tới từng bảng, từng cột làm gì
Tiếp theo ấn vào lọc wp_options, phần search chọn YES, Size lọc theo dung lượng
Đây là phần autoload-options-size mà nếu dùng Query Monitor bạn sẽ hay thấy
Autoloaded hiểu đơn giản là tự động tải, nghĩa là bất kể bạn vào trang nào, nếu Autoload set yes trong database nó sẽ tự load, lý thuyết nếu người viết plugin, theme mà code tốt, thì chúng ta chẳng cần nhìn tới phần này làm gì, có điều đa phần tay nào cũng code vô tội vạ, cứ nhét autoload yes để hiện cho nhanh, dù thực tế nó không cần phải hiện ra ở mọi trang
Xử lý lúc này thì thường có 2 cách
Trường hợp 1, ví dụ ở đây là et_bloom_stats_cache và swift_performance_options, mình thấy nó không quan trọng, nên xóa luôn
Trường hợp 2, có thể là jetpack_active_plan, mình thấy nó không cần thiết cho việc cứ phải autoload ở mọi trang, nhưng không chắc 100% data ở đây có quan trọng không, xóa thì cũng rủi ro, nên mình sẽ set autoload về NO, để nó không tự động load ở mọi trang nữa
Nếu trang bạn data nhiều, plugin nhiều, thì có thể đi kĩ hơn ở top 10 😀 thèng bibica.net thì mình chỉ làm tới thế thôi 😛
Trong trường hợp cuồng hiệu năng hơn, bạn có thể copy tên của nó lên google, search xem nó có tác dụng gì, hoặc đưa chuột vào giá trị Value, xem nó có gì ở trong để quyết định 😀
+-----------------------+---------+----------------------------------------------------------------+ | name | status | message | +-----------------------+---------+----------------------------------------------------------------+ | autoload-options-size | success | Autoloaded options size (351.24kb) is less than threshold (900 | | | | kb). | +-----------------------+---------+----------------------------------------------------------------+
Mình làm tới đây thì autoload-options-size đã về con số tổng khoảng 350kb, cũng khá ổn rồi
Như mình nói từ đầu, chúng ta tối ưu database kiểu văn nghệ sĩ 😛 cái quan trọng xử lý được là nó ổn rồi (xóa các table Orphans thừa, data rác ), đừng quá tham hiệu năng, cuồng thông số để mà ngồi xử lý on/off từng hàng, từng cột 5-10kb, xui xui off nhầm hiệu năng lại đi xuống, xử lý còn mệt người hơn
Lúc này bạn có thể ấn vào lọc All, sau đó optimized 1 phát là con như cơ bản ổn thỏa rồi
Các tùy chọn Cron jobs để tự optimized hay xóa các file rác thì cá nhân mình thấy không cần thiết, lâu lâu rảnh rảnh thì vào xóa 1 cái là được, chứ các dữ liệu được liệt vào dạng rác, không ai truy xuất vào được để mà thấy chậm 😛
Index WP MySQL For Speed
Index WP MySQL For Speed thì nó có tác dụng tự động lập chỉ mục, nhưng ngoài khóa chính, họ còn bổ xung thêm 1 khóa phụ, theo như tác giả quảng cáo thì nó giúp tìm kiếm dữ liệu nhanh hơn, tốt hơn so với mặc định của WordPress … ở những trang lớn, người nhiều thì tác dụng của việc lập chỉ mục có tác dụng rõ rệt hơn
Mình ban đầu do thấy plugin này nhiều người dùng, cài vào thử thấy đơn giản, dùng ít hôm thấy đúng là có hiệu quả xíu xíu thật 😀
Autoloaded options size từ hơn 4Mb ban đầu xuống < 400kb, nghĩa là server đã giảm tải được khá nhiều ở mỗi lượt truy xuất vào database, dung lượng database từ 90 Mb xuống < 35Mb
Lý thuyết thì mọi thứ đều có cải thiện 😛 thực tế thì không đáng kể, phần vì các plugin mình dùng đều phải nhẹ, không nhẹ thì mình không dùng, nên hiệu quả tối ưu từ database rất thấp, cụ thể thì tới gần 5 năm mình mới phải đi xóa lại các data rác, index database …. thì rõ ràng là không cần thiết lắm ở các trang nhỏ, ít tìm kiếm hay ít tương tác comment, trang nào nhiều bài viết, tương tác mạnh mới thấy rõ sự quan trọng của cấu hình mysql và tối ưu database
Chính sách bình luận: Chúng tôi rất trân trọng các bình luận của bạn và cảm ơn thời gian bạn dành để chia sẻ ý tưởng và phản hồi.
Ghi chú: Những bình luận được xác định là spam hoặc chỉ mang tính quảng cáo sẽ bị xóa.
• Để cải thiện trải nghiệm bình luận, chúng tôi khuyến khích bạn tạo một tài khoản Gravatar. Thêm avatar vào tài khoản Gravatar sẽ giúp bình luận của bạn dễ nhận diện hơn đối với các thành viên khác.
• ✂️ Sao chép và 📋 Dán Emoji 💪 giúp bình luận thêm sinh động và thú vị!