The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Mysql - запросы тормозят."
Отправлено Rayon, 30-Май-10 05:36 
Решил создать тему именно тут, т.к. это врятли проблема в настройке mysql-сервера.
Так вот. Стоит игровой сервер, естественно в базу идет множество запросов, в следствие чего она тупит. Для проверки была накидана прожка на java, которая многопоточно обновляла данные в таблице, результат удивил.. На сервере с 24гб оперативной памяти, 16 ядерным процессором и 2 жесткими дисками в RAID'e, запросы выполнялись медленнее чем на хиленьком компьютере с windows(!). Версии mysql - одинаковые, конфиг - одинаковый, база - одинаковая.

Вот результат работы программы на винде:
Time passed: ....... 191268 ms
Total updates: ..... 2732320
Slow updates: ...... 0
Slowest update: .... 16 ms

Как видно, 2,732,320 запросов, и самый долгий апдейт был 16мс. Программа работала в 30 потоков, 50 соединений к базе.

Вот результат с debian-сервера:
Time passed: ....... 34101 ms
Total updates: ..... 46894
Slow updates: ...... 612
Slowest update: .... 2716 ms

Сделано совсем чуть-чуть запросов, а уже так "ужасно".
"Slowest update" - это те, которые дольше 500мс, настройки программы такие же, как и на винде. Вот сам конфиг mysql:

[client]
socket = /var/run/mysqld/mysqld.sock

port = 3306

default-character-set = utf8

[mysqld]
user = mysql
socket = /var/run/mysqld/mysqld.sock
datadir = /var/lib/mysql
pid-file = /var/run/mysqld/mysqld.pid
port = 3306

query_cache_size=0

table_cache=1024
thread_cache_size=16
thread_concurrency=8

#*** MyISAM Specific options
default_table_type=MYISAM
default-storage-engine=MyISAM

max_heap_table_size=256M
myisam_max_sort_file_size=10G
myisam_sort_buffer_size=128M
key_buffer_size=1G
read_buffer_size=64K
read_rnd_buffer_size=1M
sort_buffer_size=256K
join_buffer_size=512K

max_allowed_packet=64M

max_connections=500
max_user_connections=500
max_connect_errors=100

max_tmp_tables=2048000
tmp_table_size=256M

skip-external-locking

sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"

#slow_query_log
#slow_query_log_file = /var/lib/mysql/slow_query.log
long_query_time = 3
#log_short_format
#log-queries-not-using-indexes

# ***  Replication related settings

server-id = 1

# Automatically check and repair not properly closed MyISAM tables.
myisam_recover
myisam_repair_threads = 1

character-set-server = utf8
collation-server = utf8_general_ci

# *** BDB Specific options ***
#skip-bdb

# *** INNODB Specific options ***
skip-innodb

[mysqldump]
socket = /var/run/mysqld/mysqld.sock
default-character-set = utf8
quick
max_allowed_packet = 64M

[mysql]
no-auto-rehash
default-character-set = utf8
max_allowed_packet = 64M

[isamchk]
key_buffer = 512M
sort_buffer_size = 512M
read_buffer = 32M
write_buffer = 32M

[myisamchk]
key_buffer = 512M
sort_buffer_size = 512M
read_buffer = 32M
write_buffer = 32M

[mysqlhotcopy]
interactive-timeout

[mysqld_safe]
log-error = /var/log/mysql.log
socket = /var/run/mysqld/mysqld.sock
open-files-limit = 8192

[mysqld_multi]
mysqld = /usr/bin/mysqld_safe
mysqladmin = /usr/bin/mysqladmin

Версия mysql - 5.1.47
Ядро на дебиане - 2.6.26-2-amd64
База и там и там - MyISAM
Данных в таблице, по которой идет апдейт - примерно 1,600,000
Глобальные переменные и там и там одинаковые

Еще одна интересная вещь в том, что любом unix-сервере моем, эта программа выдавало плачевный результат, а на долбаной винде - нормально, как так? подскажите, где копать, уж крайне не хочется на винду перелазить. Может какая проблема в java mysql-коннекторе или еще чего. Заранее благодарю за ответы.

 

Ваше сообщение
Имя*:
EMail:
Для отправки новых сообщений в текущей нити на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру