* “Mysql pruning” é responsável por analisar a cláusula WHERE, e se, a tabela for particionada, ele determinará quais partições ler e quais descartar para determinada consulta (SELECT).
Observe que o otimizador percebeu que só precisará usar as partições p3, p4 e p5 para encontrar as linhas solicitadas pelo SELECT acima ( veja o conteúdo da coluna partitions).
Agora, deixe-me explicar porque eu removi a chave primária. Existe uma regra sobre o uso de restrições (constraints) de unicidade (primary keys) com particionamento. A resposta é curta e direta: você não pode ter uma restrição exclusiva (primary key) em uma coluna na qual não será usada no particionamento. A razão disto é que quando você inserir um registro, a singularidade (PK) deve ser verificada, e não queremos que ocorra uma busca através de cada partição para verificar a singularidade (validação da PK). Pois isto, seria muito dispendioso. Os índices são locais para cada partição (índices globais devem ser implementadas no futuro). Então você pode ter apenas uma restrição (constraint) exclusiva se todas as colunas na restrição (PK) forem utilizados na expressão de particionamento.