powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Помогите разобраться с настройкой MySQL, в htop'e очень много запущенных процессов MySQL
4 сообщений из 4, страница 1 из 1
Помогите разобраться с настройкой MySQL, в htop'e очень много запущенных процессов MySQL
    #38648097
nerei
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго времени суток.
С недавних пор столкнулся с проблемой, мускуль стал мне съедать мозг, а за одно и все ресурсы сервака. В начале появляется 1-2 процесса, которые жрут по 100+ % CPU, потом постепенно снижается нагрузка на один процесс, вместо этого создаётся новый и идёт перераспределение, далее опять создаётся мускуль процесс и опять нагрузка между новым и существующими делится и т.д, в итоге после продолжительного времени вижу (примерно 12ч.) вижу процессов 20-30, которые жрут по ~15% CPU. при этом Load Average доходит до 50.00 +

http://fastpic.ru/view/62/2014/0521/02651643b84e2ca1799348666c544451.png.html][IMG] http://i62.fastpic.ru/thumb/2014/0521/51/02651643b84e2ca1799348666c544451.jpeg [/IMG]

Сервак используется как хостинг, в него забито примерно 400 сайтов, сделанных на всяких вордпресах и джумле всего такого добра где то под 400 сайтов ...
В серваке физически 32гб. оперативы, 2 проца по 4 ядра, винты сатовские (10 рейд). На серваке стоит виртуальная машина vmware где запилина isp manager панель.

Что примечательно хостинг жил спокойно (относительно) до недавних пор, где то месяц назад начал вдруг плодить процессы mysql.

Соотношение Threads_cached к Threads_created, после рестарта и часа работы где то 12 и 5, после продолжительной работы такая вот хрень:
| Threads_cached | 2 |
| Threads_connected | 56 |
| Threads_created | 1148 |
| Threads_running | 48 |

Менял дофига настроек, результат не охотно меняется.
Конфиг правил в /etc/mysql/my.cnf
Последнее, что пробовал это:
автор[mysqld]
port = 3306
socket = /var/run/mysqld/mysqld.sock
skip-locking
key_buffer_size = 256M
max_allowed_packet = 1M
table_open_cache = 256
sort_buffer_size = 1M
read_buffer_size = 1M
read_rnd_buffer_size = 4M
myisam_sort_buffer_size = 64M
thread_cache_size = 8
query_cache_size= 16M
# Try number of CPU's*2 for thread_concurrency
thread_concurrency = 8


И

автор[mysqld]
port = 3306
socket = /var/run/mysqld/mysqld.sock
skip-locking

key_buffer_size = 512M
#max_allowed_packet = 1M
table_open_cache = 512
sort_buffer_size = 2M
read_buffer_size = 256K
read_rnd_buffer_size = 8M
myisam_sort_buffer_size = 512M
#thread_cache_size = 8
#query_cache_size = 32M

# Try number of CPU's*2 for thread_concurrency
thread_concurrency = 6


#key_buffer = 512M
max_allowed_packet = 16M
thread_stack = 128K
thread_cache_size = 16
thread_cache = 8
max_connections = 20
table_cache = 2048
tmp_table_size = 32M
max_heap_table_size = 256M
join_buffer_size = 1M
query_cache_limit = 4M
query_cache_size = 64M
query_cache_type = 1

interactive_timeout=600
wait_timeout=10
net_read_timeout = 15
net_write_timeout = 15
log-bin=mysql-bin
server-id = 1


Установил mysqltuner, суток ещё не прошло, но пока он мне вот, что говорит:

автор-------- General Statistics --------------------------------------------------
[--] Skipped version check for MySQLTuner script
[OK] Currently running supported MySQL version 5.1.63-0+squeeze1-log
[OK] Operating on 64-bit architecture

-------- Storage Engine Statistics -------------------------------------------
[--] Status: -Archive -BDB -Federated +InnoDB -ISAM -NDBCluster
[--] Data in MyISAM tables: 1G (Tables: 5990)
[--] Data in InnoDB tables: 329M (Tables: 2093)
[--] Data in MEMORY tables: 0B (Tables: 110)
[!!] Total fragmented tables: 2691

-------- Performance Metrics -------------------------------------------------
[--] Up for: 2h 29m 49s (365K q [40.686 qps], 15K conn, TX: 1B, RX: 65M)
[--] Reads / Writes: 75% / 25%
[--] Total buffers: 298.0M global + 6.4M per thread (151 max threads)
[OK] Maximum possible memory usage: 1.2G (7% of installed RAM)
[OK] Slow queries: 0% (1K/365K)
[OK] Highest usage of available connections: 33% (51/151)
[OK] Key buffer size / total MyISAM indexes: 256.0M/160.5M
[OK] Key buffer hit rate: 100.0% (419M cached / 35K reads)
[OK] Query cache efficiency: 64.6% (165K cached / 256K selects)
[!!] Query cache prunes per day: 167254
[OK] Sorts requiring temporary tables: 0% (38 temp sorts / 22K sorts)
[!!] Joins performed without indexes: 1162
[!!] Temporary tables created on disk: 42% (13K on disk / 32K total)
[OK] Thread cache hit rate: 95% (730 created / 15K connections)
[!!] Table cache hit rate: 0% (256 open / 47K opened)
[OK] Open file limit used: 39% (402/1K)
[OK] Table locks acquired immediately: 99% (147K immediate / 148K locks)
[!!] InnoDB data size / buffer pool: 329.2M/8.0M

-------- Recommendations -----------------------------------------------------
General recommendations:
Run OPTIMIZE TABLE to defragment tables for better performance
MySQL started within last 24 hours - recommendations may be inaccurate
Enable the slow query log to troubleshoot bad queries
Adjust your join queries to always utilize indexes
When making adjustments, make tmp_table_size/max_heap_table_size equal
Reduce your SELECT DISTINCT queries without LIMIT clauses
Increase table_cache gradually to avoid file descriptor limits
Variables to adjust:
query_cache_size (> 16M)
join_buffer_size (> 128.0K, or always use indexes with joins)
tmp_table_size (> 16M)
max_heap_table_size (> 16M)
table_cache (> 256)
innodb_buffer_pool_size (>= 329M)
...
Рейтинг: 0 / 0
Помогите разобраться с настройкой MySQL, в htop'e очень много запущенных процессов MySQL
    #38648122
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Думается, посмотреть бы для начала SHOW PROCESSLIST внимательно. Возможно, какой-то пользователь активно загружает сервер долгоиграющими запросами.
Посмотреть лог медленных запросов. Проверить индексы, мож побились на каких то активно используемых таблицах.
Напоследок поглядеть дисковую подсистему сервера, ошибки файловой системы.

автор[!!] InnoDB data size / buffer pool: 329.2M/8.0MДумаю, 8 метров действительно маловато.
...
Рейтинг: 0 / 0
Помогите разобраться с настройкой MySQL, в htop'e очень много запущенных процессов MySQL
    #38648127
Фотография javajdbc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nerei,


посмотрите:
inside_mysql >> show processlist;
или

sh>> yum install mytop
sh>> mytop

Один из вариантов -- старые треды застряли -- какой-нибудь
(недавно появившийся) клиент не закрывает конекции.
...
Рейтинг: 0 / 0
Помогите разобраться с настройкой MySQL, в htop'e очень много запущенных процессов MySQL
    #38649529
nerei
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vkle , javajdbc
Спасибо, действительно запрос помог разобраться, поймал несколько пользователей, где некоторые кадры просто сидели с chmod 777 на всё, а некоторые просто ошибки в таблицах mysql, наподобие:
Table is marked as crashed
9 clients are using or haven't closed the table properly
Unexpected byte: 0 at link: 456616

Больше всего я удивился когда увидел базу в 1гб(!), как так могла база разожраться ?
И там куча сообщений 18,40,70...n clients are using or haven't closed the table properly
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Помогите разобраться с настройкой MySQL, в htop'e очень много запущенных процессов MySQL
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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