none
Sincronización entre bases de datos (SQL SERVER) RRS feed

  • Pregunta

  • Hola a todos,

     

    Mi pregunta es la siguiente: Estoy creando una aplicación en Visual Studio 2008 con un motor de base de datos SQL SERVER EXPRESS. Esta aplicación se instala en varios ordenadores y accede a una sola base de datos que se alberga en un servidor. Ahora quiero cambiar esta topología instalando en varios ordenadores tanto la aplicación como una copia de la base de datos. De este modo cada ordenador trabajará independientemente con una copia idéntica de la base de datos. La base de datos se actualiza pocas veces, pero cuando se hace en cualquiera de los ordenadores me gustaría diseñar un algoritmo para la sincronización de todas las bases de datos. De este modo tendría en cada ordenador siempre una copia idéntica de la base de datos. También decir que los ordenadores entre sí siempre van a estar conectados en una misma red mediante un grupo de trabajo. ¿Conocéis alguna forma de sincronizar estas bases de datos mediante SQL SERVER? ¿Cómo podría empezar?

     

    Muchísmoas gracias de antemano,

     

     

    miércoles, 12 de octubre de 2011 11:33

Respuestas

Todas las respuestas

  • Hola.

    Lo que comentas no parece tener sentido. Si los equipos estarán siempre conectados y en la misma red, ¿para qué tener tantos servidores de bases de datos iguales? Usa un único servidor de bases de datos, es infinitamente más sencillo y de hecho, para eso sirven, para servir datos a muchos puntos, y no por ello deben hacer todos los puestos la misma cosa, cada uno puede hacer una cosa diferente. ¿Qué te obliga a plantearte este cambio?

    Existen numerosas formas de sincronizar bases de datos, pero es mucho más fácil no tener que hacerlo.


    Alberto López Grande
    SQL Server MVP
    Visita mi blog en http://qwalgrande.blogspot.es/ Sígueme en twitter en http://twitter.com/qwalgrande

    miércoles, 12 de octubre de 2011 14:36
    Moderador
  • Hola Alberto,

     

    Tienes razón, mi proyecto esta finalizado de esta forma (mediante un único servidor) pero necesito realizar un proyecto donde cada ordenador tenga su propia base de datos y funcione de forma independiente. De ese modo cada cierto tiempo necesitaré sincronizar todas las bases de datos consiguiendo asi que cada ordenador tenga una copia identica.

     

    ¿sabes la forma de poder hacer esto?

     

    Muchas gracias,

    miércoles, 12 de octubre de 2011 14:43
  • Hola. Revisa este video, http://technet.microsoft.com/en-us/sqlserver/Video/dd407782, a ver si te ayuda a lograr lo que quieres.

    Saludos,

     

     


    Guillermo Taylor F.

    IT Pro & Xbox gamer

    My blog

    miércoles, 12 de octubre de 2011 14:52
  • Hola.

    Puedes usar Sync, como te propone Guillermo, o algo más artesanal. Dependerá mucho de cómo te plantees la sincronización, si hay un servidor principal y varios replicados, de cómo lleguen esas modificaciones, etc. Pero sería también importante saber qué te lleva a querer hacerlo así, si es una cuestión de aprendizaje, si existe algún problema para seguir manteniendo la topología anterior, etc.

    Será la forma en que podamos darte una guía más adecuada a tus propósitos y también la forma de que esta conversación le sea útil a alguien más.


    Alberto López Grande
    SQL Server MVP
    Visita mi blog en http://qwalgrande.blogspot.es/ Sígueme en twitter en http://twitter.com/qwalgrande

    miércoles, 12 de octubre de 2011 15:12
    Moderador
  • También hay que tomar en cuenta que los servidores son SQL Express.  ¿Tiene la versión express las capacidades de replicación de base de datos que la versión normal?  Algo para tomar en cuenta.  Yo no lo sé; nunca me he puesto a usar SQL Express.
    Jose R. MCP
    miércoles, 12 de octubre de 2011 15:18
  • Creo que puede ir por donde yo estoy buscando si. Gracias guillermo.

     

    miércoles, 12 de octubre de 2011 15:24
  • Hola Alberto,

     

    Son razones laborales. El tema es que necesito desarrollar algo que no utilice la topología servidor-cliente que es con lo que funciono ahora. Por eso me gustaría que cada ordenador funcionara de forma totalmente independiente. Además quiero que las copias de base de datos que tiene cada maquina sea idéntica a todas las demás, para eso debo sincronizarlas cada cierto tiempo ya que de vez en cuando la base de datos es actualizada por alguna de las máquinas. Si tenéis más ideas me vendrían muy bien, 

     

    Gracias,

     

    miércoles, 12 de octubre de 2011 19:28