Ver Mensaje Individual
  #1  
Antiguo 15-05-2013
Avatar de gluglu
[gluglu] gluglu is offline
Miembro Premium
 
Registrado: sep 2004
Ubicación: Málaga - España
Posts: 1.455
Reputación: 21
gluglu Va por buen camino
¿Dónde colocar la Base de Datos?

Hola a todos !

Puede ser que la pregunta resulte muy básica, pero realmente no se me había planteado esta cuestión hasta ahora.

Después de trabajar con mi aplicación durante años en clientes, por fin nos vamos a poner a realizar el instalador ! Hasta ahora la instalación siempre se hacía manual.

Utilizo Firebird (actualmente 2.5) y la aplicación es local y se instala en cada uno de los ordenadores que va a ejecutar la aplicación.

Ahora me surge donde y cómo grabar la base de datos. Hasta ahora siempre la había colocado en una carpeta de una unidad de disco duro (C:, D: o la que fuera), y en una carpeta Unidad:\MiAplicación\Data en el servidor que ejecutase Firebird. Compartía dicha carpeta y listo, desde los demás ordenadores (junto con un fichero INI) se localizaba y se accedía a dicha carpeta.

De la misma manera, en cada puesto de trabajo diferente (que no fuera el 'servidor' donde se ejecuta Firebird), creaba una carpeta Unidad:\MiAplicación y ahí grababa el EXE principal junto con todos los archivos adicionales (INI, DLL's, etc), y en el INI tenía puesta la ruta al nombre de servidor y carpeta correspondiente.

Ahora, (para hacerlo bien !!), quiero colocar la aplicación en \Archivos de Programas y no sé cuál es la mejor ubicación para los datos.

En principio, la base de datos puede crecer bastante (llegando a superar el Giga o más) y por la tanto tendría sentido que el usuario decidiera no colocarla necesariamente en C:

Si coloco la BBDD en %ProgramData% debería ser siempre la unidad principal donde está instalado Windows, lo cual, como indica antes, pudiera ser 'inconveniente'.

Por otro lado, si quiero en algún momento obtener alguna ruta de dónde se encuentra la base de datos, si fuera en una carpeta o localización diferente, si esa carpeta o localización no estuviera compartida, no podría acceder a dicha información desde otro ordenador. Por otro lado, tengo muchos clientes que tienen los ordenadores con códigos de acceso de usuarios y no siempre podré obtener la información que pido (no estoy hablando de acceder al propio contenido de la base de datos a través de Firebird) si no conociera ciertas credenciales de usuario.

Por ello es lo que os pido consejo de cuál sería la mejor ubicación para la base de datos y no tener que colocarla en una carpeta 'tan' visible o accesible como Unidad:\MiAplicación\Data

Gracias por adelantado y saludos.
__________________
Piensa siempre en positivo !
Responder Con Cita