Задавайте вопросы, мы ответим
Вы не зашли.
Привет,
Юзаю MySQL 5.5.8 под winXP.
После того, как база набрала некий размер ~ 200 Mb, MySQL начал терроризировать хард не по детски .
Вопрос почему и как с этим бороться?
Основная операция в базе - добавление новых записей. И есть ряд микро-таблиц (очереди), в которых данные меняются все время.
Не вижу ниодного повода, чтобы с такими операциями терроризировать хард .
А после того, как хард нагружается начинает все тормозить.
Неактивен
innodb_buffer_pool_size поставьте побольше и innodb_flush_log_at_trx_commit = 0.
Неактивен
Вообще, если сервис перегрузить, MySQL хард отпускает. Выглядит, как скрытый баг...
Спасибо, изменил. Жесткий диск вроде как меньше стал использоваться, но: сейчас MySQL отжирает 80% CPU.
MySQL настолько не любит базы > 250 Mb ?
Неактивен
Он не любит плохо написанные приложения
Неактивен
Приложения всегда плохо написанные.
Эта проблема возникла только спустя какое-то время. Сначала все работало быстро и без проблем.
Дык что можно сделать, на вскидку не понятно?
Отредактированно ady (11.02.2011 11:47:38)
Неактивен
Навскидку — найти медленные запросы, переписать, добавить индексов.
А насчет приложений и всегда — это Вы зря. Очень многие приложения
работают хорошо, потому что люди думали, когда их писали. Ну и, конечно,
они хотели написать хорошее приложение, а не подходили к вопросу с
Вашей точкой зрения на него
Неактивен
ady написал:
Жесткий диск вроде как меньше стал использоваться
Вы это по индикатору на корпусе определяете или каким-то ПО? Всегда было интересно как в винде узнать кто и как юзает винт Если знаете что-то подобное, поделитесь, буду благодарен.
Неактивен
Neval написал:
Вы это по индикатору на корпусе определяете или каким-то ПО? Всегда было интересно как в винде узнать кто и как юзает винт Если знаете что-то подобное, поделитесь, буду благодарен.
По индикатору, звуку и характерным тормозам системы. И лечу это все в данный момент перезапуском сервиса MySQL (просто останов приложения не помогает).
Неактивен
paulus написал:
Навскидку — найти медленные запросы, переписать, добавить индексов.
Особо медленных запросов нет, приложение работает хорошо и быстро.
Да и все запросы очень простые.
До этого использовался Оракл и Оракл ХЕ и таких проблем не было (правда, в некоторый момент тормоза таки были, потому что Оракл - это Оракл ).
Ну похоже, другого пути как пересматривать запросы и выискивать почему MySQL их не любит - нет.
Не знаю, правда, даже с чего начать...
Чем можно загрузить CPU на 80% insert"ом и простым select"ом я пока не понимаю.
Неактивен
В виндоус есть профайлер (в том числе и жестких дисков). Он умеет рисовать
какие-то картинки. Достается через mmc, кажется.
Неактивен
MySQL может как-то помочь с определением того, как каких запросах от тормозит и подвисает?
Неактивен
Если уже висит, то просто посмотреть SHOW FULL PROCESSLIST в моменте и разделить все запросы на те, которые исполняются и те, которые их ждут. Скорее всего причиной являются первые.
Если зависает иногда, то включить лог медленных запросов. В конфиге
log-slow-queries
long-query-time=1
Неактивен
В "SHOW FULL PROCESSLIST" вроде ничего страшного нет:
mysql> SHOW FULL PROCESSLIST;
+-------+------+----------------+----------+---------+------+-------+-
| Id | User | Host | db | Command | Time | State | Info |
+-------+------+----------------+----------+---------+------+-------+-
| 737 | root | localhost:1213 | banalyse | Sleep | 0 | |
NULL |
| 12175 | root | localhost:1663 | banalyse | Sleep | 2 | |
NULL |
| 12241 | root | localhost:2669 | banalyse | Sleep | 129 | |
NULL |
| 12305 | root | localhost:2742 | banalyse | Sleep | 73 | |
NULL |
| 12306 | root | localhost:2743 | banalyse | Sleep | 0 | |
NULL |
| 12459 | root | localhost:3029 | NULL | Query | 0 | NULL |
SHOW FULL PROCESSLIST |
+-------+------+----------------+----------+---------+------+-------+-
6 rows in set (0.00 sec)
А MySQL по-прежнему отъедает 50% CPU...
Неактивен
Добавил в my.ini:
log-slow-queries
long-query-time=1
Отредактированно ady (21.02.2011 13:56:33)
Неактивен
Какой тип таблиц, Innodb или myisam? Сколько запросов в секунду (смотреть лучше всего командой \s общее число запросов с момента старта сервера)
Неактивен
Тип таблиц - Innodb.
Эта проблема пока пропала, посмотрел на долгие запросы и понял, что индексы потерялись (при переезде с оракла) .
Спасибо!
Неактивен