Skip to content

mariaDB cache 설정

조회 수 173 추천 수 0 2019.08.04 17:59:34


안하면 엄청 느리다.



Important Note: From MySQL 5.6.8,query_cache_type is set to OFF by default. So if you haven’t explicitly turned it ON on old version, it may not work anymore!

Check current status of query_cache

mysql -e "show variables like 'query_cache_%'"

Will output something like:

| Variable_name                | Value     |
| query_cache_limit            | 2097152   |
| query_cache_min_res_unit     | 4096      |
| query_cache_size             | 268435456 |
| query_cache_strip_comments   | ON        |
| query_cache_type             | ON        |
| query_cache_wlock_invalidate | OFF       |

Query Cache Config

Add something like below following to your /etc/my/my.cnf

query_cache_type = 1
query_cache_size = 256M
query_cache_limit = 2M
query_cache_strip_comments =1

Please note that query_cache_strip_comments variable is available on Percona & MariaDB mysql variants as of now.

Meaning of variables


Just turn it ON. From mysql 5.6.8 its OFF by default.

If this is OFF, you will see error “[!!] Query cache is disabled” when running mysqltuner.

Earlier mysql version used to setquery_cache_type = 1 butquery_cache_size = 0. If either ofquery_cache_type andquery_cache_size is set to 0, query_cache gets disabled.


Default is 1MB. You can set it upto 4GB but very high values are not recommend for sites where tables are modified quite frequently.

In WordPress scenario, if you have a multi-author blog, or some other custom post types, then query cache prunes might be frequent. Query cache is invalidated for entire table even if a small value is modified.


Default is 1MB. You can set it upto 4GB. Again very high values are not recommended.

Better optimize your codes to not fetch too much data in one query. If you need 10 rows, add pagination, WHERE conditions rather than fetching all rows from mysql and then using only 10 rows out of them!

InnoDB Buffer & Query Cache

Many references on Internet will tell you that query cache is useless if InnoDB is being used.

Well if you are using InnoDB only and have limited RAM, InnoDB buffer pool without a doubt should get first priority.

If you have some spare RAM, it is highly recommended to use query_cache for WordPress sites. Even for big WordPress sites, most likely percentage of SELECT queries will be much higher as compared to INSERT or UPDATE.

Best way is to monitor query cache efficiency using mysqltuner. Look for a line like:

[OK] Query cache efficiency: 71.5% (8K cached / 11K selects)

100% Query cache efficiency may not be possible for 100% read-only sites but try to stay above 50%.

List of Articles
번호 제목 글쓴이 날짜 조회 수
1592 open new mate terminal WHRIA 2019-08-11 37
» mariaDB cache 설정 WHRIA 2019-08-04 173
1590 crontab 사용법 WHRIA 2019-08-04 64
1589 python with upload WHRIA 2019-07-28 260
1588 yolo custom WHRIA 2019-07-25 68
1587 stuff [2] WHRIA 2019-07-16 50
1586 batch normalization explain WHRIA 2019-07-14 76
1585 결극 senet 이 문제 WHRIA 2019-07-13 19
1584 은행은 믿을 곳이 못 되는군... WHRIA 2019-07-12 49
1583 image clip [1] WHRIA 2019-07-06 78
1582 윈도우 파일 검색 옵션 WHRIA 2019-06-14 50
1581 모든 code 를 python3 로 migration 중 WHRIA 2019-06-08 59
1580 리눅스 samba mount 정리 [1] WHRIA 2019-05-26 135
1579 LG 21 세기 brain hunt - USA file WHRIA 2019-05-23 58
1578 pROC package [3] WHRIA 2019-05-11 90

Powered by Xpress Engine / Designed by Sketchbook

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내

이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소