Em geral, quando você desejar tornar uma consulta lenta
        SELECT ... WHERE mais rápida, a primeira
        coisa que deve ser conferida é se você pode ou não adicionar
        um índice. See Secção 5.4.3, “Como o MySQL Utiliza Índices”. Todas as
        referências entre diferentes tabelas devem ser feitas
        normalmente com índices. Você pode utilizar o comando
        EXPLAIN para determinas quais índices são
        usados para uma SELECT. See
        Secção 5.2.1, “Sintaxe de EXPLAIN (Obter informações sobre uma
        SELECT)”.
      
Algumas dicas gerais:
            Para ajudar o MySQL a otimizar melhor as consultas, execute
            myisamchk --analyze em uma tabela depois
            dela ter sido carregada com dados relevantes. Isto atualiza
            um valor para cada parte do índice que indica o número
            médio de registros que tem o mesmo valor. (Para índices
            únicos, isto é sempre 1, é claro). O MySQL usará isto
            para decidir qual índice escolher quando você conectar
            duas tabelas utilizando uma 'expressão não constante'. Os
            resultados de analyze podem ser
            conferidos utilizando SHOW INDEX FROM
            nome_tabela e examindo a coluna
            Cardinality.
          
            Para ordenar um índice e dados de acordo com um índice,
            utilize myisamchk --sort-index
            --sort-records=1 (se você deseja ordenar pelo
            índice 1). Se você possui um índice unico no qual deseja
            ler todos registros na ordem do índice, esta é uma boa
            forma para torná-lo mais rápido. Perceba entretanto, que
            esta ordenação não foi escrita de maneira otimizada e
            levará muito tempo em tabelas grandes!
          
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.

