Mysql
 sql >> Database >  >> RDS >> Mysql

Come ottimizzare il database del sito web

Il database può archiviare un'enorme quantità di informazioni:tutti i post, le pagine, i commenti, i menu e qualsiasi forma di dati di testo. Più il sito è sviluppato, più grande è il suo database. Insieme ad esso, il database potrebbe diventare "ingombra" di elementi non necessari, come commenti spam, bozze, file chiusi o temporanei, ecc.

Ovviamente, può comportare una scarsa velocità delle prestazioni del tuo sito Web e persino un utilizzo eccessivo delle risorse del tuo account cPanel:un certo numero di richieste MySQL a un database "pesante" potrebbero bloccarsi in un coda che colpisce i processi di ingresso e i limiti della CPU. Pertanto, è necessaria una corretta ottimizzazione per coinvolgere l'efficienza con cui i dati vengono recuperati dal database.

Questa guida ti mostrerà diversi modi per raggiungere questo obiettivo.

1. Per cominciare devi individuare il database assegnato al tuo sito web. Se non conosci il suo nome, controlla il file di configurazione del tuo sito web:

CMS Percorso del file di configurazione Linea
WordPress cartella principale di installazione, wp-config.php define('DB_NAME', 'cpuser_database');
Joomla cartella principale di installazione, configuration.php pubblico $db ='cpuser_database';
PrestaShop cartella radice di installazione>>/config/settings.inc.php define('_DB_NAME_', cpuser_database');
OpenCart cartella principale di installazione, config.php define('DB_DATABASE', 'cpuser_database');
Drupal cartella radice di installazione>>/sites/default/settings.php 'database' => 'cpuser_database',
Moodle cartella radice di installazione,config.php $CFG->dbname,='cpuser_database';
Magento cartella radice di installazione>>/app/etc/local.xml <[! CDATA [cpuser_database] ]>
phpBB cartella principale di installazione, config.php $dbname ='cpuser_database';


2. Nel nostro caso abbiamo un sito Web basato su WordPress, il nome del nostro database è nctests_wp255 :



3. Prima di apportare modifiche, ti consigliamo vivamente di scaricare il backup del tuo database. Per farlo, passa a File sezione> Backup menu:



4. Fare clic sul database in questione in Scarica un backup del database MySQL menu per avviare il download:



5. Ora puoi procedere con l'ottimizzazione stessa. Vai a Banche dati sezione> phpMyAdmin menu:



6. Fare clic sul database nel menu a sinistra per espandere l'elenco delle tabelle:



7. Seleziona la tabella necessaria e seleziona Ottimizza tabella dal menu a tendina come mostrato di seguito:



8. Allo stesso modo puoi ottimizzare più tabelle contemporaneamente, oppure tutte usando Seleziona tutto opzione:



9. Di conseguenza, otterrai il seguente output:



10. Un altro modo per ottimizzare il database è rimuovere i dati non necessari. Può essere fatto tramite SQL riga di comando con la seguente query:

DELETE FROM $table where ;

dove $tabella definisce il nome della tabella che deve essere modificata e definisce le modifiche da eseguire:



11. Diamo un'occhiata più da vicino a questa opzione e consideriamo il modo in cui funziona.

Supponiamo di dover rimuovere tutti i post che contengono alcune parole chiave, è necessario utilizzare il seguente comando:

ELIMINA DA 'tabella'
WHERE 'colonna' come '%keyword%
'

NOTA: devi sostituire la tabella e colonna con i valori effettivi del tuo database.

Per farlo, spostati sulla tabella che contiene i post del tuo sito web e trova la colonna corrispondente. Nel nostro caso è wp9x_posts e titolo_post colonna:



Di seguito puoi vedere la variante finale del nostro comando:

ELIMINA DA 'wp9x_posts'
WHERE 'post_title' come '%test%'




Una volta premuto Vai , tutti i post che hanno 'test' la parola nel titolo verrà rimossa.

L'output sarà simile a:



12. Se desideri rimuovere i post per il periodo specificato, sentiti libero di utilizzare questo:

ELIMINA DA 'tabella'
WHERE 'colonna' tra 'datada' e 'datato '


Di nuovo, tabella e colonna deve essere sostituito con i valori effettivi e con datefrom e datato .

NOTA: è necessario specificare la data e l'ora esatte che possono essere cercate nel database.



Il nostro comando finale è:

ELIMINA DA 'wp9x_posts'
DOVE 'post_date' tra '2015-06-24 19:48:14' e '2016-07-20 23:27:23'


13. Supponiamo di dover rimuovere i commenti da un determinato utente. Ecco il comando da usare:

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


che nel nostro caso è:

CANCELLA DA 'wp9x_comments'
WHERE 'comment_author' ='test_user'


o se devi rimuovere i post con un determinato stato:

CANCELLA DA 'tabella'
WHERE 'colonna' ='stato'


che nel nostro caso è:

CANCELLA DA 'wp9x_posts'
WHERE 'post_status' ='chiuso'


La stessa modalità funziona per qualsiasi altra tabella, colonna e database, devi solo impostare i valori corrispondenti. Puoi anche fare riferimento alla documentazione di MySQL per saperne di più sulle possibili manipolazioni e sulla sintassi di MySQL.


Ecco fatto!

             
                    Hai bisogno di aiuto? Contatta il nostro HelpDesk