sql >> Database >  >> RDS >> Mysql

Waarom worden MySQL InnoDB-inserts / updates op grote tabellen erg traag als er een paar indexen zijn?

Het klinkt alsof het

. is
  • Index onevenwichtig na verloop van tijd
  • Schijffragmentatie
  • Interne innodb databestand(en) fragmentatie

Je zou kunnen proberen analyze table foo die geen sluizen nodig heeft, slechts een paar indexduiken en een paar seconden duurt.

Als dit het probleem niet oplost, kunt u

mysql> SET PROFILING=1;
mysql> INSERT INTO foo ($testdata);
mysql> show profile for QUERY 1;

en je zou moeten zien waar de meeste tijd aan wordt besteed.

Blijkbaar presteert innodb beter wanneer inserts in PK-volgorde worden gedaan, is dit jouw geval?



  1. Hoe gegevens uit de database te halen om de pagina in laravel te bekijken?

  2. mysqli::mysqli():(HY000/2002):Kan geen verbinding maken met lokale MySQL-server via socket 'MySQL' (2)

  3. SQL Integer Range bij het maken van tabellen

  4. installeer zowel mysql als mysqlnd op ubuntu 12.04