Dépassement de capacité de la base de données MySQL ou MariaDB
Veuillez utiliser la fonction « Imprimer » au bas de la page pour créer un PDF.
Dans nos offres actuelles, vous disposez de 2 gigaoctet d'espace de stockage par base de données. Si cette limite est dépassée, l'accès en écriture à cette base de données est automatiquement verrouillé jusqu'à ce que vous repassiez sous la limite.
Grâce aux instructions suivantes, vous pouvez optimiser votre base de données et ainsi éviter qu'elle ne soit verrouillée.
Vous pouvez connaître l'espace de stockage utilisé d'une base de données en regardant l'affichage dans votre compte IONOS ou phpMyAdmin. Veuillez noter que phpMyAdmin affiche une valeur incorrecte pour l'utilisation de la mémoire lors de l'utilisation des tables innodb.
Par conséquent, la valeur affichée dans le compte IONOS sous Hébergement > Sélection de contrats > Bases de données : Administrer est plus sûre.
Une des raisons possibles d'une utilisation très excessive de la mémoire de votre base de données peut être la modification fréquente des tables. En conséquence, de plus en plus d'espace est occupé, sans que le volume de stockage réel ne change beaucoup. Vous pouvez réorganiser et optimiser cet espace de stockage.
Veuillez noter
- Une augmentation de la taille maximale de la base de données de 2 gigaoctet n'est pas possible.
- Si vous avez déjà dépassé l'espace de stockage maximum de votre base de données, le nettoyage n'est possible que via le service client IONOS. Une exception s'applique aux tables innodb auxquelles une commande Alter Table peut être appliquée.
Libérer de l'espace mémoire
Pour optimiser une base de données sur votre compte IONOS :
- Si vous ne l'avez pas encore fait, connectez-vous à votre compte IONOS.
- Cliquez sur la tuile Hébergement et sélectionnez le contrat d'hébergement approprié.
- Dans la tuile de la base de données, cliquez sur Administrer . Un aperçu de vos bases de données créées s'affiche.
- Cliquez sur le lien Ouvrir dans la ligne où votre base de données est affichée. Le programme d'administration phpMyAdmin s'ouvre dans une nouvelle fenêtre (ou un nouvel onglet).
- Cliquez sur le nom de la base de données dans l'arborescence. Dans la vue détaillée, toutes les tables de cette base de données sont affichées.
- Choisissez SQL dans la barre de menu.
- Entrez la commande suivante dans l'onglet SQL :
SELECT concat('ALTER TABLE `', table_schema, '`.`', table_name, '` FORCE;')
FROM information_schema.tables
WHERE data_free / (data_length + index_length + data_free) > 0.6
ORDER BY data_free DESC;Des commandes SQL, avec lesquelles vous pouvez libérer de la mémoire, sont générées. Exécutez les commandes Optimize dans votre fenêtre SQL. dbname est le nom réel de votre base de données.
+---------------------------------------------------------------------+
| concat('ALTER TABLE `', table_schema, '`.`', table_name, '` FORCE;')|
+---------------------------------------------------------------------+
| ALTER TABLE `dbname`.`attemptoptions` FORCE; |
| ALTER TABLE `dbname`.`attemptsimple_login_log` FORCE; |
| ALTER TABLE `dbname`.`attemptposts`FORCE; |
| ALTER TABLE `dbname`.`attemptpostmeta` FORCE; |
+---------------------------------------------------------------------+
4 rows in set (0.01 sec)Si la base de données n'est pas verrouillée, vous pouvez exécuter ces commandes SQL indépendamment de l'utilisation réelle de la mémoire.
Remarque
L'espace disque que vous avez nettoyé est libéré dans la base de données avec un délai, le temps de la prochaine mise à jour. En général, vous pouvez réutiliser votre base de données dès le lendemain.
Automatiser l'optimisation
Vous pouvez automatiser l'optimisation grâce aux tâches Cron. Pour plus d'informations sur les tâches Cron, veuillez consulter ces articles du Centre d'Assistance.