En la aplicación que estoy escribiendo, separé el usuario y las bases de datos principales hace mucho tiempo por "razones de seguridad". Sin embargo, cada vez es más difícil justificar la sobrecarga y la dificultad de administrar dicha configuración.
Para algunos detalles rápidos, esta es una aplicación web PHP. Hay 2 conexiones mysqli separadas, una para cada base de datos. Cada base de datos tiene su propio usuario con sus propias credenciales. Esto significa que no puede acceder a la base de datos principal con las credenciales de la base de datos del usuario
En teoría, esto evita daños por inyección de SQL, separación de preocupaciones, seguridad a través de la oscuridad, etc. Sin embargo, en una relación costos / recompensas, pierdo la interoperabilidad fácil con la tabla de usuario y el resto de la base de datos, por ejemplo, las uniones.
¿Existen razones más concretas para que una configuración de base de datos de este tipo tenga sentido? ¿Es esto incluso común?