Мы только что обновили MySQL 5.1 до 5.5. Скрипт вставки, который раньше занимал ~ 3 минуты, чтобы вставить ~ 200 тыс. Строк в таблицу MyISAM с 3 индексами, теперь занимает ~ 8 минут! Удаление индексов решает проблему !?
Чтение (выбор) в порядке (быстрее в 5.5, чем в 5.1)
Есть ли что-то другое в поведении индекса или может быть какой-то необычный параметр конфигурации, который, возможно, нужно настроить?
Заранее благодарим за любые указатели!
Системная информация:
Fedora 17, Mysql 5.5.29-log, 16 ГБ ОЗУ
Буфер ключей MyISAM = 4 ГБ
Размер индекса MyISAM = ~ 800 МБ
Размер таблицы MyISAM = 4,4 ГБ
Пул буферов INNODB = 8 ГБ
Таблица INNODB + размер индекса = ~ 12 ГБ
- Вот определение таблицы для каждого запроса:
СОЗДАТЬ ТАБЛИЦУ MY_TABLE
(MY_TABLE_ID
int (10) unsigned NOT NULL AUTO_INCREMENT, FIELD_1
char (1) NOT NULL, FIELD_2
int (11) NOT NULL, FIELD_3
varchar (64) NOT NULL, FIELD_4
varchar ( 64) DEFAULT NULL, FIELD_5
varchar (64) DEFAULT NULL, FIELD_6
varchar (8) DEFAULT NULL, FIELD_7
varchar (64) DEFAULT NULL, FIELD_8
varchar (64) DEFAULT NULL, < br> FIELD_9
varchar (64) ПО УМОЛЧАНИЮ NULL, FIELD_10
varchar (16) ПО УМОЛЧАНИЮ NULL, FIELD_11
varchar (124) ПО УМОЛЧАНИЮ NULL, FIELD_12
varchar (124) ПО УМОЛЧАНИЮ NULL, FIELD_13
varchar (124 ) DEFAULT NULL, FIELD_14
varchar (32) DEFAULT NULL, FIELD_15
varchar (32) DEFAULT NULL, FIELD_16
varchar (64) DEFAULT NULL, FIELD_17
varchar (64) DEFAULT NULL,
FIELD_18
varchar (64) ПО УМОЛЧАНИЮ NULL, FIELD_19
varchar (64) ПО УМОЛЧАНИЮ NULL, FIELD_20
char (1) ПО УМОЛЧАНИЮ NULL, FIELD_21
текст, FIELD_22
текст, FIELD_23
текст, < br> FIELD_24
varchar (32) ПО УМОЛЧАНИЮ NULL, FIELD_25
varchar (64) ПО УМОЛЧАНИЮ NULL, FIELD_26
varchar (16) ПО УМОЛЧАНИЮ NULL, FIELD_27
varchar (64) ПО УМОЛЧАНИЮ NULL, FIELD_28
va rchar (64) DEFAULT NULL, FIELD_29
текст, FIELD_30
int (11) NOT NULL, FIELD_31
varchar (16) DEFAULT NULL, FIELD_32
varchar (16) DEFAULT NULL, CREATION_DATE
int (11) NOT NULL, MODIFICATION_DATE
отметка времени NULL ПО УМОЛЧАНИЮ NULL,
PRIMARY KEY (MY_TABLE_ID
),
KEY I_FIELD_4
(FIELD_4
),
KEY I_FIELD_2
(FIELD_2
),
KEY I_FIELD_3
(FIELD_3
)) ДВИГАТЕЛЬ = MyISAM НАБОР ПО УМОЛЧАНИЮ = latin1