Bem, é simples.
Soquete é uma comunicação baseada em arquivo e você não pode acessar o soquete de outra máquina.
Por outro lado, as portas estão abertas para o mundo (depende da configuração) e você pode acessar o mysql de outra máquina usando a combinação host + porta.
Além disso, por mais que eu entenda soquetes, eles são apenas uma combinação de host + porta, apenas no formato de arquivo. Portanto, não vejo nenhum benefício claro no uso de nenhum deles (tanto quanto meu conhecimento).
Embora eu pessoalmente prefira usar host + port, pois meu código se torna mais flexível, pois posso movê-lo para outra máquina, sem alterar muito.
Copie a colagem de uma postagem antiga :
Os soquetes Unix são um pouco mais rápidos, pois você não possui o tcp-overhead. Se você perceber que essa perda de desempenho é uma questão de carga do servidor. Se você não tiver uma carga de servidor muito alta, não a reconhecerá.
Se você usa o Jails (FreeBSD) ou alguma outra tecnologia de virtualização para separar o servidor MySQL, por exemplo, do servidor da Web, geralmente usa a configuração tcp / ip em vez de soquetes. As regras de firewall precisam restringir o acesso.
Você precisa descobrir se o seu sistema está sob carga pesada, de modo que um soquete é obrigatório ou se você pode se concentrar em um bom design de sistema (serviços de separação), então uma solução tcp / ip seria melhor.
Portanto, faça uma resposta longa curta:
Sim, há uma diferença de desempenho, os soquetes são mais rápidos. Se você não está sofrendo muita carga do servidor, basta escolher o que melhor se adapta ao design do seu sistema.