Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment optimiser la base de données du site Web

La base de données peut stocker une énorme quantité d'informations - tous les articles, pages, commentaires, menus et toute forme de données textuelles. Plus votre site est développé, plus sa base de données est importante. Parallèlement, la base de données peut devenir "encombrée" d'éléments inutiles, tels que des commentaires de spam, des brouillons, des fichiers fermés ou temporaires, etc.

Bien sûr, cela peut entraîner une mauvaise performance de vitesse de votre site Web, et même une surutilisation des ressources de votre compte cPanel - un certain nombre de requêtes MySQL vers une base de données "lourde" peuvent être bloquées dans un file d'attente atteignant les processus d'entrée et les limites du processeur. Ainsi, une optimisation appropriée est nécessaire pour impliquer l'efficacité avec laquelle les données sont extraites de la base de données.

Ce guide vous montrera plusieurs façons d'atteindre cet objectif.

1. Pour commencer, vous devez localiser la base de données attribuée à votre site Web. Si vous ne connaissez pas son nom, n'hésitez pas à le vérifier dans le fichier de configuration de votre site :

CMS Chemin d'accès au fichier de configuration Ligne
WordPress dossier racine d'installation, wp-config.php define('DB_NAME', 'cpuser_database');
Joomla dossier racine d'installation, configuration.php public $db ='cpuser_database' ;
PrestaShop dossier racine d'installation>>/config/settings.inc.php define('_DB_NAME_', cpuser_database');
OpenCart dossier racine d'installation, config.php define('DB_DATABASE', 'cpuser_database');
Drupal dossier racine d'installation>>/sites/default/settings.php 'database' => 'cpuser_database',
Moodle dossier racine d'installation,config.php $CFG->dbname,='cpuser_database' ;
Magento dossier racine d'installation>>/app/etc/local.xml <[ ! CDATA [cpuser_database] ]>
phpBB dossier racine d'installation, config.php $dbname ='cpuser_database' ;


2. Dans notre cas, nous avons un site Web basé sur WordPress, le nom de notre base de données est nctests_wp255 :



3. Avant d'apporter des modifications, nous vous conseillons vivement de télécharger la sauvegarde de votre base de données. Pour ce faire, accédez à Fichiers rubrique> Sauvegarde menus :



4. Cliquez sur la base de données en question dans Télécharger une sauvegarde de base de données MySQL menu pour lancer le téléchargement :



5. Vous pouvez maintenant procéder à l'optimisation elle-même. Accédez à Bases de données rubrique> phpMyAdmin menus :



6. Cliquez sur la base de données dans le menu de gauche pour dérouler la liste des tables :



7. Cochez le tableau nécessaire et sélectionnez Optimiser le tableau dans le menu déroulant comme indiqué ci-dessous :



8. De la même manière, vous pouvez optimiser plusieurs tables à la fois, ou toutes en utilisant Tout cocher choix :



9. En conséquence, vous obtiendrez la sortie suivante :



10. Une autre façon d'optimiser votre base de données consiste à supprimer les données inutiles. Cela peut être fait via SQL ligne de commande avec la requête suivante :

DELETE FROM $table where  ;

$table définit le nom de la table à ajuster et définit les modifications à effectuer :



11. Examinons de plus près cette option et examinons son fonctionnement.

Supposons que vous deviez supprimer tous les messages contenant un mot clé, la commande suivante doit être utilisée :

DELETE FROM 'table'
WHERE 'column' like '%keyword%
'

REMARQUE : vous devez remplacer table et colonne avec les valeurs réelles de votre base de données.

Pour ce faire, accédez au tableau qui contient les articles de votre site Web et recherchez la colonne correspondante. Dans notre cas, il s'agit de wp9x_posts et posts_title colonne :



Ci-dessous, vous pouvez voir la variante finale de notre commande :

SUPPRIMER DE 'wp9x_posts'
OÙ 'post_title' ressemble à '%test%'




Une fois que vous appuyez sur Go , tous les messages qui ont 'test' mot dans leur titre sera supprimé.

Le résultat ressemblera à :



12. Si vous souhaitez supprimer les publications pour la période spécifiée, n'hésitez pas à utiliser celle-ci :

DELETE FROM 'table'
WHERE 'column' between 'datefrom' and 'dateto '


Encore une fois, tableau et colonne doit être remplacé par les valeurs réelles ainsi que datefrom et dateto .

REMARQUE : vous devez spécifier la date et l'heure précises qui peuvent être consultées dans la base de données.



Notre commande finale est :

SUPPRIMER DE 'wp9x_posts'
WHERE 'post_date' entre '2015-06-24 19:48:14' et '2016-07-20 23:27:23'


13. Supposons que vous deviez supprimer les commentaires d'un certain utilisateur. Voici la commande à utiliser :

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


qui dans notre cas est :

DELETE FROM 'wp9x_comments'
WHERE 'comment_author' ='test_user'


ou si vous avez besoin de supprimer les messages avec un certain statut :

DELETE FROM 'table'
WHERE 'column' ='status'


qui dans notre cas est :

DELETE FROM 'wp9x_posts'
WHERE 'post_status' ='closed'


Le même mode fonctionne pour toutes les autres tables, colonnes et bases de données, il vous suffit de définir les valeurs correspondantes. Vous pouvez également consulter la documentation MySQL pour en savoir plus sur les manipulations possibles et la syntaxe MySQL.


C'est tout !

              
                      Besoin d'aide ? Contactez notre service d'assistance