2017-01-12 21 views
0

У меня есть большая база данных на машине Win10, mysqld.exe делает много дискового ввода-вывода, 100%, в течение часов и часов последовательно 100 МБ/с - в основном пишет - сохраняется после многочисленных перезагрузок. Как я могу узнать, что, черт возьми, он делает, и остановить его? Я знаю, что база данных не используется в настоящий момент, я хочу выяснить, откуда этот ввод/вывод и остановить ее. Единственными решениями, которые я нашел в Интернете, были общие советы по настройке, мне это не нужно, мне нужно закрыть это сейчас!Что делает MySQL? 100% загрузка диска из загрузки

show processlist ничего не показывает.

ОБНОВЛЕНИЕ: Проблема заключалась в огромной операции откат фона на столе. Решение таково:

1) kill mysqld.exe 
2) add innodb_force_recovery=3 to my.ini 
3) start mysqld.exe 
4) export the table (96GB table resulted in about 40GB .sql file) 
5) drop the table 
6) kill mysqld.exe 
7) set innodb_force_recovery=0 to my.ini 
8) reboot and import the table back 

Не знаю об целостности данных еще, но кажется прекрасным.

Благодаря Милни.

+0

[Windows Process Explorer] (https://technet.microsoft.com/en-us/ sysinternals/bb896653) может помочь вам отладить. – DanFromGermany

ответ

2

Если вы просматриваете вкладку «Диск» монитора ресурсов из диспетчера задач, вы можете видеть, какие файлы записываются, это будет подсказывать вам, в какой базе данных это;

Вы можете использовать что-то вроде SELECT * FROM information_schema.innodb_trx\G для просмотра открытых транзакций и посмотреть, какие заявления вызывают это

Resource Monitor

+0

Спасибо, он говорит «trx_state: ROLLING BACK». Как я могу отменить это? – Daniel

+0

Я нашел это: «Вы можете убить процесс mysqld и установить innodb_force_recovery на 3, чтобы довести базу данных без отката, а затем DROP таблицу, вызывающую откат от убегания». Могу ли я предотвратить откат, не отбрасывая таблицу? Это своего рода важный стол и слишком большой для экспорта. – Daniel

+0

У вас нет резервных копий? Скажите, пожалуйста, что это не производственная база данных, работающая на клиенте Windows 10, а не на сервере? В идеале вы оставите откат до конца ... – Milney

0

Думаю, вам стоит взглянуть на это.

http://windowsreport.com/windows-10-anniversary-update-100-disk-usage/

Также попробуйте проверить, если диск IO использование все еще там, если выключить интернет.

+0

Проблема использования диска специфична для mysqld.exe и никоим образом не связана с ОС. Я только упомянул об этом, чтобы избежать конкретных решений для Linux. Кроме того, система не обновилась до обновления Anniversary. – Daniel

+0

Ссылка также содержит некоторые инструменты, которые могут вас заинтересовать, чтобы отладить эту проблему. Пожалуйста, смотрите. – cyberrspiritt

+0

Я действительно посмотрел, однако это довольно общая статья об устранении неполадок о том, как определить, какой процесс/сервер/файл вызывает высокий ввод-вывод, и убить или отключить его. Это не то, что я пытаюсь сделать. Я уже знаю, что вызывает проблему - есть что-то с моим сервером MySQL, и мне нужно решение, связанное с MySQL. Я не могу убить весь MySQL, потому что я все еще хочу использовать базу данных. Благодарю вас за ваш вклад. – Daniel

 Смежные вопросы

  • Нет связанных вопросов^_^