Почему падает скорость записи в MySQL?

Здравствуйте!
Скрипт висит в бесконечном цикле и импортирует записи в БД. Постепенно скорость записи падает. Почему так происходит и как этого избежать?
  • Вопрос задан
  • 706 просмотров
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Индексация. При добавлении каждой следующей записи надо перестроить все индексы таблицы.
MySQL в стандартный дамп добавляет команды отключения индексов до заполнения таблицы и включения их после заполнения.
ALTER TABLE `table` DISABLE KEYS;
INSERT ...
...
INSERT ...
ALTER TABLE `table` ENABLE KEYS;
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
Stalker_RED
@Stalker_RED
Хинт: при больших объемах лучше данные не "перекачивать скриптом" а делать
mysql -u dbUser -p dbName < foobar.sql
Или
LOAD DATA INFILE 'data.txt' INTO TABLE my_table;
И да, индексы лучше отключить, а потом включить после заливки.

Если у вас действительно данные поступают непрерывным потоком, то возможно стоит посмотреть на другие базы, типа кликхауса, например.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы
Интерно Ростов-на-Дону
от 35 000 до 45 000 руб.
АЛЬФАСАТКОМ Калуга
от 40 000 до 60 000 руб.
Involta Иваново
от 40 000 руб.
12 дек. 2018, в 08:07
1000 руб./за проект
12 дек. 2018, в 05:58
1000 руб./за проект
11 дек. 2018, в 21:41
500 руб./за проект