Mysql
 sql >> база данни >  >> RDS >> Mysql

Защо MySQL InnoDB вмъкванията/актуализациите на големи таблици стават много бавни, когато има няколко индекса?

Изглежда, че е или

  • Небалансиране на индекса с течение на времето
  • Фрагментация на диска
  • Фрагментация на вътрешния файл(ове) с данни innodb

Можете да опитате analyze table foo който не се заключва, а само няколко индексни гмуркания и отнема няколко секунди.

Ако това не го поправи, можете да използвате

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

и трябва да видите къде се прекарва по-голямата част от времето.

Очевидно innodb работи по-добре, когато вмъкванията се извършват в PK ред, това вашият случай ли е?



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Вътрешно присъединяване на много към много таблици с филтър в MySQL

  2. MySQL хостинг на Azure, напълно управлявана услуга за облачна база данни стартира в ScaleGrid

  3. Трябва да се дефинира името на параметъра на заявката в Sql

  4. MySQL:Запитване за Unicode обекти

  5. Как да се свържете с MySQL сървър след инсталиране на XAMPP на Mac OS