Bene, è semplice
Socket è una comunicazione basata su file e non è possibile accedere al socket da un'altra macchina.
D'altra parte, le porte sono aperte al mondo (dipende dalla configurazione) e puoi accedere a mysql da un'altra macchina usando la combinazione host + porta.
Inoltre, per quanto io capisca i socket, sono solo una combinazione di host + porta, solo nel formato del file. Quindi, non vedo alcun chiaro beneficio nell'utilizzare nessuno di essi (per quanto ne sappia la mia conoscenza).
Personalmente preferisco usare host + port, poiché il mio codice diventa più flessibile, in quanto posso spostarlo sull'altra macchina, senza cambiare molto.
Copia incolla da alcuni vecchi post :
Le prese Unix sono un po 'più veloci in quanto non si ha il tcp-overhead. Se ti rendi conto che questa perdita di prestazioni è una questione di carico del server. Se non hai un carico di server molto elevato, non lo riconoscerai.
Se usi Jails (FreeBSD) o qualche altra tecnologia di virtualizzazione per separare, ad esempio, MySQL-Server dal Webserver, usi spesso l'installazione tcp / ip invece dei socket. Tuttavia, le regole del firewall devono limitare l'accesso.
Devi scoprire se il tuo sistema è sotto carico, quindi un socket è un must o puoi concentrarti su un bel design del sistema (separare i servizi), quindi una soluzione tcp / ip sarebbe migliore.
Quindi fai una lunga risposta breve:
Sì, c'è una differenza di prestazioni, le prese sono più veloci. Se non si verifica un carico elevato del server, è sufficiente scegliere ciò che si adatta meglio al design del sistema.