Hotline : 1800 1093 - 07 088 44444
Share

Hướng dẫn chi tiết cách tối ưu Database WordPress

29/12/2021

Database là nơi lưu trữ tất cả nội dung trên trang web của bạn có thể là: Nội dung bài post, thông tin người dùng, các tùy chỉnh website,… Điều gì sẽ xảy ra nếu Database không được dọn dẹp sau thời gian dài? Khối lượng database lớn có thể ảnh hưởng rất nhiều đến hiệu suất website, vì lúc này server sẽ mất nhiều thời gian để truy xuất thông tin từ các bảng database. Đây là lý do tại sao việc tối ưu Database WordPress là một việc rất quan trọng.

Tối ưu database WordPress có khó không? Trong bài viết dưới đây, Vietnix sẽ giúp bạn dễ dàng loại bỏ những dữ liệu không cần thiết và làm cho website tải nhanh hơn.

Tìm hiểu về Database WordPress

Nếu bạn đang sử dụng WordPress để quản lý website của mình, Vietnix tin chắc chắn bạn sẽ hiểu rõ các Database WordPress core table là gì? Theo tìm hiểu, WordPress hiện nay sở hữu 12 core table và hầu hết, các website WordPress có hàng chục table bao gồm các plugin, theme được cài đặt và tập hợp những dữ liệu khác nhau trong Database WordPress.

Nếu bạn tiến hành tối ưu database WordPress của mình, ta sẽ thấy được 12 table được liệt kê trong phần dưới đây. Tất cả các table trong database được tạo theo cách thủ công hoặc được tạo bởi một plugin, theme WordPress.

Cùng Vietnix tìm hiểu xem 12 database table dưới đây lưu trữ những gì :

  • wp_commentmeta: Lưu trữ meta-information về comment.
  • wp_comments: Lưu trữ comment của bạn.
  • wp_links: Lưu trữ link danh sách các blog.
  • wp_options: Lưu trữ các khu vực tùy chọn được xác định trong admin setting.
  • wp_postmeta: Lưu trữ postmeta.
  • wp_posts: Lưu trữ dữ liệu cho các post, page các các post custom khác.
  • wp_terms: Lưu trữ post tag và category cho post và link.
  • wp_termmeta: Lưu trữ thông tin thuật ngữ được gọi là metadata.
  • wp_term_relationships: Lưu trữ liên kết giữa các post và category và tag, liên kết giữa link và link category.
  • wp_term_taxonomy: Lưu trữ mô tả về phân loại được sử dụng trong wp_terms.
  • wp_usermeta: Lưu trữ meta-information về người dùng.
  • wp_users: Lưu trữ người dùng.

Bạn cũng có thể kiểm tra chi tiết mục lưu trữ database trên WordPress.org để biết thêm thông tin về WordPress core table.

Mục lưu trữ Database trên WordPress.org
Mục lưu trữ Database trên WordPress.org

Các tối ưu Database WordPress

Hiện nay, phpMyAdmin là cách phổ biến nhất để tối ưu database WordPress. Nếu bạn không dử dụng cPanel làm bảng điều khiển hosting thì chắc hẳn gói hosting đang sử dụng một công cụ quản lý MySQL khác cho phpMyAdmin. Nhưng đừng quá lo lắng, vì các công cụ quản lý database đều có giao diện và nguyên lý hoạt động giống nhau.

Tuy nhiên, việc sử dụng phpMyAdmin hiện vẫn chưa làm tất cả người dùng hài lòng, thay vì sử dụng phpMyAdmin họ chọn phương án sử dụng các plugin WordPress để tối ưu hóa cơ sở dữ liệu trên website. Mặc dù, một plugin WordPress có thể giúp việc truy cập database dễ dàng, nhưng Vietnix khuyên bạn không nên quản lý database theo cách này vì dễ dàng gặp rủi ro về bảo mật là rất lớn.

Cách tối ưu Database WordPress bằng plugin
Cách tối ưu Database WordPress bằng plugin

Khi tiến hành kiểm tra database, bạn cần lưu ý hai cột ở cuối: kích thướcoverhead.

Kích thước của table phụ thuộc vào lượng dữ liệu được lưu trữ trong đó. Nếu nhiều dữ liệu được lưu trữ trong một table chắc chắn kích thước của table sẽ tăng lên.

Overhead là không gian đĩa được database sử dụng để lưu trữ tạm thời các truy vấn. Theo thời gian, overhead của một table thường sẽ tăng lên. Tuy nhiên, việc có overhead trong database WordPress là hoàn toàn bình thường và nó không ảnh hưởng gì đến hiệu suất trừ khi overhead tăng quá cao.

Overhead trong database của WordPress
Overhead trong database của WordPress

Khi khối lượng overhead đạt mức báo động, lúc này tối ưu database WordPress sẽ loại bỏ overhead và giảm size tổng thể của database.

Bạn có thể tối ưu hóa các table bị ảnh hưởng bởi overhead bằng cách sử dụng lệnh OPTIMIZE TABLE. Ví dụ: Tối ưu table wp_posts bằng cách thực hiện truy vấn SQL như sau:

OPTIMIZE TABLE 'wp_posts'

Lưu ý: Ta không cần sử dụng lệnh SQL vì phpMyAdmin cho phép người dùng tối ưu các table từ menu chính. Việc cần làm là tối ưu Database WordPress bằng cách nhấp vào box “Check All”, chọn “Optimize table” từ menu và sau đó chọn nút “Go”.

Hướng dẫn tối ưu database trong WordPress
Hướng dẫn tối ưu database trong WordPress

Khi bạn đã tối ưu Database WordPress của mình, phpMyAdmin sẽ xác nhận các table đã được tối ưu hay chưa?

phpMyAdmin sẽ xác nhận các table đã được tối ưu hay chưa?
phpMyAdmin sẽ xác nhận các table đã được tối ưu hay chưa?

Sẽ có một tùy chọn hữu ích khác mà bạn nên ghi nhớ là “Repair table”. Tính năng này sẽ giúp người dùng sửa một table bị hỏng một cách dễ dàng.

Tính năng Repair table
Tính năng Repair table

WordPress hỗ trợ một công cụ cho phép bạn sửa chữa và dọn dẹp database WordPress của mình. Bạn có thể tìm hiểu thêm về công cụ này trong phần Automatic Database Optimizing.

Để sử dụng công cụ này, trước tiên bạn cần phải thêm dòng này vào file wp-config.php trên trang web.

define( 'WP_ALLOW_REPAIR', true );

Khi bạn đã thêm dòng trên vào wp-config.php và lưu lại file, bạn có thể truy cập công cụ tối ưu tại đây.

Công cụ này sẽ giúp người dùng sửa từng database table nhưng đối với một số table nhất định có thể sẽ gặp khó khăn.

Tối ưu database trong WordPress
Tối ưu database trong WordPress

Tuy nhiên, nếu bạn chưa thành công trong việc tối ưu database WordPress của mình, chỉ cần thực hiện chạy lại công cụ một lần nữa.

Tối ưu dữ liệu cải thiện tình trạng website
Tối ưu dữ liệu cải thiện tình trạng website

Truy cập vào “Repair and Optimize Database”, lúc này WordPress sẽ tự động tối ưu mọi table.

Hướng dẫn tối ưu cơ sở dữ liệu trong WordPress
Hướng dẫn tối ưu cơ sở dữ liệu trong WordPress

Mặc dù trong quá trình tối ưu database WordPress, hệ thống không yêu cầu đăng nhập để chạy công cụ. Tuy nhiên, đó cũng là nhược điểm lớn khi bất kỳ ai cũng có thể truy cập vào tập lệnh và chỉnh sửa. Để hạn chế nhược điểm này ta cần phải xóa dòng WP_ALLOW_REPAIR khỏi file wp-config.php của mình sau khi sử dụng công cụ tối ưu hóa.

Cách xóa dữ liệu khỏi Database WordPress

Hầu hết các Database WordPress đều lưu trữ rất nhiều dữ liệu không cần thiết, điều này làm cho website trở nên quá tải dữ liệu gây ra trạng thái tải chậm và kém hiệu quả hơn.

Có một số file dữ liệu sẽ làm tăng thêm Bloat vào database website của bạn. Tuy nhiên, trong phần dưới đây Vietnix sẽ hướng dẫn giảm đáng kể hoặc thậm chí loại bỏ tình trạng bloat khỏi website của mình.

Xóa các bản sửa đổi khỏi database WordPress

Revision (các bản sửa đổi trong bài viết) là nguyên nhân chính gây ra hiện tượng quá tải dữ liệu trong Database WordPress.

WordPress revision system làm cho nhiều Database WordPress trở nên quá tải. Revision được giới thiệu lần đầu trong WordPress 2.6, tính năng này có nhiệm vụ lưu trữ backup cho mọi bản draft và file update của bạn. Đây là một tính năng hữu ích vì nó cho phép bạn khôi phục về các bản sao cũ hơn và kiểm tra các bản draft trước đó.

Tính năng Revision trong WordPress
Tính năng Revision trong WordPress

Mặc dù sở hữu nhiều tính năng hữu ích nhưng WordPress không giới hạn được số lượng bản revision. Nếu bạn đang làm một bài post dài trên WordPress, điều này có thể dẫn đến hàng trăm bản revision được lưu. Mặc dù, bài post đó được xuất bản chỉ chiếm một hàng trong database, nhưng các bản revision tương ứng có thể sử dụng hàng chục hoặc hàng trăm trong database.

WordPress cho phép bạn giảm số lượng bản revision được lưu trữ.

Để giảm số lượng các bản revision, chỉ cần thêm code sau vào file wp-config.php.

define( 'WP_POST_REVISIONS', 2 );

Bạn có thể tắt hoàn toàn việc đăng các bản revision bằng cách thêm mã sau vào file wp-config.php của bạn.

define( 'WP_POST_REVISIONS', false );

Tuy vậy, Vietnix khuyên bạn không nên vô hiệu hoàn toàn các bản revision. Mặc dù điều này sẽ giảm kích thước database, nhưng nó sẽ khiến bạn gặp khó khăn trong một số trường hợp.

Ví dụ: Trong trường hợp trình duyệt bị đóng do lỗi hoặc mất kết nối Internet, người dùng có thể mất mọi chỉnh sửa kể từ chỉnh sửa cuối cùng của bản draft.

Sử dụng Plugin để tối ưu database WordPress

Sau khi một bái viết được publish, có thể không cần thiết vài giữ lại các bản sửa đổi quá cũ, ta có thể xóa nó đi. Hiện nay, có một số plugin WordPress hỗ trợ bạn làm điều này.

Ví dụ: Dưới đây là plugin Optimize Database after Deleting Revisions được sử dụng để giảm kích thước database blog xuống 59%.

Plugin sẽ cho phép bạn xác định số lượng các bản revision được lưu. Nó cũng cho phép bạn xóa các item đã được chuyển vào thùng rác, các item spam,… Các database table có thể bị xóa khỏi quá trình tối ưu Database WordPress.

Optimize Database after Deleting Revisions cũng khả năng lên lịch các công việc (scheduler). Nó có thể được sử dụng để tự động tối ưu website của bạn mỗi giờ một lần, hai lần một ngày,…

Tính năng scheduler trong plugin Optimize Database after Deleting Revisions
Tính năng scheduler trong plugin Optimize Database after Deleting Revisions

Mặc dù, tính năng autosave của WordPress sẽ tự động lưu các article của bạn sau mỗi 60 giây. Khoảng thời gian này có thể được thay đổi bằng cách thêm đoạn mã sau vào file wp-config.php.

define( 'AUTOSAVE_INTERVAL', 160 ); // Seconds

Nhiều chuyên gia sử dụng WordPress khuyên rằng nên tắt tính năng autosave vì nó sẽ lưu các bản sao của bài post. Thật ra điều đó là không đúng sự thật. Autosave chỉ lưu một bản sao bài post và sẽ không sử dụng nhiều dung lượng trong database.

Autosave là một tính năng an toàn giúp bạn lúc bị mất kết nối hoặc đóng nhầm trình duyệt. Tính năng này sẽ không sử dụng nhiều dung lượng trong database.

Xóa cá spam Comment

Có thể sẽ thấy rằng các spam comment đang chiếm nhiều dung lượng database của bạn. Theo mặc định, các spam comment sẽ tự động bị WordPress xóa sau 30 ngày. Tuy nhiên, trong thời gian đó, chúng có thể chiếm dữ liệu lớn trong wp_comments table.

Ta có thể sử dụng một số plugin để xóa các spam comment một cách dễ dàng. Một plugin chống spam tốt giúp sẽ giúp bạn làm giảm số lượng spam comment và tối ưu Database WordPress của bạn.

Akismet là một plugin tốt vì nó cho phép bạn loại bỏ các spam comment khỏi database của bạn ngay lập tức.

Plugin Akismet
Plugin Akismet

Khi plugin được kích hoạt, bây giờ bạn không cần lo lắng vì spam comment nữa vì WordPRess đã có thêm nút “Empty Spam” cho phép bạn xóa tất các cả spam comment ngay lập tức.

Spam comment có thể bị xóa chỉ bằng một click chuột
Spam comment có thể bị xóa chỉ bằng một click chuột

Ngoài ra những người gửi spam comment thường nhắm vào các bài viết có xếp hạng tốt trong công cụ tìm kiếm. Do đó, bạn có thể giảm đáng kể lượng spam comment bằng cách tắt comment của các bài post cũ. Bạn có thể kích hoạt cài đặt này nằm trong trang discussion settings ở trong WordPress admin.

 Discussion settings xóa Spam Commment
Discussion settings xóa Spam Commment

Spam comment cũng có thể bị xóa bằng lệnh SQL sau.

DELETE FROM wp_comments WHERE comment_approved = 'spam'

Ngoài ra tất cả các comment đang chờ phê duyệt có thể bị xóa bằng cách sử dụng lệnh SQL sau.

DELETE FROM wp_comments WHERE comment_approved = '0'

Xóa các Item

Khi bạn xóa một item trong WordPress thì nó sẽ được đưa vào thư mục rác. Đây là nơi giúp người dùng khôi phục các bài viết đang nằm trong thư mục rác.

Trừ khi bạn xóa nhiều item thường xuyên khiến cho dung lượng ở trong thùng rác tăng lên còn lại không cần phải lo lắng về dung lượng các item đã xóa sẽ chiếm bao nhiêu dung lượng trong database của bạn. Tuy nhiên bạn cần hiểu cách hoạt động của thư mục thùng rác, đặc biệt nếu bạn phải xóa hàng trăm bài viết khỏi website WordPress.

Các bài viết đã xóa sẽ được lưu trữ trong database cho đến khi thư mục thùng rác được dọn sạch. Theo mặc định, các bài viết sẽ bị xóa vĩnh viễn sau 30 ngày.

Tuy nhiên, có thể thay đổi số ngày trước khi dọn sạch thùng rác bằng cách thêm mã sau vào file wp-config.php.

define( 'EMPTY_TRASH_DAYS', 5 ); // 5 days

Trash system có thể bị vô hiệu hóa hoàn toàn bằng cách thêm dòng mã sau vào file wp-config.php của bạn.

define( 'EMPTY_TRASH_DAYS', 0 ); // Zero days

Tuy nhiên, Vietnix khuyên bạn không nên tắt trash system vì sẽ không thể khôi phục được cái item chẳng may bị xóa nhầm.

WordPress Transient

WordPress Transient cung cấp cho các developer một cách lưu trữ dữ liệu tạm thời trong Database WordPress. Transient record được lưu trữ trong bảng tùy chọn WordPress.

Các dữ liệu hết hạn có thể tự động được thêm vào database của bạn và làm cho website chạy chậm hơn. Để tối ưu Database WordPress, sẽ có một số plugin giúp bạn quản lý dữ liệu tạm thời và xóa chúng khi hết hạn.

Vietnix gợi ý plugin WordPress Transient Cleaner có một tùy chọn để xóa các transient đã hết hạn một cách dễ dàng hoặc plugin Delete Expired Transients cũng cung cấp chức năng này.

Plugin Delete Expired Transients
Plugin Delete Expired Transients giúp xóa những dữ liệu tạm thời

Transients Manager là một trong những giải pháp tốt nhất để xóa những dữ liệu tạm thời của bạn. Nó cho phép bạn xem, chỉnh sửa và xóa các dữ liệu. Tuy nhiên, plugin này không có bất kỳ tùy chọn nào để xóa hàng loạt các expired transients.

Những tệp dữ liệu tạm thời không phải là điều bạn cần phải quá lo lắng. Tuy nhiên, bạn nên kiểm tra định kỳ để xác minh rằng chúng không ảnh hưởng gì nhiều đến hiệu suất website của bạn.

Xóa những plugin và theme cũ

99% tất cả các plugin WordPress đều lưu trữ cài đặt và dữ liệu trên Database WordPress. Tuy nhiên, khi gỡ cài đặt plugin WordPress, thông tin này sẽ không bị xóa.

Đây là do thiết kế của plugin. Nếu dữ liệu bị xóa mỗi khi bạn hủy kích hoạt plugin, bạn sẽ phải định cấu hình lại plugin khi kích hoạt lại nó. Người dùng cũng sẽ mất những báo cáo và nội dung mà plugin đã tạo.

Nếu bạn đã quyết định ngừng sử dụng plugin hoặc chỉ đơn giản muốn thử nghiệm một plugin mới, ta cần xóa tất cả dữ liệu khi gỡ cài đặt plugin để tránh gặp lỗi website bị quá tải, dẫn tới tốc độ tải trang chậm.

Database WordPress có thể tích lũy rất nhiều dữ liệu cũ theo thời gian. Không có gì lạ khi một Database WordPress chứa hàng chục table cho các plugin đã bị xóa cách đây vài tháng, hoặc thậm chí nhiều năm trước.

Các Theme WordPRess cũng lưu trữ các cài đặt trong Database WordPress và các cài đặt này vẫn sẽ còn trong database của bạn khi bạn chuyển đổi theme.

 Unused Plugin và Theme Table
Unused Plugin và Theme Table

Các table không sử dụng có thể được xóa khỏi database của bạn theo cách thủ công thông qua một công cụ quản lý database như phpMyAdmin. Tuy nhiên, nếu hiểu rõ về 11 WordPress core table, bạn vẫn có thể gặp chút khó khăn phân biệt table từ các plugin đang hoạt động và table từ các plugin đã gỡ cài đặt.

Các Plugin được bổ sung thêm Bloat

Mỗi plugin được cài đặt sẽ làm tăng dung lượng database của website. Dung lượng một số plugin sử dụng trong database là không đáng kể, nhưng cũng có nhiều plugin chiếm rất nhiều dung lượng vào trong database.

Bất cứ khi nào cài đặt một plugin WordPress mới, bạn nên xem lại số lượng tải về của nó trên CPU và dung lượng lưu trữ sử dụng trong database.

Sau đây Vietnix sẽ giới thiệu một số loại plugin WordPress được biết đến với chức năng lưu trữ nhiều dữ liệu trong database.

  • Plugin Anti-Spam: Bảo vệ website của bạn, chống spam trên trang web. Ví dụ: Akismet lưu trữ rất nhiều dữ liệu trong table WP_CommentMeta.
  • Plugin Security: Cũng giống như các plugin anti-spam, các plugin security theo dõi rất nhiều thông tin về những người dùng gửi spam comment và hacker.
  • Plugin Statistic: Đó là nhóm plugin WordPress cung cấp lưu lượng truy cập và báo cáo phân tích dữ liệu trong database website của bạn.
  • Plugin Related Posts and Popular Posts: Các plugin WordPress giới thiệu các bài viết liên quan, thông thường những plugin này sử dụng nhiều CPU và dung lượng lưu trữ của database. Ngoài ra còn có số lượt thích, lượt chia sẻ và lượt xem mà mỗi trang trên website của bạn đã nhận được.
  • Plugin Link Tracking: Hầu hết các giải pháp tracking link đều cung cấp cho bạn số lần độc giả nhấp vào liên kết. Điều này rất hữu ích để kiểm tra lưu lượng truy cập. Nhưng tracking link có thể chiếm nhiều dung lượng trong database.

Tóm lại, nếu một plugin đang sử dụng nhiều dung lượng lưu trữ trong database của bạn hoặc làm chậm website của bạn đáng kể, hãy thử xóa nó và cài đặt cho trang web một công cụ tối ưu hơn nhé.

Lời kết

Như vậy trong bài viết trên, Vietnix đã hướng dẫn bạn cách tối ưu database WordPress của mình bằng phần mềm phpMyadmin và sử dụng plugin WordPress, hãy thử kiểm tra lại hiệu suất và tốc độ tải trang của website bạn sẽ thấy được sự cải thiện đáng kể. Chúc các bạn thành công!

5/5 - (1 bình chọn)

Vietnix hiện đang có chương trình khuyến mãi lớn nhất trong năm

Giảm giá: Giảm giá TRỌN ĐỜI:
  • 40% Hosting Giá Rẻ, Hosting Cao Cấp & Business Hosting.
Ngoài ra, khi sử dụng dịch vụ VPS và Hosting, quý khách sẽ được tặng bộ Theme & Plugin Wordpress bản quyền trị giá đến 800$/năm. Đăng ký dùng thử ngay và Vietnix sẽ hoàn tiền 100% nếu quý khách không hài lòng với chất lượng sản phẩm, dịch vụ! Nếu bạn có thắc mắc hay có vấn đề cần hỗ trợ, bạn có thể liên hệ trực tiếp với Vietnix thông qua các kênh sau:
  • Hotline: 1800 1093 - 07 088 44444
  • Email: support@vietnix.vn
  • Hoặc chat trực tiếp với Vietnix thông qua biểu tượng Livechat ở góc phải màn hình. Đội ngũ chuyên viên của chúng tôi luôn sẵn sàng tư vấn và hỗ trợ bạn 24/7.
Mình là Bo - admin của Quản Trị Linux. Mình đã có 10 năm làm việc trong mảng System, Network, Security và đã trải nghiệm qua các chứng chỉ như CCNP, CISSP, CISA, đặc biệt là chống tấn công DDoS. Gần đây mình trải nghiệm thêm Digital Marketing và đã hòan thành chứng chỉ CDMP của PearsonVUE. Mình rất thích được chia sẻ và hỗ trợ cho mọi người, nhất là các bạn sinh viên. Hãy kết nối với mình nhé!
Theo dõi
Thông báo của
guest
0 Comments
Phản hồi nội tuyến
Xem tất cả bình luận