Μετάβαση στο περιεχόμενο
Βελτιστοποίηση Βάσης Δεδομένων WordPress: Πώς να Καθαρίσετε και να Επιταχύνετε τη Βάση Δεδομένων σας
Απόδοση WordPress📋 Οδηγός

Βελτιστοποίηση Βάσης Δεδομένων WordPress: Πώς να Καθαρίσετε και να Επιταχύνετε τη Βάση Δεδομένων σας

Erik KellerErik KellerΕνημερώθηκε στις: 15 λεπτά ανάγνωσης464 προβολές

Κάθε φόρτωση σελίδας, υποβολή φόρμας, λειτουργία πρόσθετου και συνεδρία χρήστη στο WordPress περιλαμβάνει ερωτήματα στη βάση δεδομένων. Με την πάροδο του χρόνου, η βάση δεδομένων συσσωρεύει επιπλέον δεδομένα: παλιές αναθεωρήσεις αναρτήσεων, ληγμένα προσωρινά δεδομένα, ορφανά μεταδεδομένα, σχόλια spam και αχρησιμοποίητους πίνακες από απενεργοποιημένα πρόσθετα. Αυτή η υπερφόρτωση επιβραδύνει τα ερωτήματα, αυξάνει το μέγεθος των αντιγράφων ασφαλείας και υποβαθμίζει τη συνολική απόδοση της ιστοσελίδας. Αυτός ο οδηγός καλύπτει πώς να εντοπίσετε την υπερφόρτωση της βάσης δεδομένων, να την καθαρίσετε με ασφάλεια και να αποτρέψετε την επιστροφή της.

Τι Αποθηκεύει το WordPress στη Βάση Δεδομένων

Η κατανόηση του τι υπάρχει στη βάση δεδομένων σας βοηθά να εντοπίσετε τι μπορεί να αφαιρεθεί με ασφάλεια. Μια τυπική εγκατάσταση WordPress χρησιμοποιεί 12 βασικούς πίνακες, και τα πρόσθετα προσθέτουν τους δικούς τους πίνακες όπως απαιτείται.

Πίνακας Αποθηκεύει Κοινή Πηγή Υπερφόρτωσης
wp_posts Αναρτήσεις, σελίδες, αναθεωρήσεις, συνημμένα, τύποι αναρτήσεων προσαρμοσμένοι Αναθεωρήσεις αναρτήσεων, αυτόματες προσχέσεις
wp_postmeta Μεταδεδομένα για αναρτήσεις (προσαρμοσμένα πεδία, δεδομένα πρόσθετου) Ορφανά μεταδεδομένα από διαγραμμένες αναρτήσεις
wp_options Ρυθμίσεις ιστοσελίδας, ρυθμίσεις πρόσθετου, προσωρινά δεδομένα Ληγμένα προσωρινά δεδομένα, παλιές ρυθμίσεις πρόσθετου
wp_comments Σχόλια και trackbacks Σχόλια spam, διαγραμμένα σχόλια
wp_commentmeta Μεταδεδομένα για σχόλια Μεταδεδομένα Akismet για διαγραμμένα σχόλια
wp_usermeta Μεταδεδομένα χρήστη Tokens συνεδρίας, δεδομένα χρήστη πρόσθετου
wp_termmeta Μεταδεδομένα για κατηγορίες και ετικέτες Ορφανά μεταδεδομένα όρων

Κοινές Πηγές Υπερφόρτωσης Βάσης Δεδομένων

Αναθεωρήσεις Αναρτήσεων

Το WordPress αποθηκεύει μια αναθεώρηση κάθε φορά που κάνετε κλικ στο "Αποθήκευση Προσχεδίου" ή "Ενημέρωση" σε μια ανάρτηση ή σελίδα. Μια ανάρτηση που έχει επεξεργαστεί 50 φορές έχει 50 αναθεωρήσεις αποθηκευμένες στον πίνακα wp_posts, κάθε μία με το δικό της σύνολο εγγραφών postmeta. Σε μια ιστοσελίδα με εκατοντάδες αναρτήσεις, οι αναθεωρήσεις μπορούν να αντιπροσωπεύουν χιλιάδες περιττές γραμμές στη βάση δεδομένων.

Προσωρινά Δεδομένα

Τα προσωρινά δεδομένα είναι προσωρινές πληροφορίες που αποθηκεύονται στον πίνακα wp_options από τον πυρήνα του WordPress και τα πρόσθετα. Έχουν χρόνους λήξης, αλλά το WordPress δεν διαγράφει αυτόματα τα ληγμένα προσωρινά δεδομένα. Συσσωρεύονται με την πάροδο του χρόνου και μπορούν να αυξήσουν σημαντικά τον πίνακα επιλογών, ειδικά σε ιστοσελίδες με πολλά πρόσθετα.

Ορφανά Δεδομένα

Όταν διαγράφετε μια ανάρτηση, τα μεταδεδομένα της (εγγραφές wp_postmeta) ενδέχεται να μην διαγραφούν. Ομοίως, η διαγραφή σχολίων, χρηστών ή όρων μπορεί να αφήσει πίσω ορφανά μεταδεδομένα. Τα απενεργοποιημένα και διαγραμμένα πρόσθετα συχνά αφήνουν τους πίνακες της βάσης δεδομένων τους πίσω, καταναλώνοντας χώρο και δημιουργώντας ακαταστασία στη βάση δεδομένων σας.

Σχόλια Spam και Διαγραμμένα Περιεχόμενα

Σχόλια spam, διαγραμμένες αναρτήσεις και διαγραμμένα σχόλια παραμένουν στη βάση δεδομένων μέχρι να αδειάσουν χειροκίνητα. Ιστοσελίδες με Akismet ή άλλες φίλτρα spam μπορεί να συσσωρεύσουν χιλιάδες σχόλια spam που χρειάζονται περιοδικό καθαρισμό.

Αυτόματες Προσχέσεις

Το WordPress δημιουργεί αυτόματες προσχέσεις αναρτήσεων όταν κάνετε κλικ στο "Προσθήκη Νέου" στον επεξεργαστή αναρτήσεων, ακόμη και αν δεν δημοσιεύσετε ποτέ. Αυτές συσσωρεύονται με την πάροδο του χρόνου και δεν εξυπηρετούν κανένα σκοπό μετά την ολοκλήρωση της συνεδρίας επεξεργασίας.

Χειροκίνητος Καθαρισμός Βάσης Δεδομένων μέσω SQL

Για όσους είναι άνετοι με το SQL, μπορείτε να καθαρίσετε απευθείας χρησιμοποιώντας το phpMyAdmin ή έναν πελάτη βάσης δεδομένων. Πάντα να δημιουργείτε αντίγραφο ασφαλείας της βάσης δεδομένων σας πριν εκτελέσετε ερωτήματα καθαρισμού.

Διαγραφή Αναθεωρήσεων Αναρτήσεων

-- Διαγραφή όλων των αναθεωρήσεων αναρτήσεων
DELETE FROM wp_posts WHERE post_type = 'revision';

-- Διαγραφή ορφανών postmeta (μεταδεδομένα για διαγραμμένες αναρτήσεις)
DELETE pm FROM wp_postmeta pm
LEFT JOIN wp_posts p ON pm.post_id = p.ID
W
ΕΔΩ p.ID ΕΙΝΑΙ NULL;

Καθαρισμός Transients

-- Διαγραφή ληγμένων transients
DELETE FROM wp_options
WHERE option_name LIKE '%_transient_timeout_%'
AND option_value < UNIX_TIMESTAMP();

-- Διαγραφή των δεδομένων transient για ληγμένα transients
DELETE FROM wp_options
WHERE option_name LIKE '%_transient_%'
AND option_name NOT LIKE '%_transient_timeout_%';

Αφαίρεση Σχολίων Spam και Σκουπιδιών

-- Διαγραφή σχολίων spam
DELETE FROM wp_comments WHERE comment_approved = 'spam';

-- Διαγραφή σχολίων σκουπιδιών
DELETE FROM wp_comments WHERE comment_approved = 'trash';

-- Διαγραφή ορφανών μεταδεδομένων σχολίων
DELETE cm FROM wp_commentmeta cm
LEFT JOIN wp_comments c ON cm.comment_id = c.comment_ID
WHERE c.comment_ID IS NULL;

Καθαρισμός Βάσης Δεδομένων με Βασισμένα σε Πρόσθετα

Αν προτιμάτε μια προσέγγιση με GUI, αρκετά πρόσθετα διαχειρίζονται την βελτιστοποίηση της βάσης δεδομένων με δυνατότητες προγραμματισμού:

WP-Optimize

Το WP-Optimize είναι ένα δωρεάν πρόσθετο που καθαρίζει αναθεωρήσεις, προσχέδια, spam, transients και ορφανά δεδομένα. Επίσης, βελτιστοποιεί τους πίνακες της βάσης δεδομένων και υποστηρίζει προγραμματισμένους καθαρισμούς. Η Pro έκδοση προσθέτει υποστήριξη για πολλαπλές τοποθεσίες και προηγμένο προγραμματισμό.

Βελτιστοποίηση Βάσης Δεδομένων WP Rocket

WP Rocket περιλαμβάνει μια καρτέλα Βάσης Δεδομένων που διαχειρίζεται αναθεωρήσεις, αυτόματα προσχέδια, σκουπίδια αναρτήσεις, spam σχόλια, transients και βελτιστοποίηση πινάκων. Δεδομένου ότι το WP Rocket είναι κυρίως ένα πρόσθετο caching, έχετε καθαρισμό βάσης δεδομένων μαζί με βελτιστοποίηση απόδοσης σε ένα εργαλείο.

Προηγμένος Καθαριστής Βάσης Δεδομένων

Αυτό το πρόσθετο πηγαίνει πιο βαθιά ανιχνεύοντας πίνακες που έχουν μείνει πίσω από απενεργοποιημένα πρόσθετα και ορφανά cron events. Κατηγοριοποιεί τους πίνακες ως πυρήνα WordPress, δημιουργημένους από πρόσθετα ή άγνωστους, βοηθώντας σας να προσδιορίσετε ποιους πίνακες είναι ασφαλές να αφαιρέσετε.

Πρόσθετο Δωρεάν Έκδοση Προγραμματισμένος Καθαρισμός Ανίχνευση Πινάκων
WP-Optimize Ναι Ναι Βασικό
WP Rocket Όχι (Μόνο Premium) Ναι Όχι
Προηγμένος Καθαριστής Βάσης Δεδομένων Ναι Μόνο Pro Ναι (λεπτομερής)

Βελτιστοποιήσεις wp-config.php

Αποτρέψτε την υπερφόρτωση της βάσης δεδομένων από την πηγή προσθέτοντας αυτές τις σταθερές στο αρχείο wp-config.php σας:

Περιορισμός Αναθεωρήσεων Αναρτήσεων

// Κρατήστε μόνο 5 αναθεωρήσεις ανά ανάρτηση (συνιστάται)
define( 'WP_POST_REVISIONS', 5 );

// Απενεργοποίηση αναθεωρήσεων εντελώς (δεν συνιστάται για τις περισσότερες τοποθεσίες)
define( 'WP_POST_REVISIONS', false );

Η ρύθμιση των αναθεωρήσεων σε 5 παρέχει αρκετό ιστορικό για να ανακτήσετε από λάθη ενώ αποτρέπει την απεριόριστη ανάπτυξη αναθεωρήσεων. Για ιστότοπους με περιεχόμενο που έχει πολλές επεξεργασίες, 10 αναθεωρήσεις είναι μια λογική εναλλακτική λύση.

Αυτόματος Άδειασμα Σκουπιδιών

// Άδειασμα σκουπιδιών κάθε 7 ημέρες (προεπιλογή είναι 30)
define( 'EMPTY_TRASH_DAYS', 7 );

// Απενεργοποίηση σκουπιδιών (τα αντικείμενα διαγράφονται αμέσως - χρησιμοποιήστε με προσοχή)
define( 'EMPTY_TRASH_DAYS', 0 );

Διάστημα Αυτόματης Αποθήκευσης

// Αυξήστε το διάστημα αυτόματης αποθήκευσης σε 5 λεπτά (προεπιλογή είναι 60 δευτερόλεπτα)
define( 'AUTOSAVE_INTERVAL', 300 );

Βελτιστοποίηση Πινάκων Βάσης Δεδομένων

Μετά τη διαγραφή γραμμών, εκτελέστε μια λειτουργία OPTIMIZE για να ανακτήσετε κατακερματισμένο χώρο:

OPTIMIZE TABLE wp_posts, wp_postmeta, wp_options, wp_comments, wp_commentmeta;

Προγραμματίστε αυτό μηνιαίως ή μετά από μεγάλες λειτουργίες καθαρισμού. Τα περισσότερα πρόσθετα καθαρισμού περιλαμβάνουν τη βελτιστοποίηση πινάκων στις προγραμματισμένες εργασίες τους.

Προγραμματισμός Αυτόματης Καθαριότητας

Ρυθμίστε αυτοματοποιημένα προγράμματα: εβδομαδιαία καθαριότητα προσωρινών και ανεπιθύμητων, μηνιαία αφαίρεση αναθεωρήσεων και βελτιστοποίηση πινάκων, και τριμηνιαίους ελέγχους πινάκων ορφανών προσθέτων. Το WP-Optimize και το WP Rocket υποστηρίζουν και τα δύο προγραμματισμένη καθαριότητα. Ρυθμίστε τα κατά τις ώρες εκτός αιχμής.

Παρακολούθηση Μεγέθους Βάσης Δεδομένων

Παρακολουθήστε το μέγεθος της βάσης δεδομένων σας για να εντοπίσετε την υπερφόρτωση νωρίς. Εκτελέστε αυτό το ερώτημα για να δείτε τα μεγέθη των ατομικών πινάκων:

SELECT table_name AS 'Πίνακας',
       ROUND(data_length / 1024 / 1024, 2) AS 'Δεδομένα (MB)',
       table_rows AS 'Γραμμές'
FROM information_schema.tables
WHERE table_schema = 'το_όνομα_της_βάσης_δεδομένων_σας'
ORDER BY (data_length + index_length) DESC
LIMIT 20;

Εάν το wp_options ξεπερνά τα 5 MB ή το wp_postmeta αυξάνεται πάνω από 100 MB, είναι καιρός για καθαριότητα. Αυτοί οι πίνακες ερωτώνται συχνά, οπότε το μέγεθός τους επηρεάζει άμεσα τους χρόνους φόρτωσης σελίδας.

Για μια ολοκληρωμένη προσέγγιση βελτιστοποίησης απόδοσης που περιλαμβάνει τη βελτιστοποίηση της βάσης δεδομένων μαζί με την προσωρινή αποθήκευση, τη βελτιστοποίηση εικόνας και τη διαμόρφωση του διακομιστή, διαβάστε τον οδηγό βελτιστοποίησης ταχύτητας WordPress. Για συνεχή υγεία της βάσης δεδομένων ως μέρος της ρουτίνας συντήρησής σας, δείτε τον οδηγό συντήρησης WordPress.

Για περισσότερες λεπτομέρειες, ανατρέξτε στην επίσημη τεκμηρίωση: WordPress API Βάσης Δεδομένων.

Συχνές Ερωτήσεις

Είναι ασφαλές να διαγράψω τις αναθεωρήσεις δημοσιεύσεων από τη βάση δεδομένων;

Ναι, η διαγραφή αναθεωρήσεων δημοσιεύσεων είναι ασφαλής και δεν επηρεάζει το δημοσιευμένο περιεχόμενο σας. Οι αναθεωρήσεις είναι ιστορικές στιγμιότυπες αλλαγών προσχεδίων. Μόλις το περιεχόμενό σας ολοκληρωθεί, οι αναθεωρήσεις δεν εξυπηρετούν κανέναν σκοπό για τις περισσότερες ιστοσελίδες. Ωστόσο, πάντα να κάνετε αντίγραφο ασφαλείας της βάσης δεδομένων σας πριν από οποιαδήποτε καθαριότητα.

Θα βελτιώσει η βελτιστοποίηση της βάσης δεδομένων την ταχύτητα της ιστοσελίδας μου αισθητά;

Η βελτίωση εξαρτάται από το πόσο υπερφορτωμένη είναι η βάση δεδομένων σας. Ιστοσελίδες με 50.000+ ορφανές γραμμές ή πίνακα wp_options που ξεπερνά τα 10 MB θα δουν αισθητές βελτιώσεις στους χρόνους φόρτωσης σελίδας και στην απόκριση του πίνακα ελέγχου διαχειριστή. Μικρότερες ιστοσελίδες μπορεί να δουν περιθωριακά οφέλη. Η βελτιστοποίηση της βάσης δεδομένων λειτουργεί παράλληλα με την προσωρινή αποθήκευση και άλλα μέτρα απόδοσης για σωρευτική βελτίωση.

Πόσο συχνά πρέπει να βελτιστοποιώ τη βάση δεδομένων WordPress;

Για ενεργές ιστοσελίδες με τακτικές ενημερώσεις περιεχομένου, η μηνιαία βελτιστοποίηση είναι μια καλή βάση. Ιστοσελίδες με υψηλή επισκεψιμότητα που έχουν συχνά σχόλια, συναλλαγές WooCommerce ή υποβολές φορμών μπορεί να ωφεληθούν από εβδομαδιαία καθαριότητα προσωρινών και ανεπιθύμητων με μηνιαία βελτιστοποίηση πινάκων.

Μπορούν τα πρόσθετα καθαρισμού βάσης δεδομένων να σπάσουν την ιστοσελίδα μου;

Αξιόπιστα πρόσθετα όπως το WP-Optimize και το WP Rocket έχουν σχεδιαστεί για να είναι ασφαλή. Στοχεύουν σε γνωστές κατηγορίες υπερφόρτωσης (αναθεωρήσεις, προσωρινά, ανεπιθύμητα) και δεν αγγίζουν τα απαραίτητα δεδομένα. Ο κίνδυνος αυξάνεται όταν διαγράφετε χειροκίνητα πίνακες συγκεκριμένων προσθέτων. Εάν δεν είστε σίγουροι αν ένας πίνακας είναι απαραίτητος, αφήστε τον στη θέση του και ερευνήστε πρώτα τον σκοπό του.

Ποια είναι η διαφορά μεταξύ του OPTIMIZE TABLE και της διαγραφής γραμμών;

Η διαγραφή γραμμών αφαιρεί δεδομένα από τον πίνακα. Το OPTIMIZE TABLE αναδιοργανώνει την φυσική αποθήκευση του πίνακα αφού έχουν διαγραφεί οι γραμμές, ανακτώντας χώρο στο δίσκο και αποσυμπιέζοντας το αρχείο δεδομένων. Σκεφτείτε το ως τη διαγραφή αρχείων (αφαίρεση γραμμών) σε σύγκριση με την αποσυμπίεση του σκληρού σας δίσκου (βελτιστοποίηση του πίνακα).

Πρέπει να χρησιμοποιήσω InnoDB ή MyISAM για τους πίνακες WordPress;

Το WordPress χρησιμοποιεί InnoDB από προεπιλογή από την έκδοση 5.5, και είναι η συνιστώμενη μηχανή αποθήκευσης. Το InnoDB υποστηρίζει κλείδωμα σε επίπεδο γραμμής (καλύτερο για ταυτόχρονους χρήστες), συναλλαγές και ανάκτηση από καταστροφές. Το MyISAM είναι ταχύτερο για λειτουργίες που απαιτούν ανάγνωση, αλλά στερείται αυτών των χαρακτηριστικών αξιοπιστίας. Εάν βρείτε πίνακες MyISAM στη βάση δεδομένων σας, η μετατροπή τους σε InnoDB συνιστάται γενικά.

Πώς μπορώ να εντοπίσω πίνακες που άφησαν απενεργοποιημένα πρόσθετα;

Το πρόσθετο Advanced Database Cleaner μπορεί να ανιχνεύσει και να κατηγοριοποιήσει μη βασικούς πίνακες. Εναλλακτικά, εκτελέστε το SQL ερώτημα SHOW TABLES και συγκρίνετε τα ονόματα των πινάκων με τους βασικούς πίνακες του WordPress και τα ενεργά πρόσθετά σας. Πίνακες με προθέματα που ταιριάζουν με απενεργοποιημένα πρόσθετα είναι υποψήφιοι προς αφαίρεση.

Προσθέτει το WooCommerce σημαντική υπερφόρτωση στη βάση δεδομένων;

Ναι. Το WooCommerce αποθηκεύει δεδομένα παραγγελιών, μεταδεδομένα προϊόντων, συνεδρίες πελατών και προσωρινά που αυξάνονται σημαντικά σε ενεργές καταστήματα. Χρησιμοποιήστε το WooCommerce > Κατάσταση > Εργαλεία για να καθαρίσετε τα ληγμένα προσωρινά και τις συνεδρίες τακτικά.

Βελτιστοποιήστε την Απόδοση από Κάθε Γωνία

Το WP Rocket διαχειρίζεται την προσωρινή αποθήκευση, την καθαριότητα της βάσης δεδομένων και τη βελτιστοποίηση απόδοσης σε ένα πρόσθετο, ώστε να μπορείτε να διατηρείτε την ιστοσελίδα σας σε ομαλή λειτουργία.

Εξερευνήστε το WP Rocket →

Συχνές ερωτήσεις

Πόσο συχνά πρέπει να βελτιστοποιώ τη βάση δεδομένων WordPress;
Για τις περισσότερες ιστοσελίδες, η μηνιαία βελτιστοποίηση είναι επαρκής. Ιστοσελίδες με υψηλή επισκεψιμότητα που διαθέτουν ενεργά καταστήματα WooCommerce ή φόρουμ θα πρέπει να βελτιστοποιούν εβδομαδιαία. Αυτοματοποιημένα εργαλεία όπως το WP-Optimize μπορούν να το διαχειριστούν σε προγραμματισμένο χρόνο.
Είναι ασφαλές να διαγράψω τις αναθεωρήσεις δημοσιεύσεων από τη βάση δεδομένων;
Ναι, η διαγραφή παλαιών αναθεωρήσεων δημοσιεύσεων είναι ασφαλής και συνήθως συνιστάται. Το WordPress αποθηκεύει απεριόριστες αναθεωρήσεις από προεπιλογή, οι οποίες μπορούν να προσθέσουν χιλιάδες γραμμές. Μπορείτε να περιορίσετε τις αναθεωρήσεις προσθέτοντας την σταθερά define REVISIONS στο wp-config.php.
Θα βελτιώσει η βελτιστοποίηση της βάσης δεδομένων την ταχύτητα της ιστοσελίδας μου;
Η βελτιστοποίηση της βάσης δεδομένων συνήθως μειώνει τον χρόνο εκτέλεσης των ερωτημάτων, γεγονός που βελτιώνει τον χρόνο απόκρισης του διακομιστή (TTFB). Η επίδραση είναι πιο αισθητή σε δυναμικές σελίδες με σύνθετα ερωτήματα, όπως οι σελίδες προϊόντων WooCommerce ή τα αποτελέσματα αναζητήσεων.
Πρέπει να βελτιστοποιήσω τη βάση δεδομένων πριν ή μετά από ένα αντίγραφο ασφαλείας;
Πάντα να δημιουργείτε ένα πλήρες αντίγραφο ασφαλείας της βάσης δεδομένων πριν εκτελέσετε οποιαδήποτε βελτιστοποίηση. Αυτό διασφαλίζει ότι μπορείτε να αποκαταστήσετε τα δεδομένα σας αν κάτι πάει στραβά κατά τη διάρκεια της διαδικασίας καθαρισμού.
Τι είναι οι ορφανοί μεταδεδομένοι και μπορώ να τους διαγράψω με ασφάλεια;
Οι ορφανοί μεταδεδομένοι είναι γραμμές στους πίνακες μεταδεδομένων που αναφέρονται σε δημοσιεύσεις, χρήστες ή σχόλια που δεν υπάρχουν πια. Είναι ασφαλές να τους αφαιρέσετε και συχνά συσσωρεύονται από διαγραμμένα πρόσθετα ή περιεχόμενο. Εργαλεία όπως το WP-Optimize μπορούν να εντοπίσουν και να καθαρίσουν αυτές τις εγγραφές.

Κοινοποίηση άρθρου

Σχετικά με τον Συγγραφέα

Erik Keller
Erik Keller

Ειδικός WordPress

Ανώτερος ειδικός WordPress με εκτεταμένη εμπειρία σε themes, plugins και ανάπτυξη WooCommerce. Αφοσιωμένος στο να βοηθά επιχειρήσεις να πετύχουν με λύσεις WordPress.

WordPressWooCommerceΑνάπτυξη ThemesΑνάπτυξη PluginsΒελτιστοποίηση Απόδοσης

Μείνετε Ενημερωμένοι

Λάβετε τις τελευταίες συμβουλές WordPress στο email σας.