SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 03.12.2010 10:09:59

maxtor
Участник
Зарегистрирован: 21.07.2010
Сообщений: 20

Оптимизация SELECT NOUNT(*)

Имеется запрос:

Код:

SELECT COUNT(*)
FROM torrents
WHERE разные условия

Выполняется слишком долго. В пики нагрузки время выполнения достигает до 1 секунды, что очень не приемлемо.
Таблица имеет 15500 записей размером в 35Мб.
конфиг мускуля:

Код:

[mysqld]

log-slow-queries = /var/log/mysql_slow_query.log
long_query_time=3

datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Default to using old password format for compatibility with mysql 3.x
# clients (those using the mysqlclient10 compatibility package).
old_passwords=1
# To allow mysqld to connect to a MySQL Cluster management daemon, uncomment
# these lines and adjust the connectstring as needed.
#ndbcluster
#ndb-connectstring="nodeid=4;host=localhost:1186"
thread_cache_size = 50
max_connections = 300
key_buffer_size = 500M
key_cache_division_limit = 50
table_cache = 1024
max_allowed_packet = 300M
query_cache_size = 32M
skip-innodb
skip-bdb
query_cache_limit = 2M
tmp_table_size = 32M
max_heap_table_size = 32M
sort_buffer_size = 128M
myisam_sort_buffer_size = 128M
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

[ndbd]
# If you are running a MySQL Cluster storage daemon (ndbd) on this machine,
# adjust its connection to the management daemon here.
# Note: ndbd init script requires this to include nodeid!
connect-string="nodeid=2;host=localhost:1186"

[ndb_mgm]
# connection string for MySQL Cluster management tool
connect-string="host=localhost:1186"

Есть способы убыстрить SELECT COUNT(*) кроме кэширования всего подряд?

Неактивен

 

#2 03.12.2010 11:39:40

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Оптимизация SELECT NOUNT(*)

Можно попробовать использовать разные индексы.

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson