T086ѧϰ�� | վ��ѧԺ | �����ĵ� | ���� | Ъ���� | IP��ַ��ѯ | �������� | ���ջ��� | �����ֵ� | ���ù��� | ������Ϣ��ѯ

MySQL���ٲ�ѯ�ٶȵĶ�����������ѯ����

�� mysqlops ����ʱ�䣺2013-07-24 | ���壺�� �� С��
[����]�������� �����ѻ�ͬ��̸��mysql��ѯ���湦�ܵ�ʱ�򣬸���ϲ����Query Cache������֦���Ƿdz�Ӫ���Ķ���������һ���Գ�̫���ˣ������׵����ϻ�������Ѫ����Ȼ�����ر�ǡ���ı����������кܶ����Ƶĵط�������Query C...

��������

    �����ѻ�ͬ��̸��mysql��ѯ���湦�ܵ�ʱ�򣬸���ϲ����Query Cache������֦���Ƿdz�Ӫ���Ķ���������һ���Գ�̫���ˣ������׵����ϻ�������Ѫ����Ȼ�����ر�ǡ���ı����������кܶ����Ƶĵط�������Query Cache����������ҵ�񳡾���Ҳ�����������ݿ���Ʒ��������ѯ������ִ�мƻ�����Ϣ������ֱ�ӻ�����ѯ�����ļ�¼���Ͷ�Ӧ��SQL���䡣���ľ͸����ҽ����²�ѯ����������֪ʶ��ϣ����������������ȷ��ʹ��Query Cache��������������

��mysql��ѯ�����������ǶȽ�����ϸ�ķ�����Query Cache�Ĺ���ԭ�����������á�����ά���������жϲ�ѯ���������ܡ��ʺϵ�ҵ�񳡾�������

 ����ԭ��

��ѯ�����Ĺ���ԭ���������Ͽ����ö��仰������

l  ����SELECT������Ԥ������ѯ��ע�ͣ�5.1.17��ʼ֧�֣��Ľ�������SQL���䣻

l  �µ�SELECT������Ԥ������ѯ���䣬��ȥ��ѯ���棬�ж��Ƿ����ڿ��õļ�¼�����жϱ�׼���뻺����SQL���䣬�Ƿ���ȫһ�������ִ�Сд��

��ѯ������ʲô���IJ�ѯ���䣬�޷���������¼�������������¼��ࣺ

l  ��ѯ�����м���SQL_NO_CACHE������

l  ��ѯ�����к��л���ֵ�ĺ����������Զ��庯�����磺CURDATE()��GET_LOCK()��RAND()��CONVERT_TZ�ȣ�

l  ��ϵͳ���ݿ��IJ�ѯ��mysql��information_schema

l  ��ѯ������ʹ��SESSION�����������洢�����еľֲ�������

l  ��ѯ������ʹ����LOCK  IN SHARE MODE��FOR UPDATE������

l  ��ѯ����������SELECT ��INTO �������ݵ����䣻

l  �������뼶��Ϊ��Serializable�����£����в�ѯ���䶼���ܻ��棻

l  ����ʱ���IJ�ѯ������

l  ���ھ�����Ϣ�IJ�ѯ���䣻

l  ���漰�κα�����ͼ�IJ�ѯ���䣻

l  ij�û�ֻ���м���Ȩ�޵IJ�ѯ���䣻

��ѯ��������ȱ�㣺

l  ����Ҫ��SQL�������κν�����ִ�У���Ȼ�﷨��������ͨ�����ȣ�ֱ�Ӵ�Query  Cache�л��ò�ѯ������

l  ��ѯ�������жϹ��򣬲������ܣ�Ҳ�������˲�ѯ������ʹ���ż���������Ч�ʣ�

l  Query Cache�����ã������Ӽ���������Query Cache�м�¼���Ŀ��������Ҵ���SQL���仺���ı���ÿһ�ű���ֻ��һ����Ӧ��ȫ������

 ����

        �Ƿ�����mysql��ѯ���棬����ͨ��2��������query_cache_type��query_cache_size�������κ�һ����������Ϊ0����ζ�Źرղ�ѯ���湦�ܣ�������ȷ�������Ƽ�query_cache_type=0��

l  query_cache_type

ֵ��Ϊ��0 -�C �����ò�ѯ���棻

ֵ��Ϊ��1 -�C ���ò�ѯ���棬ֻҪ���ϲ�ѯ������Ҫ�󣬿ͻ��˵IJ�ѯ�����ͼ�¼�������Ի����������������ͻ���ʹ�ã�

ֵ��Ϊ��2 -�C ���ò�ѯ���棬ֻҪ��ѯ�����������˲�����SQL_CACHE���ҷ��ϲ�ѯ������Ҫ�󣬿ͻ��˵IJ�ѯ�����ͼ�¼���������Ի����������������ͻ���ʹ�ã�

l  query_cache_size

��������query_cache_size��ֵ��СΪ40K����������ֵ�����Լ�����Ϊ�����ƣ�ʵ������������Ӧ�þ����������ǣ���ֵ������Խ�󣬲�ѯ�����������ʾ�Խ�ߣ�Ҳ���ǶԷ����������½����״󣬷������ܵ����������ĺô����������ӷ������ĸ��أ����ڸ��������ã��������½ڽ������Ƽ�����Ϊ��64M��

l  query_cache_limit

���Ʋ�ѯ�����������ܻ����IJ�ѯ��¼�������Ա���һ�����IJ�ѯ��¼��ռȥ�������ڴ����򣬶�������С��ѯ��¼��������Ч�Ļ�����¼����Ĭ������Ϊ1M�������޸�Ϊ16k~1024k֮����ֵ�򣬲�������Ҫ���Ǹ����Լ�Ӧ�õ�ʵ���������з�����Ԥ�������ã�

l  query_cache_min_res_unit

���ò�ѯ���������ڴ�����С��λ��Ҫ�ʵ������ô˲�������������Ϊ�����ڴ����������ͷ����������������ù������ܵ����ڴ���Ƭ��ֵ������Ĭ��ֵΪ4K����������Ϊ1k~16K

l  query_cache_wlock_invalidate

�ò�����Ҫ�漰MyISAM���棬��һ���ͻ��˶�ij������д���������ͻ��˷����IJ�ѯ�������Ҳ�ѯ�����ж�Ӧ�IJ�ѯ������¼���Ƿ�����ֱ�Ӷ�ȡ��ѯ�����ļ�¼����Ϣ�����ǵȴ�д�����ͷš�Ĭ������Ϊ0��Ҳ��������

 ά��

l  ��ѯ����������Ƭ����

    ��ѯ����ʹ��һ��ʱ��֮����һ�㶼�������ڴ���Ƭ��Ϊ����Ҫ��������״ֵ̬�����Ҷ��ڽ����ڴ���Ƭ����������Ƭ�����IJ������䣺FLUSH QUERY CACHE��

l  ���ղ�ѯ����������

��Щ�����������ܴ�����ѯ���棬�����л�������Ϣ���գ��Ա��ⴥ������Ҫ��ʱ����֪���������������ɴ�����ѯ��������ȫ�����յ����

(1).     RESET QUERY CACHE��

(2).     FLUSH TABLES��

 ���ܼ���

l  ��Ƭ��

��ѯ�����ڴ���Ƭ��=Qcache_free_blocks / Qcache_total_blocks * 100%

l  ������

��ѯ����������=Qcache_hits/(Qcache_hits + Qcache_inserts)  * 100%

l  �ڴ�ʹ����

��ѯ�����ڴ�ʹ����=(query_cache_size �C Qcache_free_memory) / query_cache_size * 100%

l  Qcache_lowmem_prunes

�ò���ֵ���ڼ�����ѯ���������ڴ���С�����Ƿ����зdz��ؼ��Ե����ã�������������Ϊ����ѯ����ȥ���ڴ治�������ò��Ӳ�ѯ������ɾ���IJ�ѯ������Ϣ��ɾ���㷨ΪLRU��

l  query_cache_min_res_unit

    �ڴ�����������С��Ԫ�dz���Ҫ�����ù������������ڴ���Ƭ�ĸ��ʷ�����̫С�ֿ��������ڴ����������ģ�Ϊ����ϵͳƽ������һ���׶��Ժ󣬿ɲο���ʽ�ļ���ֵ��

��ѯ������С�ڴ��� = (query_cache_size �C Qcache_free_memory) / Qcache_queries_in_cache

l  query_cache_size

���������ж�query_cache_size�Ƿ����ù�С����ȻҲֻ����Ԥ����һ��ֵ���Ƽ�Ϊ��32M~128M֮�������򣬴�ϵͳƽ������һ��ʱ���Σ�����1�ܣ������ҹ۲������ڵ�����״ֵ̬��

(1).     Qcache_lowmem_prunes��

(2).     �����ʣ�

(3).     �ڴ�ʹ���ʣ�

    ������ƽ�������ڼ��ػ��õ���Ϣ��Ϊ�����ʸ���80%���ڴ�ʹ���ʳ���80%������Qcache_lowmem_prunes��ֵ��ͣ�����ӣ��������ӵ���ֵ���ϴ�����˵������Ϊ��ѯ�������������ڴ���С�������ʵ������Ӳ�ѯ���������ڴ���С��

    ��������ƽ�������ڼ��ػ��õ���Ϣ��Ϊ�����ʵ���40%��Qcache_lowmem_prunes��ֵҲ����һ��ƽ��״̬����˵�����ǵIJ�ѯ���������ڴ����ù��󣬻���˵ҵ�񳡾��ظ�ִ��һ����ѯ�����ĸ��ʵͣ�ͬʱ�������⵽һ������freeing items����ô���뿼�ǰѲ�ѯ�������ڴ���С�������رղ�ѯ���湦�ܣ�

 ҵ�񳡾�

ͨ��������֪ʶ�����ͷ�������������֪����ѯ���������¼��㣺

l  ��ѯ�����ܹ������Ѿ����ڻ����IJ�ѯ�������ٶȣ����Բ������½�����ִ�ж�������ȷ�ü�¼����

l  ��ѯ�������漰�ı���ÿһ������������һ�������Լ���ȫ�����ʵ�����

l  ��������DDL��FLUSH TABLES �����Ʋ������������ر��IJ�ѯ������Ϣ���գ�

l  ��������DML���������������ж��Ƿ���Ҫ�������ز�ѯ�����ļ�¼��Ϣ�������ɱ����س������ȴ��¼���

l  ��ѯ�������ڴ��������⣬���ɱ����ز���һЩ�ڴ���Ƭ��

l  ��ѯ�������Ƿ���һ���IJ�ѯ���䣬Ҫ���dz����̣����һ������ܣ�

    ���������»ص����ڵ��ص��ϣ���ѯ�����ʺ�ʲô����ҵ�񳡾��أ�ֻҪ�������˲�ѯ������������ȱ�㣬�Ͳ������г�����ҵ�񳡾�Ҫ����

l  ����ϵͳ�Զ�Ϊ����ҵ�񣬱����Ż��͡������ࡢ�����͡���̳����վ��

l  ��ѯ���������ı����󣬷�Ƶ���ؽ���DML����������ʹ��query_cache_type=2ģʽ��Ȼ��SQL������SQL_CACHE����ָ����

ԭ�ģ�http://www.mysqlops.com/2011/08/10/mysql-query-cache.html

  • ת����ע����Դ��ITѧϰ�� ��ַ��http://www.t086.com/ �����������Ƽ�������
  • �ر������� ��վ�������ر�������ֹת�ص�ר�������������¿�������ת�أ���������ע��������ԭʼ���ߡ����°�Ȩ������ԭʼ�������С����ڱ���վת�����µĸ��˺���վ�����DZ�ʾ������л�⡣������վת�ص������а�Ȩ��������ϵ���ǣ����ǻᾡ�����Ը�����
������ѯ Health Check Gulangyu
© 2017 T086ѧϰ�� - T086.com(ԭitlearner.com)
RunTime:5.86ms QueryTime:7