powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / MySQL [игнор отключен] [закрыт для гостей] / query_cache_size оптимизация
17 сообщений из 17, страница 1 из 1
query_cache_size оптимизация
    #39820147
tadeyiloda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
есть сервер с 200+ магазинами престашоп,базы innodb
24 ядра 64 гб озу
предполагаю что в основном запросы на выборку товара

как лучше настроить query_cache_size?
везде пишут что его нужно отключить
я для теста ставил 10-20% от озу и кеш всегда заполняется
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
UERY CACHE
Query cache is enabled
Current query_cache_size = 10.00 G
Current query_cache_used = 9.98 G
Current query_cache_limit = 128 M
Current Query cache Memory fill ratio = 99.86 %
Current query_cache_min_res_unit = 4 K
However, 3580653 queries have been removed from the query cache due to lack of memory
Perhaps you should raise query_cache_size
MySQL won't cache query results that are larger than query_cache_limit in size


Код: sql
1.
2.
[OK] Query cache efficiency: 48.2% (121M cached / 252M selects)
[!!] Query cache prunes per day: 4223798


Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
SHOW STATUS LIKE 'Qcache%';+-------------------------+-----------+
| Variable_name           | Value     |
+-------------------------+-----------+
| Qcache_free_blocks      | 4134      |
| Qcache_free_memory      | 16651488  |
| Qcache_hits             | 122075946 |
| Qcache_inserts          | 8744932   |
| Qcache_lowmem_prunes    | 3606912   |
| Qcache_not_cached       | 41258     |
| Qcache_queries_in_cache | 4561204   |
| Qcache_total_blocks     | 9413776   |
+-------------------------+-----------+
8 rows in set (0.00 sec)


LA очень низкое load average: 1.28, 1.09, 1.06

какие будут идеи?
query_cache_size еще увеличить , уменьшить или совсем отключить?
...
Рейтинг: 0 / 0
query_cache_size оптимизация
    #39820270
Фотография ScareCrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторкакие будут идеи?

https://github.com/major/MySQLTuner-perl
...
Рейтинг: 0 / 0
query_cache_size оптимизация
    #39820275
tadeyiloda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
запускал и что?
он советует увеличить query_cache_size
...
Рейтинг: 0 / 0
query_cache_size оптимизация
    #39820290
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tadeyiloda,

Покажите его вывод полностью. Желательно в спойлере.
...
Рейтинг: 0 / 0
query_cache_size оптимизация
    #39820300
tadeyiloda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник

>> MySQLTuner 1.7.15 - Major Hayden <major@mhtx.net>;
>> Bug reports, feature requests, and downloads at http://mysqltuner.com/
>> Run with '--help' for additional options and output filtering

[--] Skipped version check for MySQLTuner script
[OK] Currently running supported MySQL version 10.1.40-MariaDB
[OK] Operating on 64-bit architecture

-------- Log file Recommendations ------------------------------------------------------------------
[--] Log file: /var/lib/mysql/localhost.localdomain.err(0B)
[OK] Log file /var/lib/mysql/localhost.localdomain.err exists
[OK] Log file /var/lib/mysql/localhost.localdomain.err is readable.
[!!] Log file /var/lib/mysql/localhost.localdomain.err is empty
[OK] Log file /var/lib/mysql/localhost.localdomain.err is smaller than 32 Mb
[OK] /var/lib/mysql/localhost.localdomain.err doesn't contain any warning.
[OK] /var/lib/mysql/localhost.localdomain.err doesn't contain any error.
[--] 0 start(s) detected in /var/lib/mysql/localhost.localdomain.err
[--] 0 shutdown(s) detected in /var/lib/mysql/localhost.localdomain.err

-------- Storage Engine Statistics -----------------------------------------------------------------
[--] Status: +Aria +CSV +InnoDB +MEMORY +MRG_MyISAM +MyISAM +PERFORMANCE_SCHEMA +SEQUENCE
[--] Data in MyISAM tables: 29.6M (Tables: 1662)
[--] Data in InnoDB tables: 20.6G (Tables: 72661)
[OK] Total fragmented tables: 0

-------- Analysis Performance Metrics --------------------------------------------------------------
[--] innodb_stats_on_metadata: OFF
[OK] No stat updates during querying INFORMATION_SCHEMA.

-------- Security Recommendations ------------------------------------------------------------------
[OK] There are no anonymous accounts for any database users
[OK] All database users have passwords assigned
[!!] There is no basic password file list!

-------- CVE Security Recommendations --------------------------------------------------------------
[--] Skipped due to --cvefile option undefined

-------- Performance Metrics -----------------------------------------------------------------------
[--] Up for: 1d 2h 34m 30s (176M q [1K qps], 398K conn, TX: 374G, RX: 35G)
[--] Reads / Writes: 99% / 1%
[--] Binary logging is disabled
[--] Physical Memory : 62.9G
[--] Max MySQL memory : 51.5G
[--] Other process memory: 0B
[--] Total buffers: 51.2G global + 3.7M per thread (100 max threads)
[--] P_S Max memory usage: 0B
[--] Galera GCache Max memory usage: 0B
[OK] Maximum reached memory usage: 51.3G (81.53% of installed RAM)
[OK] Maximum possible memory usage: 51.5G (81.93% of installed RAM)
[OK] Overall possible memory usage with other process is compatible with memory available
[OK] Slow queries: 0% (2/176M)
[OK] Highest usage of available connections: 30% (30/100)
[OK] Aborted connections: 0.00% (7/398329)
[!!] name resolution is active : a reverse name resolution is made for each new connection and can reduce performance
[!!] Query cache may be disabled by default due to mutex contention.
[OK] Query cache efficiency: 48.2% (161M cached / 334M selects)
[!!] Query cache prunes per day: 5643774
[OK] Sorts requiring temporary tables: 0% (0 temp sorts / 2M sorts)
[!!] Joins performed without indexes: 14684
[!!] Temporary tables created on disk: 32% (442K on disk / 1M total)
[OK] Thread cache hit rate: 99% (30 created / 398K connections)
[OK] Table cache hit rate: 71% (147K open / 204K opened)
[OK] Open file limit used: 1% (5K/450K)
[OK] Table locks acquired immediately: 99% (27M immediate / 27M locks)

-------- Performance schema ------------------------------------------------------------------------
[--] Performance schema is disabled.
[--] Memory used by P_S: 0B
[--] Sys schema isn't installed.

-------- ThreadPool Metrics ------------------------------------------------------------------------
[--] ThreadPool stat is enabled.
[--] Thread Pool Size: 24 thread(s).
[--] Using default value is good enough for your version (10.1.40-MariaDB)

-------- MyISAM Metrics ----------------------------------------------------------------------------
[!!] Key buffer used: 20.1% (2M used / 10M cache)
[OK] Key buffer size / total MyISAM indexes: 10.0M/10.5M
[OK] Read Key buffer hit rate: 97.8% (4K cached / 100 reads)
[OK] Write Key buffer hit rate: 100.0% (10 cached / 10 writes)

-------- InnoDB Metrics ----------------------------------------------------------------------------
[--] InnoDB is enabled.
[--] InnoDB Thread Concurrency: 0
[OK] InnoDB File per table is activated
[OK] InnoDB buffer pool / data size: 40.0G/20.6G
[OK] Ratio InnoDB log file size / InnoDB Buffer pool size: 5.0G * 2/40.0G should be equal to 25%
[OK] InnoDB buffer pool instances: 40
[--] InnoDB Buffer Pool Chunk Size not used or defined in your version
[OK] InnoDB Read buffer efficiency: 99.98% (4057651921 hits/ 4058639907 total)
[!!] InnoDB Write Log efficiency: 28.23% (224212 hits/ 794242 total)
[OK] InnoDB log waits: 0.00% (0 waits / 1018454 writes)

-------- AriaDB Metrics ----------------------------------------------------------------------------
[--] AriaDB is enabled.
[OK] Aria pagecache size / total Aria indexes: 128.0M/1B
[OK] Aria pagecache hit rate: 98.6% (20M cached / 273K reads)

-------- TokuDB Metrics ----------------------------------------------------------------------------
[--] TokuDB is disabled.

-------- XtraDB Metrics ----------------------------------------------------------------------------
[--] XtraDB is disabled.

-------- Galera Metrics ----------------------------------------------------------------------------
[--] Galera is disabled.

-------- Replication Metrics -----------------------------------------------------------------------
[--] Galera Synchronous replication: NO
[--] No replication slave(s) for this server.
[--] Binlog format: STATEMENT
[--] XA support enabled: ON
[--] Semi synchronous replication Master: Not Activated
[--] Semi synchronous replication Slave: Not Activated
[--] This is a standalone server

-------- Recommendations ---------------------------------------------------------------------------
General recommendations:
Configure your accounts with ip or subnets only, then update your configuration with skip-name-resolve=1
Increasing the query_cache size over 128M may reduce performance
Adjust your join queries to always utilize indexes
Temporary table size is already large - reduce result set size
Reduce your SELECT DISTINCT queries without LIMIT clauses
Performance schema should be activated for better diagnostics
Consider installing Sys schema from https://github.com/mysql/mysql-sys for MySQL
Consider installing Sys schema from https://github.com/good-dba/mariadb-sys for MariaDB
Variables to adjust:
query_cache_size (=0)
query_cache_type (=0)
query_cache_size (> 10G) [see warning above]
join_buffer_size (> 1.0M, or always use indexes with JOINs)
performance_schema = ON enable PFS

...
Рейтинг: 0 / 0
query_cache_size оптимизация
    #39820317
tadeyiloda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
https://ruhighload.com/query_cache_size параметр в mysql
вот тут пишут что надо вобще отключить query_cache_size
...
Рейтинг: 0 / 0
query_cache_size оптимизация
    #39820385
Фотография ScareCrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор[!!] Joins performed without indexes: 14684
[!!] Temporary tables created on disk: 32% (442K on disk / 1M total)

ну кроме этого вроде все норм.

а какую проблему решаем то?
...
Рейтинг: 0 / 0
query_cache_size оптимизация
    #39820393
tadeyiloda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
проблема такая- везде пишут что query_cache_size надо отключить, он только тормозит работу
я пытаюсь понять нужно ли в моем случае использовать query_cache_size
и если использовать то какой задать оптимальный размер
...
Рейтинг: 0 / 0
query_cache_size оптимизация
    #39821054
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tadeyilodaвезде пишут что query_cache_size надо отключитьЕсли InnoDB buffer pool хватает (а его хватает), то в этом утверждении есть немалая доля здравого смысла.
Большой query_cache_size плох тем, что при каждой модификации данных надо перебирать все запросы, чьи результаты там хранятся, и инвалидировать те из них, которые затрагиваются этой модификацией. В MySQL это довольно дорогая операция. Поэтому в базах, где много модификаций данных, действительно, имеет смысл отключать кэш запросов.

И, признаться, я впервые вижу настолько большой кэш запросов. Обычно это 128-256 МБайт.
Попробуйте уменьшать его в 2 раза за шаг и после каждого изменения не меньше суток следить за эффективностью кэша.
...
Рейтинг: 0 / 0
query_cache_size оптимизация
    #39821112
tadeyiloda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
эффективность по каким критериям?
сделал кеш 128мб и ЛА сразу вырос в несколько раз
...
Рейтинг: 0 / 0
query_cache_size оптимизация
    #39821129
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tadeyiloda,

ЛА вырос в первую очередь из-за рестарта MySQL, у него же все кэши сбросились, в т.ч. InnoDB buffer pool. Я поэтому и говорю, что смотреть надо в течение суток, чтобы кэши наполнились и разные профили нагрузки прошли (например, если они отличаются ночью и днем).

Следить можно как по общесистемным параметрам, типа того же ЛА или среднего времени построения страницы, так и по этим:
[OK] Query cache efficiency: 48.2% (161M cached / 334M selects)
[!!] Query cache prunes per day: 5643774

Кстати, каково соотношение чтения к записи в целом по базе если считать в запросах?


Я бы еще вот про это подумал:
[!!] Temporary tables created on disk: 32% (442K on disk / 1M total)
Не стоит ли временные файлы перенести на RAM-диск?
Если физический диск HDD, то это даст ускорение. Если физический диск SSD, то это даст небольшую экономию его ресурса и небольшое ускорение.
...
Рейтинг: 0 / 0
query_cache_size оптимизация
    #39821191
tadeyiloda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[OK] Query cache efficiency: 30.2% (29M cached / 97M selects)
[!!] Query cache prunes per day: 111220973

это query_cache_size=128M

насчет ram диска хорошая идея, какой размер лучше выделить?
с учетом
max_heap_table_size = 2.00 G
tmp_table_size = 2.00 G
...
Рейтинг: 0 / 0
query_cache_size оптимизация
    #39821200
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tadeyilodaнасчет ram диска хорошая идея, какой размер лучше выделить?
с учетом
max_heap_table_size = 2.00 G
tmp_table_size = 2.00 GИсходя из этих параметров нельзя сказать. Да и вообще сильно зависит от фактических запросов. Попробуйте последить за tmp-каталогом, куда MySQL временные файлы складывает.
...
Рейтинг: 0 / 0
query_cache_size оптимизация
    #39821209
tadeyiloda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
счас почти у всех систем есть раздел tmpfs /dev/shm c размером 50% озу
указал его в качестве tmpdir
...
Рейтинг: 0 / 0
query_cache_size оптимизация
    #39821211
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tadeyilodac размером 50% озуУточните это для своего случая. Если это так, то оперативки может не хватить.
...
Рейтинг: 0 / 0
query_cache_size оптимизация
    #39821215
tadeyiloda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
df -h
Filesystem Size Used Avail Use% Mounted on
/dev/md2 227G 145G 71G 68% /
tmpfs 32G 0 32G 0% /dev/shm
/dev/md0 488M 108M 355M 24% /boot
...
Рейтинг: 0 / 0
query_cache_size оптимизация
    #39821448
tadeyiloda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
https://haydenjames.io/mysql-query-cache-size-performance/
тут тоже пишут что query_cache_size надо делать маленьким или совсем выключить
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / query_cache_size оптимизация
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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