sql >> Databáze >  >> RDS >> Mysql

Jak optimalizovat databázi webových stránek

Databáze může ukládat obrovské množství informací – všechny příspěvky, stránky, komentáře, nabídky a jakákoli forma textových dat. Čím rozvinutější web máte, tím větší je jeho databáze. Spolu s tím se databáze může „zaplnit“ nepotřebnými položkami, jako jsou spamové komentáře, koncepty, uzavřené nebo dočasné soubory atd.

Samozřejmě to může mít za následek nízkou rychlost vašeho webu a dokonce nadměrné využití zdrojů vašeho účtu cPanel – řada požadavků MySQL do „těžké“ databáze se může zaseknout fronta narážející na vstupní procesy a limity CPU. Proto je nutná správná optimalizace, aby zahrnovala efektivitu, s jakou jsou data získávána z databáze.

Tento průvodce vám ukáže několik způsobů, jak tohoto cíle dosáhnout.

1. Nejprve musíte najít databázi přiřazenou k vašemu webu. Pokud neznáte jeho název, můžete jej zkontrolovat v konfiguračním souboru vašeho webu:

CMS Cesta ke konfiguračnímu souboru Řádek
WordPress kořenová složka instalace, wp-config.php define('DB_NAME', 'cpuser_database');
Joomla kořenová složka instalace, configuration.php veřejné $db ='cpuser_database';
PrestaShop kořenová složka instalace>>/config/settings.inc.php define('_DB_NAME_', cpuser_database');
OpenCart kořenová složka instalace, config.php define('DB_DATABASE', 'cpuser_database');
Drupal kořenová složka instalace>>/sites/default/settings.php 'database' => 'cpuser_database',
Moodle kořenová složka instalace,config.php $CFG->dbname,='cpuser_database';
Magento kořenová složka instalace>>/app/etc/local.xml <[! CDATA [cpuser_database] ]>
phpBB kořenová složka instalace, config.php $dbname ='cpuser_database';


2. V našem případě máme web založený na WordPressu, název naší databáze je nctests_wp255 :



3. Před provedením jakýchkoli změn důrazně doporučujeme stáhnout zálohu vaší databáze. Chcete-li tak učinit, přejděte na Soubory sekce> Záloha menu:



4. Klikněte na příslušnou databázi v části Stáhnout zálohu databáze MySQL menu pro zahájení stahování:



5. Nyní můžete přistoupit k samotné optimalizaci. Přejděte na Databáze sekce> phpMyAdmin menu:



6. Kliknutím na databázi v levém menu rozbalíte seznam tabulek:



7. Zaškrtněte potřebnou tabulku a vyberte Optimalizovat tabulku z rozbalovací nabídky, jak je uvedeno níže:



8. Stejným způsobem můžete optimalizovat několik tabulek najednou nebo všechny pomocíZaškrtnout vše možnost:



9. V důsledku toho získáte následující výstup:



10. Dalším způsobem, jak optimalizovat databázi, je odstranit nepotřebná data. To lze provést pomocí SQL příkazový řádek s následujícím dotazem:

DELETE FROM $table where ;

kde $table definuje název tabulky, která má být upravena, a definuje změny, které by měly být provedeny:



11. Pojďme se na tuto možnost podívat blíže a zvážit způsob, jakým funguje.

Předpokládejme, že potřebujete odstranit všechny příspěvky, které obsahují nějaké klíčové slovo, použijte následující příkaz:

SMAZAT Z 'tabulky'
KDE 'sloupec' jako '%keyword%
'

POZNÁMKA: musíte nahradit tabulku a sloupec se skutečnými hodnotami vaší databáze.

Chcete-li tak učinit, přejděte do tabulky obsahující příspěvky vašeho webu a najděte odpovídající sloupec. V našem případě je to wp9x_posts a posts_title sloupec:



Níže vidíte konečnou variantu našeho příkazu:

SMAZAT Z 'wp9x_posts'
KDE 'post_title' jako '%test%'




Jakmile stisknete Přejít , všechny příspěvky, které mají 'test' slovo v jejich názvu bude odstraněno.

Výstup bude vypadat takto:



12. Pokud si přejete odstranit příspěvky na zadané období, klidně použijte tento:

DELETE Z 'tabulky'
KDE 'sloupec' mezi 'datefrom' a 'dateto '


Opět tabulka a sloupec by měly být nahrazeny skutečnými hodnotami a také datumod a datum .

POZNÁMKA: musíte zadat přesné datum a čas, který lze v databázi vyhledat.



Náš konečný příkaz je:

DELETE FROM 'wp9x_posts'
KDE 'post_date' mezi '2015-06-24 19:48:14' a '2016-07-20 23:27:23'


13. Předpokládejme, že potřebujete odstranit komentáře od určitého uživatele. Zde je příkaz k použití:

DELETE FROM 'table'
WHERE 'column' ='username'


což v našem případě je:

DELETE Z 'wp9x_comments'
KDE 'comment_author' ='test_user'


nebo pokud potřebujete odstranit příspěvky s určitým stavem:

SMAZAT Z 'tabulky'
KDE 'sloupec' ='stav'


což v našem případě je:

DELETE Z 'wp9x_posts'
KDE 'post_status' ='uzavřeno'


Stejný režim funguje pro všechny ostatní tabulky, sloupce a databáze, stačí jen nastavit odpovídající hodnoty. Můžete se také podívat do dokumentace k MySQL, kde se dozvíte více o možných manipulacích a syntaxi MySQL.


To je ono!

              
                      Potřebujete pomoc? Kontaktujte náš HelpDesk


  1. Jak seřadit řádky podle součtu skupiny v SQL

  2. Jak vygenerovat jedinečné ID v MySQL?

  3. Nastavit výchozí hodnotu celočíselného sloupce SQLite

  4. TRUNC(číslo) Funkce v Oracle