Это проблема только при двух сценариях
СЦЕНАРИЙ # 1
Для таблиц InnoDB буферный пул innodb должен быть оптимально настроен на сумму всех пакетов данных и страниц индекса, которые составляют таблицы InnoDB.
Еще хуже может быть то, что innodb_file_per_table отключен (по умолчанию)
Это создаст файл с именем / var / lib / mysql / ibdata1, который может расти и никогда не уменьшаться. Это верно независимо от того, сколько раз вы удаляете и создаете базы данных.
Если забыть внести необходимые изменения в /etc/my.cnf, это также может привести к недостаточному использованию буферного пула innodb до тех пор, пока данные не будут заполнены.
Изменения в InnoDB просты.
Выполнить этот запрос
SELECT CONCAT (KeyBuf, 'M') BufferPoolSetting FROM (ВЫБЕРИТЕ ПОТОЛОЧЬ (SumInnoDB / POWER (1024,2)) KeyBuf FROM (ВЫБРАТЬ СУММУ (data_length + index_length) SumInnoDB FROM information_schema.tables WHERE engine '' table_ = Inno NOT IN ('information_schema', 'mysql')) A) AA;
Вывод этого запроса должен использоваться как innodb_buffer_pool_size в /etc/my.cnf непосредственно перед тем, как вы удалите все базы данных и создадите новые.
СЦЕНАРИЙ № 2
Для таблиц MyISAM буфер ключа должен быть оптимально настроен на сумму всех файлов .MYI.
Если забыть внести необходимые изменения в /etc/my.cnf, это также может привести к недостаточному использованию кэша ключей MyISAM (буфера ключей) до полного заполнения данных.
Изменения, внесенные для MyISAM, просты.
Запустить этот запрос
SELECT CONCAT (KeyBuf, 'M') KeyBufferSetting FROM (ВЫБЕРИТЕ ПОТОЛОК (SumIndexes / POWER (1024,2)) KeyBuf FROM (SELECT SUM (index_length) SumIndexes FROM information_schema.tables WHERE engine = 'MyISAM NOT IN и table_sc_ ('information_schema', 'mysql')) A) AA;
Вывод этого запроса должен использоваться как key_buffer_size в /etc/my.cnf непосредственно перед удалением всех баз данных и созданием новых.