powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / mysqldump и временные таблицы
25 сообщений из 40, страница 1 из 2
mysqldump и временные таблицы
    #38319211
mihail_13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
При работе mysqldump зачем-то использует временные таблицы (объем данных пишущихся во временный таблицы в трое превышает пищущиеся в dump). Как избежать использования временных таблиц?
...
Рейтинг: 0 / 0
mysqldump и временные таблицы
    #38319315
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mihail_13, незачем mysqldump использовать временные таблицы. давайте вы подробнее разберетесь, опишите что происходит и почему вы решили, что создаются какие-то ненужные таблицы.
...
Рейтинг: 0 / 0
mysqldump и временные таблицы
    #38319341
mihail_13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
netwind,

я тоже думаю, что незачем они ему, но при его работе в дирректории временных файлов все время создаются и удаляются пары файлов со странными именами и расширениями .MYD и .MYI, что достаточно однозначно говорит о том что это временные таблицы. Других серьезных задач за пару часов пока работает mysqldump сервер не выполняет, а до его запуска и после завершения эти файлы не появляются. Значит их появление связанно именно с работой mysqldump, и я сильно сомневаюсь что использование временных таблиц ускоряет создание резервной копии.
...
Рейтинг: 0 / 0
mysqldump и временные таблицы
    #38319368
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Неубедительно.

ProcessExplorer в руки - и убедитесь, что именно процесс mysqldump выполняет создание-запись-удаление этих файлов.
...
Рейтинг: 0 / 0
mysqldump и временные таблицы
    #38319373
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mihail_13netwind,

я тоже думаю, что незачем они ему, но при его работе в дирректории временных файлов все время создаются и удаляются пары файлов со странными именами и расширениями .MYD и .MYI, что достаточно однозначно говорит о том что это временные таблицы.

Я вижу две вероятных причины :
1. Неизбежное увеличение нагрузки при дампе может приводить к тому, что вы успеваете замечать файлы создающиеся при нормальной работе запросов, которые в обычном режиме не замечаете.
2. Такие файлы могут появляться при REPAIR TABLE. Может быть из-за бекапа у вас все регулярно ломается, но автоматически запускается починка.

Соберите больше информации во время возникновения файлов: show full processlist; вывод lsof и тд. Можно, например, отладчиком заморозить процесс mysql чтобы файлы не "убегали" пока вы разбираетесь.

Других серьезных задач за пару часов пока работает mysqldump сервер не выполняет, а до его запуска и после завершения эти файлы не появляются. Значит их появление связанно именно с работой mysqldump, и я сильно сомневаюсь что использование временных таблиц ускоряет создание резервной копии.
Могу согласиться лишь с тем, что какая-то связь между этими двумя явлениями есть. Но это не значит, что таблицы используются для дампа.
...
Рейтинг: 0 / 0
mysqldump и временные таблицы
    #38319425
mihail_13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina,

ProcessExplorer мне врятли удастся запустить под debian. Да и врятли он чем либо поможет. Сомнительно, что mysqldump сам создает таблицы без участия mysql, а значит я увижу что файлы временной таблицы создал mysql и это не скажет мне ровно ничего нового. Даже если удастся узнать использует эти таблицы сам mysqldump или их использует mysql создавая ответ на запрос mysqldump это тоже ничем не поможет.
...
Рейтинг: 0 / 0
mysqldump и временные таблицы
    #38319436
Фотография javajdbc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mihail_13,

>> ProcessExplorer мне врятли удастся запустить под debian.

ну такие улитки то должны быть: htop, iotop, mytop
...
Рейтинг: 0 / 0
mysqldump и временные таблицы
    #38319445
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mihail_13Даже если удастся узнать использует эти таблицы сам mysqldump или их использует mysql создавая ответ на запрос mysqldump это тоже ничем не поможет.
Ну, понимание причины поможет принять подходящее решение.

Может быть вам не нужно избегать появления этих таблиц.
...
Рейтинг: 0 / 0
mysqldump и временные таблицы
    #38319446
Фотография javajdbc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mihail_13,

http://dev.mysql.com/doc/refman/5.5/en/mysqldump.html

может какиенибудь настройки помогут,
посмотрите --компакт,--debug-check--debug-info
--extended-insert--flush-logs--lock-all-tables--lock-tables
net_buffer_length,--quick--result-file=file--single-transaction--skip-compact
...
Рейтинг: 0 / 0
mysqldump и временные таблицы
    #38319456
mihail_13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
netwind,

Можно ли отследить количество создававшихся временных таблиц?

Нагрузка на процессор и память явно не смертельные, а диски под эту задачу выделены отдельные, поэтому мало вероятно что дамп так вредит остальным (особенно если учесть что от остальных по нескольку запросов в час)

show full processlist; вывод lsof посмотрю, а запустить mysql под отладчиком у меня врятли получится
...
Рейтинг: 0 / 0
mysqldump и временные таблицы
    #38319463
mihail_13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
netwindmihail_13Даже если удастся узнать использует эти таблицы сам mysqldump или их использует mysql создавая ответ на запрос mysqldump это тоже ничем не поможет.
Ну, понимание причины поможет принять подходящее решение.

Может быть вам не нужно избегать появления этих таблиц.
Диск не очень быстрое устройство, и поскольку этого паразитного траффика три четверти, то без него должно быть почти в четыре раза быстрее.
...
Рейтинг: 0 / 0
mysqldump и временные таблицы
    #38319465
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mihail_13,

Таблицы какого типа дампите?
Можете показать точную команду mysqldump со всеми параметрами?

Есть мысль, что что-то заставляет mysqldump выполнять большую по памяти операцию, например, ключ --order-by-primary для MyISAM таблицы.
...
Рейтинг: 0 / 0
mysqldump и временные таблицы
    #38319466
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mihail_13, а может вы на время дампа просто отключите всех клиентов ? если файлов не будет - файлы создаются не в ответ на mysqldump.

Теоретически, есть сборочки от percona, в которых в slow log есть фильтры позволяющие записывать запросы создающие временные таблицы на диске. Сами понимаете, что смена программы - это морока.

Есть можно через strace подключиться к существующему процессу и там из вывода что-то отфильтровать, но в этом случае сложно понять в ответ на какой именно запрос создавались файлы.
...
Рейтинг: 0 / 0
mysqldump и временные таблицы
    #38319475
mihail_13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miksoftmihail_13,

Таблицы какого типа дампите?
Можете показать точную команду mysqldump со всеми параметрами?

Есть мысль, что что-то заставляет mysqldump выполнять большую по памяти операцию, например, ключ --order-by-primary для MyISAM таблицы.
Таблицы MyISAM
/usr/local/bin/mysqldump --lock-tables --add-drop-database --default-character-set=cp1251 --databases имя базы

Имеют ли значение размеры баз?
...
Рейтинг: 0 / 0
mysqldump и временные таблицы
    #38319486
mihail_13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
netwind,

клиенты это демоны, и большинство из них просыпается когда я к ним явно обращаюсь, а пока идет дамп я их точно не бужу, а больше некому. И даже если я буду проявлять огромную активность, такого траффика временными таблицами я не создам (в них пишется 5-7 Мбайт/сек, за 2 часа это 35-40 Гбайт)
...
Рейтинг: 0 / 0
mysqldump и временные таблицы
    #38319505
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mihail_13И даже если я буду проявлять огромную активность, такого траффика временными таблицами я не создам (в них пишется 5-7 Мбайт/сек, за 2 часа это 35-40 Гбайт)Эти цифры легко достичь и весьма скромной активностью. Кривая база и еще более кривые запросы и не такое могут :)
Хотя, конечно, я ни в коей мере даже не предполагаю, что у вас кривая база или SQL-запросы.
...
Рейтинг: 0 / 0
mysqldump и временные таблицы
    #38319523
mihail_13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miksoft,

Даже если у меня и все было бы кривое, это не объясняет почему кривость проявляется только при работе mysqldump.
Сейчас работает программа обрабатывающая данные это базы. Загрузка процессора 95-99%, свободной памяти <10%, на диски нагрузка больше чем при дампе и никаких временных таблиц.
(после завершения сново запущу дамп и посмотрб то что мне советовали)
...
Рейтинг: 0 / 0
mysqldump и временные таблицы
    #38319530
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Совет, наверное, дурацкий... я бы попробовал тормознуть процесс mysql (например, командой kill -STOP) во время дампа одной явно указанной таблицы (размером побольше) и посмотреть, что за данные в этих временных файлах - из этой таблицы или нет.
...
Рейтинг: 0 / 0
mysqldump и временные таблицы
    #38319543
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mihail_13а диски под эту задачу выделены отдельные, поэтому мало вероятно что дамп так вредит остальным (особенно если учесть что от остальных по нескольку запросов в час)

Ну это вы так думаете.
mysqldump ведь обращается в тем же самым данным, что используются в программах.
...
Рейтинг: 0 / 0
mysqldump и временные таблицы
    #38319548
mihail_13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miksoft,

В файле присутствет много нулей, а также имя сохраняемой базы, сохраняемой таблицы, имена и типы полей таблицы и "select,insert,update,references"
(я не стал убивать mysql, просто быстренько нажал просмотр файла)

Что это за данные мне не понятно, но они точно имеют отношение к работе mysqldump
...
Рейтинг: 0 / 0
mysqldump и временные таблицы
    #38319554
mihail_13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
show full processlist показал запросы для получения структуры и данных сохраняемых таблиц
lsof выдал существенно больше 2000 строк, в оновном все открытые mysql сохраняемые таблицы
...
Рейтинг: 0 / 0
mysqldump и временные таблицы
    #38319573
Фотография javajdbc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mihail_13,

если данные не изменяются, --lock-tables может быть лишним...
...
Рейтинг: 0 / 0
mysqldump и временные таблицы
    #38319586
mihail_13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
javajdbcmihail_13,

если данные не изменяются, --lock-tables может быть лишним...
Да, это я как то не подумал, файловые блокировки тоже время едят. Поправлю, при следующем дампе увижу.
...
Рейтинг: 0 / 0
mysqldump и временные таблицы
    #38319633
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что это за данные мне не понятно, но они точно имеют отношение к работе mysqldump
интересная логика. точнее, ее отсутствие.
...
Рейтинг: 0 / 0
mysqldump и временные таблицы
    #38319638
mihail_13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
netwindЧто это за данные мне не понятно, но они точно имеют отношение к работе mysqldump
интересная логика. точнее, ее отсутствие.
Ну кто еще может положить во временную таблицу имена дампящихся баз таблиц, структуру таблиц. С этими базами в это время больше точно никто работать не может. Либо это сам mysqldump, либо mysql при обработке его запросов.
...
Рейтинг: 0 / 0
25 сообщений из 40, страница 1 из 2
Форумы / MySQL [игнор отключен] [закрыт для гостей] / mysqldump и временные таблицы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]