Vou falar um pouco sobre esse simples, mas poderoso recurso de Banco de Dados, o Índice(index)

Uma das coisas mais importantes na hora de modelar seu banco de dados, é pensar na velocidade das consultas, os índices servem exatamente para isso, aumentar a performance das pesquisas no seu banco.
Você pode adicionar índices nos campos mais usados nas buscas da sua tabela, com isso, na hora de fazer uma busca, no lugar do SGDB procurar por todos os registros, ele cria atalhos passando por menos registros para chegar ao seu resultado.
Cuidado para não criar índices em campos desnecessários pois eles aumentam o tamanho do seu banco.

Para criar um índice(index) é muito simples:

CREATE INDEX nome_da_index ON nome_da_tabela(campo(qtd_caracteres));

Segue um exemplo de como criar uma index em uma tabela de clientes:

CREATE INDEX nome_cliente ON clientes(nome(4));

nome_cliente => Nome da Index
clientes => Nome da Tabela
nome => Nome da coluna
4 => Quantidade de caracteres indexados

OBS: Toda PRIMARY KEY e FOREIGN_KEY por padrão no MySQL, é uma index, por isso não é necessário criar uma index para colunas desse tipo.