Wordpress (WP) gyorsítása, okosságok

Collapse
X
 
  • Idő
  • Show
Clear All
new posts
  • Botka
    Új tag
    • 20-10-09
    • 7

    #1

    Wordpress (WP) gyorsítása, okosságok

    Sziasztok, gyűjtsük össze, mikkel lehet optimalizálni/gyorsítani egy lassú WP oldalt.

    Kezdjük pl. az adatbázis gyorsítással, tisztítási lekérdezések futtatásával. A következő lekérdezések futtathatók phpMyAdminból vagy távoli adatbázis-kapcsolat segítségével.

    Lásssuk a teljes autoload mennyiséget:

    Kód:
    SELECT SUM(LENGTH(option_value)) FROM wp_options WHERE autoload = 'yes';
    Listázzuk ki a legnagyobb autoload sorokat:

    Kód:
    SELECT LENGTH(option_value),option_name FROM wp_options WHERE autoload='yes' ORDER BY length(option_value) DESC LIMIT 20;​
    Nekem pl. a _transient_dirsize_cache volt a legnagyobb tétel a wp_options-ban, ez egy temporary dolog, nyugodtan törölhető. Sőt, minden további nélkül törölhető az összes transient​ sor a wp_option táblából:

    Kód:
    DELETE FROM `wp_options` WHERE `option_name` LIKE ('%\_transient\_%');
    Nekem ez kapásból érezhetően gyorsított a wp oldalamon.
  • ikon
    arcom egy ikon
    • 09-03-01
    • 38

    #2
    wp_commentmeta kitakarítása:

    Kód:
    SELECT * FROM wp_commentmeta WHERE comment_id NOT IN ( SELECT comment_id FROM wp_comments );
    DELETE FROM wp_commentmeta WHERE comment_id NOT IN ( SELECT comment_id FROM wp_comments );
    SELECT * FROM wp_commentmeta WHERE meta_key LIKE '%akismet%';
    DELETE FROM wp_commentmeta WHERE meta_key LIKE '%akismet%';​
    Majd wp_commentmeta optimalizálása:

    Kód:
    OPTIMIZE TABLE `wp_commentmeta`;
    -------------------------------

    wp_postmeta kitakarítása:

    Kód:
    SELECT * FROM wp_postmeta pm LEFT JOIN wp_posts wp ON wp.ID = pm.post_id WHERE wp.ID IS NULL;
    DELETE pm FROM wp_postmeta pm LEFT JOIN wp_posts wp ON wp.ID = pm.post_id WHERE wp.ID IS NULL;
    ​
    Majd wp_postmeta optimalizálása:

    Kód:
    OPTIMIZE TABLE `wp_postmeta`;
    Last edited by ikon; 2025-09-07, 07:11.

    Comment

    • Nic
      Matek prof
      • 09-03-01
      • 52

      #3
      Mivel a MySQL-kapcsolat nélküli PHP-szkriptek nagyon gyorsan futottak, a MySQL-adatbázist használó WP konfigurációs fájljában (wp-config.php) kutakodtam. Megváltoztattam az alábbi beállításokat, és jelentős sebességjavulást észleltem:

      erről:
      Kód:
      /** MySQL hostname */
      define('DB_HOST', 'localhost');​
      erre:
      Kód:
      /** MySQL hostname */
      define('DB_HOST', '127.0.0.1');​

      Comment

      • ikon
        arcom egy ikon
        • 09-03-01
        • 38

        #4
        Akkor folytatom a wp_actionscheduler​_ táblák kitakarításával.
        Futtatsd le az alábbi SQL paarancsokat, mikor túl nagyra hízott a wp_actionscheduler_actions tábla:
        Kód:
        DELETE FROM `wp_actionscheduler_actions` WHERE `status` = 'canceled';
        DELETE FROM `wp_actionscheduler_actions` WHERE `status` = 'failed';
        DELETE FROM `wp_actionscheduler_actions` WHERE `status` = 'complete';
        ​
        Az wp_actionscheduler_logs tábla tartalmát meg simán törölheted:

        woocommerce-scheduled-actions-log-table.png

        Comment

        • Botka
          Új tag
          • 20-10-09
          • 7

          #5
          A wp_wfknownfilelist és wp_wffilemods táblák tartalmát nyugodtan törölheted, mivel ezek alapértelmezés szerint minden szkennelés indításakor úgyis törlésre kerülnek.
          Last edited by Botka; 2025-09-07, 07:10.

          Comment

          Working...