Нужен совет по оптимизации

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

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

[mysqld]
user=mysql
pid-file=/var/run/mysqld/mysqld.pid
socket=/var/run/mysqld/mysqld.sock
port=3306
basedir=/usr
datadir=/var/lib/mysql
tmpdir=/tmp
lc-messages-dir=/usr/share/mysql
log_error=/var/log/mysql/error.log

symbolic-links=0

skip-external-locking
key_buffer_size = 16K
max_allowed_packet = 1M
table_open_cache = 4
sort_buffer_size = 64K
read_buffer_size = 256K
read_rnd_buffer_size = 256K
net_buffer_length = 2K
thread_stack = 240K

#innodb_use_native_aio = 0
innodb_file_per_table

max_connections=30
max_user_connections=20
wait_timeout=10
interactive_timeout=50
long_query_time=5

!includedir /etc/mysql/conf.d/
 
Это вообще тот файл?
 
0. Смотрим сколько свободной памяти, вывод сюда:
Код:
free -m
1. Ищем Created_tmp_disk_tables - смотрим, запоминаем:
Код:
SHOW GLOBAL STATUS;

2. В конфиге нет этих настроек, значи они выставлены по-умолчанию:
Код:
show global variables like 'tmp_table_size';
show global variables like 'max_heap_table_size';

3. Увеличиваем max_heap_table_size, tmp_table_size, перегружаем мускул, гоняем сайт, смотрим как повела себя Created_tmp_disk_tables, как изменилась скорость работы.
Для начала попробуй max_heap_table_size = tmp_table_size = 268435456 (256 метров). Но чтобы уместиться без подкачки (free -m)

PS. Лучше профилировать, чтобы понять что где и почему, а то что выше - чтобы диск как можно меньше использовался
 
1.2.3. командна "command not found"
 

Вложения

  • GP6YMfzD5kY.jpg
    GP6YMfzD5kY.jpg
    29,7 KB · Просмотры: 4
Памяти уже не хватает, так что делай-не делай настройку мускула, лишней памяти нет. Опять же повторю, что настраивать мускул - это то, за что я бы взялся в последнюю очередь. А в первую - собрать лог медленных запросов, затем

1. посмотреть по коду, зачем этот запрос, и можно ли от него вообще избавиться (как писал, может идет-таки подсчет товаров)
2. сделать
Код:
EXPLAIN EXTENDED медленный-запрос
и начать думать как его а) заоптимизировать б) закешировать средствами мускула

Ну и как бонус, удалить задублированные индексы, ибо жрут память: pt-duplicate-key-checker

Если осилите, хорошо, нет - дальнейшее обсуждение для себя считаю бесполезным
 
Хорошо, спасибо вам большое, буду что-то думать)
 
Назад
Сверху