2016-09-08 5 views
-1

J'utilise une base de données MySQL (InnoDB) avec XAMPP. J'ai fait beaucoup de requêtes différentes et coûteuses sur une table (~ 1,1M lignes) et les ai annulées plusieurs fois parce que cela a pris beaucoup de temps ...MySQL provoque l'utilisation du disque à 100%

Si je démarre MySQL maintenant, l'utilisation du disque est instantanée sur 100% et ne diminue pas. Est-il possible que les requêtes annulées précédentes soient placées en file d'attente et exécutées maintenant en arrière-plan?

show processlist; affiche pas de processus en cours ...

Des idées? Merci d'avance!

MISE À JOUR: Une partie de mysql-error.log

2016-09-09 10:04:56 2068 [Note] InnoDB: 128 rollback segment(s) are active. 
InnoDB: Starting in background the rollback of uncommitted transactions 
2016-09-09 10:04:56 2068 [Note] InnoDB: Waiting for purge to start 
2016-09-09 10:04:56 3478 InnoDB: Rolling back trx with id 426031, 90941 rows to undo 

Cela pourrait être le problème ... mais comment le résoudre?

+0

Courez-vous ceci sur la machine réelle ou sur une VM? Combien de RAM est allouée, et combien de mémoire MySQL utilise-t-il quand il pointe? "L'utilisation du disque" n'est probablement pas ce que vous voulez dire, mais plutôt l'utilisation du processeur. –

+0

Par "utilisation du disque", faites-vous référence à l'espace sur le volume ou à l'utilisation des E/S disque? Comment déterminez-vous exactement que "l'utilisation du disque" est de 100%? Si le volume est "plein" et qu'il n'y a plus d'espace disque, c'est un problème. Vous auriez besoin de comprendre ce qui prend de l'espace, et voir si vous pouvez en récupérer. Si la journalisation binaire de MySQL est activée, une chose rapide à faire est de vider les anciens fichiers journaux (en supposant que ceux-ci ne sont plus requis pour la réplication ou la récupération), par ex. 'PURGE JOURNAUX BINAIRES AVANT MAINTENANT() - INTERVALLE 2 JOUR '. – spencer7593

+0

Une utilisation de 35 Mo de RAM et la plupart du temps presque 0% d'utilisation du processeur. Courir ceci sur ma machine réelle (forte). L'utilisation dans mon cas signifie l'utilisation. Assez d'espace disponible ;-) – zypro

Répondre

0

Un peu de travail autour de:

  1. base de données d'exportation
  2. Supprimer cette base de données
  3. reset tous les mysql-paramètres
  4. base de données d'importation

meilleures solutions sont les bienvenues! =)