sql >> Databasteknik >  >> RDS >> Mysql

Påskyndar en (långsam) enorm wordpress-databas

1) Använd mysqltuner på WAMP (du kan inte installera på delad hosting utan root) för att ställa in MySQL och ändra frågecache, minne, etc. Kommer att göra en enorm skillnad på WAMP och den eventuella liveservern. https://github.com/rackerhacker/MySQLTuner-perl

2) Se till att ta bort inläggs-/sidrevisioner från databasen. WP kan lagra många revisioner som i hög grad påverkar DB-hastigheten. Jag har sett DB-storlekar sjunka med 90 % efter att ha tagit bort inläggs-/sidrevisioner.

Kör som SQL-fråga i phpmyadmin för att ta bort versioner; ändra tabellprefix vid behov:

DELETE a,b,c FROM wp_posts a LEFT JOIN wp_term_relationships b ON (a.ID = b.object_id) LEFT JOIN wp_postmeta c ON (a.ID = c.post_id) WHERE a.post_type = 'revision'

Optimera sedan alla tabeller. Och lägg sedan till

define ('WP_POST_REVISIONS', FALSE);

nära toppen av wp-config.php (någonstans efter den inledande <?php ... ) för att inaktivera framtida revisioner.

3) Öka minnet för php och WP för bättre prestanda:

Redigera memory_limit-raden i din php.ini till 128M:

memory_limit = 128M;

Eller lägg till den här raden överst i din .htaccess-fil:

php_value memory_limit 128M

Om det inte fungerar eller ger ett fel, lägg till den här raden nära toppen av din wp-config.php-fil direkt efter den inledande <?php

define('WP_MEMORY_LIMIT', '128M');

4) På den sista VPS:en, konfigurera http.conf för prestanda och använd eventuellt en annan box för själva MySQL-servern.



  1. Det gick inte att infoga array i databasen

  2. php-frågan körs inte?

  3. MariaDB JSON_TABLE() Förklarad

  4. PDO-motsvarigheten till mysql_client_encoding()?