Bem vindo ao SOS Designers

Faça o seu cadastro gratuito no Portal SOS Designers e tenha um acesso personalizado.

Empresas

Cadastre gratuitamente suas vagas, crie sua propria Lista de Curriculos Favoritos, e tenha um acesso personalizado.

Usuarios

Cadastre gratuitamente seu curriculo, crie sua propria Lista de Noticias Favoritas e tenha um acesso personalizado.

Área de Empresas | Vagas

Área de acesso a empresas cadastradas que desejam postar vagas de empregos no Portal e pesquisar curriculos.

Cadastre-se gratuitamente
Esqueceu a sua senha?

Área de Usuarios | Curriculos

Área do Usuario que deseja cadastrar seu curriculo e pesquisar vagas.



Cadastre-se gratuitamente
Esqueceu a sua senha?


Redes Sociais
Siga o Portal SOS Designers no Twitter Siga o Portal SOS Designers no Facebook

Mysql


Você está aqui: Home » Mysql » Usando o cache de consultas no MySQL

Usando o cache de consultas no MySQL


Pesquisar no Portal SOS Designers





Tempo Real



Siga o SOS Designers








pub_flash( 'http://www.sosdesigners.com/banners/mktdigital_flash_468x60.swf', 468, 60 ); " alt="Tecnoponta - 468 x 60 - webdesign" />

Qual desenvolvedor não quer ter um bom desempenho em suas consultas MySQL? Pensando nisso é que resolvi escrever esse simples artigo mostrando como otimizar o desempenho das consultas usando o cache de consultas MySQL.

Para começar é preciso alterar algumas linhas no arquivo de configuração do MySQL.


query-cache-type = 1

Onde:

0 – disable/off

1 – enabled/on

2 – on demand


Em seguida altere a linha abaixo para definir o tamanho do cache a ser armazenado, que no exemplo é de 25Mb.


query-cache-size = 25M


Se você utilizar “query-cache-type = 2″ você terá que modificar a instrução SQL da sua query, informando que quer selecionar os resultados que estão em cache, como mostra o exemplo abaixo.

SELECT SQL_CACHE campo1, campo2, campo3 FROM tabela1 WHERE campo1 = "parametro";


Para verificar se o servidor mysql já está permitindo operações com cache de consultas, execute a instrução SQL abaixo:


SHOW VARIABLES LIKE '%query_cache%';


O resultado retornado deve ser:

+——————-+———+
| Variable_name | Value |
+——————-+———+
| have_query_cache | YES |
| query_cache_limit | 1048576 |
| query_cache_size | 20971520 |
| query_cache_type | ON |
+——————-+———+
4 rows in set (0.06 sec)


Visto que o servidor já está operando com o cache de consultas, é hora de ver se as suas consultas já estão sendo armazenadas em cache. Execute uma consulta SQL por 2 vezes e em seguida execute a instrução abaixo:


SHOW STATUS LIKE ‘%qcache%’;


+———+—-+
| Variable_name | Value | | Variable_name | | Valor
+————————-+———-+ +———+—-+
| Qcache_queries_in_cache | 1 | Qcache_queries_in_cache | | 1 |
| Qcache_inserts | 3 | Qcache_inserts | | 3 |
| Qcache_hits | 0 | Qcache_hits | | 0 |
| Qcache_lowmem_prunes | 0 | Qcache_lowmem_prunes | | 0 |
| Qcache_not_cached | 2 | | Qcache_not_cached | 2 |
| Qcache_free_memory | 20947592 | | | Qcache_free_memory 20947592 |
| Qcache_free_blocks | 1 | Qcache_free_blocks | | 1 |
| Qcache_total_blocks | 4 | Qcache_total_blocks | | 4 |
+————————-+———-+ +———+—-+


A primeira consulta que você executar vai demorar mais que a segunda, pois ela ainda não está armazenada no cache, já na segunda vez que executar, o tempo será menor, pois o MySQL irá pegar a consulta que está no cache.

Sobre o Colunista:

Jonathan Lamim


Profissão: Web Developer

Descrição: Jonathan Lamim trabalha com desenvolvimento web/desktop desde 2005, porém abandonou o desenvolvimento desktop em 2006 para se dedicar somente ao desenvolvimento web. Atualmente é programador da Fivecom - Soluções em web 2.0, editor do blog jlamim.com.br e graduando em Sistemas de Informação na UNISA.

Deixe seu comentário:





© Copyright 2002-2018
Portal SOS Designers
Webmaster: Luiz Antonio Bovi