2011-06-05 13 views
6

Estoy trabajando en la aplicación SaaS que usa una base de datos por modelo de cliente. También tiene una base de datos común de "cuentas" donde se guarda cierta información básica sobre la cuenta y también proporciona funcionalidad de inicio de sesión.Un usuario por base de datos contra usuario único para todas las bases de datos

Mi pregunta: ¿vale la pena crear un nuevo usuario de base de datos para cada base de datos que tenga permisos solo en esa base de datos o un usuario de base de datos con acceso a todas las bases de datos del cliente tenga más sentido ("account\_%. *")?

+0

[¿Qué es SaaS?] (Http://izlooite.blogspot.com/2009/05/what-is-saas.html) –

Respuesta

4

Si la seguridad es la preocupación, el usuario por base de datos es un camino a seguir.

2

Crearía nuevas bases de datos, pero depende. Básicamente lo que flota su barco :)

una base de datos por usuario:
+ seguridad es más fácil
+ asíncrono solicitudes paralelas (si el servidor puede manejar)
- un poco más pesado en el disco

una base de datos :
+ un archivo de manejar en lugar de un grupo (si eso es incluso un +)
+ poco más eficiente del espacio
- reducir la velocidad cuando alcanza grandes cantidades de datos
- no c simultánea onnections lo que significa que una solicitud sql pesada de un usuario será dos todos los demás

+0

Gracias por su respuesta, pero ya estamos usando una base de datos por cliente. Mi pregunta era, no es que tengamos muchas bases de datos de clientes, si deberíamos crear un solo usuario de base de datos que tenga acceso a todas estas bases de datos, o crear un nuevo usuario de base de datos para cada base de datos de clientes. – arnaslu

+0

@steelaz oops, mi mal :) –

2

Es fácil pensar en crear todas esas bases de datos.

Pero también por favor piense en cómo va a mantenerlos todos a la larga.

  • ¿Usted tendrá que ejecutar su base de datos secuencias de comandos en un número cada vez mayor de bases de datos?
  • Tendrá una secuencia de comandos para ejecutar cuando agregue la base de datos de un nuevo cliente, y deberá actualizarse continuamente.

No estoy diciendo que no cree varias bases de datos. Solo sugiero que pienses en las consecuencias.

Cuestiones relacionadas