MySQL upprätthåller en enda uppsättning buffertar för alla databaser. När det gäller prestanda spelar det ingen roll om tabeller finns i olika databaser.
Ditt användningsfall är gränsöverskridande, men verkar vara ett rimligt fall för att aggregera data från separata databaser.
Jag skulle dock vara försiktig med den här arkitekturen. Om dina applikationer börjar dela mer än bara några tabeller, fråga dig själv om dessa applikationer verkligen är distinkta applikationer, eller snarare moduler av samma applikation. I det senare fallet skulle det vara vettigt för mig att ha alla tabeller i en sigle-databas.
Om du är orolig för säkerheten, observera att de flesta åtkomsträttigheter kan beviljas per tabell (eller till och med per kolumn) basis .