1. Herzlich willkommen bei WPDE.org, dem grössten und ältesten deutschsprachigen Community-Forum rund um das Thema WordPress. Du musst angemeldet oder registriert sein, um Beiträge verfassen zu können.
    Information ausblenden

Große wp_postmeta - Wie bereinigen?

Dieses Thema im Forum "Allgemeines" wurde erstellt von KonstantinM, 10. April 2019.

Schlagworte:
  1. KonstantinM

    KonstantinM Member

    Registriert seit:
    19. November 2018
    Beiträge:
    5
    Zustimmungen:
    0
    Hallo Leute,

    ich habe mit meinem Wordpress-Blog Performance-Probleme. Mir wird im Google Pagespeed-Tool eine hohe TTFB angezeigt. Bei der Fehlersuche ist mir aufgefallen, dass die wp_postmeta ziemlich groß ist.

    Hier ein paar Fakten:
    - 41.855 Beiträge
    - wp_postmeta hat 730.000 Zeilen und ist 580 MB groß
    - Revisionen auf max. 3 gestellt

    Ich habe die Vermutung, dass in der postmeta viele unnütze Daten sind. Ich hatte mehrere Themes installiert, die sicherlich auch in der postmeta Zeilen angelegt haben. Die bleiben bestimmt beim Theme-Wechsel bestehen, stimmt's?

    Wie räume ich da am besten auf? Habe ein wenig Angst da Einträge zu löschen, die meine Seite noch benötigt.

    Danke schon mal.
     
  2. Henk1060

    Henk1060 Well-Known Member

    Registriert seit:
    4. September 2014
    Beiträge:
    3.927
    Zustimmungen:
    349
    hy,

    bevor du was machst immer ein Backup erstellen.
    zb. duplicator oder mit Updraft

    wenn du möglichkeit hast, am besten eine testumgebung erstellen.
    und dort mit den Backups spielen.

    580MB ist zwar ein größe kommt natürlich auf die seite, zb. bei einen sehr großen blog mit vielen kommentaren ist das keine seltenheit.


    sagt nur aus wie lange der server braucht um zu antworten und hat nicht umbedingt mit der Datenbank zu tun.
    ist der server lahm dann bringt auch eine datenbank bereinigung nicht viel.
    zu dem thema datenbank bereinigung gibt es sehr viele anleitungen im netz diese mal mit tante goo suchen oder hier im forum
     
  3. KonstantinM

    KonstantinM Member

    Registriert seit:
    19. November 2018
    Beiträge:
    5
    Zustimmungen:
    0
    Backup -> Check.

    Gibt es denn eine Möglichkeit zu prüfen, welche eigenen Felder mein neues Theme verwendet? Ich fürchte es liegt hauptsächlich an den alten Feldern.

    Server ist der zweit-schnellste Managed-Server bei Hetzner. Es läuft nur die eine Webseite darauf.
     
  4. Henk1060

    Henk1060 Well-Known Member

    Registriert seit:
    4. September 2014
    Beiträge:
    3.927
    Zustimmungen:
    349
    was hast du denn für einen wert?
    google pagesepeed ist naja ;)) nicht immer sehr aussagekräftig
     
  5. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.636
    Zustimmungen:
    1.778
    Bzgl. TTFB, werden Cache- oder Optimierungs-Plugins verwendet? Deaktiviere die alle mal und prüfe, ob sich was ändert. Welche PHP-Version wird verwendet?

    Bzgl. wp_postmeta, Du kannst (nach einem Datenbank-Backup und dem Wissen, wie man das wieder einspielt, wenn was schiefgeht) mit einem Plugin wie "WP Optimize" mal gezielt nur alte post Revisions bereinigen und danach damit nur die postmeta bzgl. Einträgen ohne Bezug bereinigen.

    Ob / wie das von Themes abhängt, kommt ganz auf den Einzelfall an, wenn man alleine mal ein Theme kurz testet, kommen sicher keine 580 MB zusammen. Eine saubere Analyse könnte man nur nach Einblick in die Daten selbst machen.
     
  6. KonstantinM

    KonstantinM Member

    Registriert seit:
    19. November 2018
    Beiträge:
    5
    Zustimmungen:
    0
    Hmm jetzt zeigt mir das Tool auf einmal nur 60 ms an. Es waren vorher aber deutlich mehr und wurde mir als Problem/Fehler angezeigt. Ich habe generell mit der Seite ein Performance-Problem, welches mir in einem "schnellen SEO-Audit" bescheinigt wurde.

    Als Cache-Plugin nutze ich die Premium-Version von "WP Fastest Cache". PHP ist 7.3 aktiv.

    Alte Revisionen habe ich bereits mit WP Optimize gelöscht. b3317133, meinst du mit "Ohne Bezug" die Option "Remove expired transient options"? Die habe ich bereits ausgeführt.
     
  7. KonstantinM

    KonstantinM Member

    Registriert seit:
    19. November 2018
    Beiträge:
    5
    Zustimmungen:
    0
    Ok. Ich habe jetzt folgende Query ausgeführt, um mir die Einträge anzeigen zu lassen:

    SELECT meta_key, COUNT(*) FROM `wp_postmeta` GROUP BY meta_key ORDER BY `COUNT(*)` DESC

    Ausgegeben wurden folgende erste Zeilen:

    meta_key COUNT(*) [​IMG] 1
    keyword_cache 42004
    _schema_json 41930
    _schema_json_timestamp 41930
    _yoast_wpseo_metadesc 41913
    _yoast_wpseo_title 41895
    penci_post_month_views_count 41848
    penci_post_views_count 41848
    penci_post_week_views_count 41848
    _wp_page_template 41720
    postleitzahlen 41101
    _yoast_wpseo_meta-robots-noindex 33934
    essb_cache_expire 31363
    rp4wp_child 30340
    rp4wp_parent 30340
    rp4wp_auto_linked 5023
    _edit_lock 3509
    _edit_last 3434
    ratings_users 3241
    ratings_average 3240
    ratings_score 3240
    _yoast_wpseo_primary_category 3085

    Soweit ich das deute sind die ersten 6 Zeilen das Yoast-SEO-Plugin. Die Penci-Einträge kommen durch mein aktuelles Theme. Postleitzahlen habe ich ebenfalls erstellt und wird genutzt. essb ist für ein Social-Sharing-Plugin. rp4wp kommt durch ein Related-Posts Plugin.

    Da alle Plugins im Einsatz sind, ist wohl soweit alles grob okay. Oder was meint ihr? Ist das normal, dass die Zeilen so eine große Datenbank verursachen?
     
  8. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.636
    Zustimmungen:
    1.778
    Bzgl. TTFB, deaktiviere alle Cache- und Optimierungs-Plugins und prüfe, ob sich was ändert.

    Versuche es auch mal mit PHP 7.2, manche ältere Themes / Plugins verursachen zig. Warnings mit PHP 7.3, die dann den kleinen Geschwindigkeitsvorteil durch zig Error-Log Einträge usw. ins Negative umkehren.

    Bzgl. der Grösse der Datenbank, zu penci_post_xxx deaktiviere die Statistikfunktionen des Themes oder wende Dich an den Theme-Support, wie Du das kleiner halten kannst. Bzgl. Cache essb_cache_expire des Social Share Plugins, wende Dich an den Plugin-Support, mit der gleichen Frage. Bzgl. der Yoast-Tabellen ebenso. Wäre noch zu klären, woher keyword_cache kommt.

    Bzgl. WP-Optimize und postmeta meine ich "Clean post meta data".
     
  9. KonstantinM

    KonstantinM Member

    Registriert seit:
    19. November 2018
    Beiträge:
    5
    Zustimmungen:
    0
    Die Cache-Plugins hatte ich schon probeweise deaktiviert. Dadurch werden die Resultate insgesamt schlechter. TTFB hatte sich nicht geändert.

    Social Share-Plugin habe ich gelöscht. die _schema-Einträge sind jetzt auch weg und stammten vom Plugin "Schema", welches ich früher mal installiert hatte.

    Die Yoast-Tabellen sind soweit in Ordnung. Die nicht benötigten Funktionen hatte ich bereits deaktiviert.

    keyword_cache weiß ich auch nicht.

    "Clean post meta data" zeigt bereits "No orphaned post meta data in your database". Hatte ich also schon ausgeführt.

    Wie kann man denn die besonders großen Einträge in der postmeta ausgeben? Gibt es da eine Query?
     
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden