Usando EXPLAIN para otimizar a indexação

Publicado em: 26/02/2008  |  MySQL  |  Visualizações: 799  |  0 Comentário(s)
Ás vezes, não é fácil identificar quais colunas de uma tabela de índice, mesmo que você tenha identificado queries lentas na sua aplicação. O EXPLAIN é projetado para auxiliar no processo de otimização consulta, fornecendo uma visão sobre a forma como o otimizador MySQL lida com uma consulta específica.

Para analisar uma consulta, segue a consulta com EXPLAIN a palavra-chave:

EXPLAIN
SELECT film.title
   FROM actor, film, film_actor
  WHERE actor.actor_id = film_actor.actor_id
    AND film.film_id = film_actor.film_id
    AND actor.last_name = 'Walken'

O retorno:

*************************** 1. row ***************************
           id: 1
  select_type: SIMPLE
        table: actor
         type: ALL
possible_keys: PRIMARY
          key: NULL
      key_len: NULL
          ref: NULL
         rows: 200
        Extra: Using where
*************************** 2. row ***************************
           id: 1
  select_type: SIMPLE
        table: film_actor
         type: ref
possible_keys: PRIMARY
          key: PRIMARY
      key_len: 4
          ref: sakila.actor.actor_id
         rows: 26
        Extra: Using index
*************************** 3. row ***************************
           id: 1
  select_type: SIMPLE
        table: film
         type: eq_ref
possible_keys: PRIMARY
          key: PRIMARY
      key_len: 4
          ref: sakila.film_actor.film_id
         rows: 1
        Extra:
3 rows in set (0.00 sec)


O EXPLAIN retorna uma linha de informação para cada tabela utilizada na instrução SELECT. As tabelas são listadas na ordem em que o MySQL lê os dados, durante o processamento da consulta.

O principal é ver onde estão ans linhas fundamentais onda a chave da coluna é NULL, onde o tipo de coluna é range, index, ou ALL, ou quando a coluna extra contém: "Using filesort or Using temporary". Essas consultas devem ser cuidadosamente examinadas para uma correta utilização dos índices que geralmente indicam que o índice não está sendo usado.
Referência: dev.mysql.com
compartilhe
  Dica: Confira todo nosso conteúdo de MySQL no site.
Links patrocinados
Últimos artigos do editor

design.jpg 13º EWD: Um evento para n.
No dia 11 de outubro de 2008.
gerencia.jpg A falta de estrutura dos .
Por que sites e sistemas são.
cel.jpg Tudo sobre o iPhone 3G no.
iPhone é um smartphone desen.
internet.jpg Como assinar um RSS
RSS é um formato de distribu.
design.jpg Quando reciclagem digital.
Vejam o que vocês podem faze.
tecnologia.jpg Energia elétrica via Wire.
Recentemente a Intel introdu.
Opinião do leitor:
0 Comentário(s)
Acesso restrito
Destaques
Peixe Grande 2008 Peixe Grande 2008
O Oficina da Net está este ano participando do Projeto Peixe Grande 2008 na categoria de Blog. Ajude-nos vote!
13º Encontro de Webdesgin 13º Encontro de Webdesgin
Cobertura do evento - 13º Encontro de Webdesgin na cidade de Porto Alegre
Galaxy 7 - O Smartphone da Asus Galaxy 7 - O Smartphone da Asus
Imagens e especulações sobre o Smartphone da empresa foram publicadas na internet
Links patrocinados
Autor
Tags
Artigos Relacionados
Novos Artigos
Notícias Relacionados
Assine nosso RSS

© 2005 - 2008 - Oficina da Net - v 3.0 - É proibida a reprodução parcial ou completa do conteúdo deste site sem autorização por escrito. Resolução adequada: 1024x768px.