• Lunes 18 de Noviembre de 2024, 03:41

Autor Tema:  Base De Datos  (Leído 1452 veces)

martin campos quintero

  • Miembro MUY activo
  • ***
  • Mensajes: 113
  • Nacionalidad: 00
    • Ver Perfil
Base De Datos
« en: Sábado 9 de Julio de 2005, 12:01 »
0
Hola a todos, miren pues el problema que tengo ahora es que quiero juntar dos bases de datos en una tercera base de datos.

Lo que pasa es que tengo un servidor donde se encuentra la base de datos y un servidor alterno donde se encuentra una copia de la base de datos, y este servidor está activo siempre, y cuando se cae algún servidor el otro queda funcionando, el problema es para actualizar la base de datos en el servidor que entra.

Supongamos


BD(Servidor primario) _________ BD(Servidor alterno)
n_ctrl.......nombre..hora_ent ____ n_ctrl.......nombre.hora_ent
01560154.Martín....10:00 _______ 01560154.Martín...10:00
01560123 José.......14:25 _______ 01560123.José.....14:25
01560253 Antonio...15:00 _______ 01560111.María...16:13

Como vemos las dos bases de datos estaban funcionando hasta las 14:25 porque los dos primeros registros concuerdan, pero el tercer registro es diferente, esto quiere decir que el servidor alterno se cayó entre las 14:26 y las 14:59 y el servidor primario siguió funcionando y registró a una persona con n_ctrol 01560253 a las 15:00 horas.

Pero luego vemos que el servidor primario se cayó entre las 15:01 y las 16:12 y unos minutos después entró el servidor alterno, entonces el servidor alterno registró a una persona con n_ctrl 01560111 a las 16:13 horas.

Ahora tenemos que el servidor primario se repone, y se conecta primeramente al servidor alterno para obtener su Base de datos, a lo que el servidor alterno le manda su base de datos. Entonces ahora el servidor primario tiene las dos bases de datos completas

BD(Servidor primario) _________ BD(primario)
n_ctrl.......nombre..hora_ent ____ n_ctrl.......nombre.hora_ent
01560154.Martín....10:00 _______ 01560154.Martín...10:00
01560123 José.......14:25 _______ 01560123.José.....14:25
01560253 Antonio...15:00 _______ 01560111.María...16:13

La pregunta es como juntar esas dos, para que solo queden en una tercera base de datos los registros necesarios, de la siguiente forma:

BD(generada)
n_ctrl       nombre Hora_ent
01560154 Martín     10:00
01560123 José        14:25
01560253 Antonio   15:00
01560111 María       16:13

Existe alguna funcion en sql para hacer eso?, porque si lo hago registro por registro, esto es mediante un ciclo, tardaría mucho si son arriba de 3000 registros


Muchas gracias de antemano porque sé que me van a dar muy buenas respuestas
 ;)

Jose Arriagada

  • Miembro MUY activo
  • ***
  • Mensajes: 373
    • Ver Perfil
Re: Base De Datos
« Respuesta #1 en: Lunes 11 de Julio de 2005, 23:11 »
0
Un proceso de la naturaleza que explicas, es posible, pero se supone que el gestion datos lo debe solucionar y no tu, por medio de alguna consulta SQL.

Por otra parte, ¿por que se cae el servidor primario?, que tengas que tener un servidor secundario para trabajar. Hay algo dentro de tu configuracion de trabajo que no esta bien. Un servidor NUNCA debiera caerse.