![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
||||
|
||||
Si no te quieres complicar mucho la vida, puedes utilizar el IB-Replicator de la misma IB-Phoenix (la empresa que está por detrás, apoyando Firebird).
http://www.ibphoenix.com/main.nfs?page=ibp_replicator Esta es la opción más sencilla, después puedes optar por un replicador open-source como el FBReplicator http://www.meta.com.au/index.php?opt...d=23&Itemid=30 Y finalmente puedes crearte tu propio Replicador (como hemos hecho muchos), por lo que si quieres hacerlo te podemos decir por donde empezar. Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). |
#2
|
||||
|
||||
La replicación es una de las características en donde si MySQL tiene mejor soporte que FB (una de cal...). En MySQL se instala y configura con relativa facilidad dentro del mismo servidor sin utilizar programas adicionales, requiere poquísimos recursos y dá la posibilidad de hacer clusters. Lo único malo es que no permite replicación de dos vías, solo Maestro-Esclavo pero aún así es muy bueno.
__________________
AKA "El animalito" ||Cordobés a mucha honra|| |
#3
|
|||
|
|||
Cita:
|
#4
|
||||
|
||||
Cita:
Con los enlaces que ha indicado guillotmarc he montado (por probar) una réplica de base de datos en menos de 5 minutos. Con software libre y gratis ![]()
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#5
|
||||
|
||||
Cita:
Naturalmente MS-SQL es una gran base de datos (por algo tiene detrás la enorme inversión que hace en ella Microsoft), pero Firebird tiene sus propias ventajas sobre MS-SQL (y no solamente el precio). Si ya te ha parecido enrevesado preparar la replicación con IB-Replicator, va a sorprenderte todo el montaje que hay que hacer para montarlo en MS-SQL. La verdad es que el tema de la Replicación es muy sencillo, como ha comentado Casimiro en 5 minutos lo puedes tener en marcha con FBReplicator (donde encima tienes todo el código fuente en Delphi para hacer cualquier adaptación que pueda ser necesaria). Hay que tener varias cosas en cuenta cuando montas un sistema en replicación. La más importante es que tienes que evitar la duplicación de códigos en la clave primaria. Es decir que si en un sitio entras un cliente nuevo con el código 912, en el otro no puedes entrar otro cliente con el mismo código, puesto que cuando repliques los datos un cliente va a sobreescribirse sobre el otro. Tienes dos enfoques para evitarlo. Uno es no utilizar para nada enteros como clave primaria, y pasar a utilizar UUID, que se generan al azar y tienen una probabilidad infinisimal de repetición. La otra solución es segmentar las claves primarias, por ejemplo con una ubicación empezando a generar códigos desde el 10000 (10001, 10002, 10003, ....) y la otro desde 20000 (20001, 20002, ...), etc. ... No vaciles en preguntar cualquier duda. Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). Última edición por guillotmarc fecha: 17-03-2010 a las 12:21:20. |
#6
|
||||
|
||||
Cita:
He visto que el servicio estaba funcionando y poco más. Ha sido sólo por probar, ya que este sistema en windows no me sirve porque todas nuestras instalaciones van con servidores linux. Aunque he visto que el IBreplicator de ibphoenix sí tiene una versión para linux, no lo he probado. De todas formas estos sistemas de replicación por internet no son muy viables, salvo que la línea tenga un gran ancho de banda y la base de datos tenga pocos movimientos. Estos sistemas de réplicas están ideados para una red local, (corregidme si me equivoco), para el caso de que exista un problema con el servidor principal, así siempre hay una réplica en otro servidor y poder seguir trabajando. Aunque para eso existe el sistema "shadow" de firebird que es muy simple de implementar y nos sirve lo mismo. Para lo que quiere rmora, tener dos bases distintas en central y sucursal y que se autoactualicen automáticamente ambas (se repliquen ![]() ![]() Creo que le interesa más montar un cliente de terminal como ultravnc (al estilo de terminal server) y conectar a la central, así todos están trabajando con la misma base de datos. Y en la central, donde está la base de datos, tener sistemas de replicación como se desee, discos externos, otro servidor, etc.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#7
|
||||
|
||||
Hola Casimiro.
Cita:
Cita:
Nuestro grupo más grande tiene 15 tiendas en replicación constante. Pero Xavi (cadetill) trabajó en el sistema de replicación en Firebird de una cadena farmacéutica con centenares de sucursales replicando (básicamente el sistema es el mismo). Cita:
Aunque la verdad es que nunca he utilizado una Replicación con conexión directa como hacen en el FBReplicator. Mi motor de replicación utiliza paquetes de datos intermedios. Cada x minutos miro los Logs de replicación (tablas mantenidas mediante triggers que informan de los cambios que se hacen en la base de datos) y empaqueto todos estos cambios en un archivo XML comprimido que subo a un Servidor FTP. De la misma forma, compruebo que en el Servidor FTP no haya paquetes que me hayan subido para esta tienda, en cuyo caso los descargo, los descomprimo y los ingreso en la base de datos. Esto te permite seguir replicando incluso cuando no tienes conexiones permanentes a Internet (por ejemplo un comercial con un portatil). Cuando puede conectar a Internet, sube todos sus cambios y descarga todo lo que han subido las otras ubicaciones. Además utilizas mucho menos tráfico de Internet, puesto que preparas localmente todos los datos y los envías de golpe al Servidor FTP comprimidos, en cambio en el sistema del FBReplicator los datos se intercambian directamente desde un Replicador al Servidor Firebird remoto, mediante una larga serie de consultas, y todos sabemos que el protocolo de Firebird hace bastantes viajes de ida y vuelta para cada consulta a un servidor, por lo que es lento al correr sobre Internet (que tiene una gran latencia entre cada ida y vuelta). Aunque la verdad es que esto es complicarse un poco la vida, y el sistema del FBReplicator también debería funcionar perfectamente. Suelen poner Terminal Server en estos casos. Pero no me gusta, la verdad es que se nota el retraso de no estar trabajando en local, y además si se corta Internet por cualquier tontería no puedes trabajar (y si cortan Internet en la central, ya no trabaja nadie). En cambio en un sistema de replicación, la gente sigue trabajando (con datos sin actualizar) y cuando vuelva la conexión a Internet se pasarán todos los datos introducidos durante ese intervalo sin conexión.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). Última edición por guillotmarc fecha: 17-03-2010 a las 13:36:27. |
#8
|
||||
|
||||
Muy interesante lo que me cuentas, aunque, como siempre, cada caso es un mundo
![]() El caso que cuentas de cadetill y supongo que el tuyo, son muy particulares, por ejemplo el de las farmacias sólo será sincronizar las medicinas que se venden y hacer pedidos de las que necesiten. Las farmacias no llevan (normalmente ) clientes, almacenes, bancos, etc. O sea, que seguramente la replicación es sólo de algunas tablas porque las otras no serán necesarias o tendrán un movimiento mínimo (supongo). En mi caso es más complejo porque sería actualizar/replicar toda la base de datos... que ahora mismo tiene 263 tablas y además campos blob con imágenes y documentos muy variados. Algunos de nuestros clientes han pasado los 20 Gb y eso por internet... :S En realidad lo hemos probado con un cluster Heartbeat por internet y era morirse de pena (en red local va bien), pero si pudiésemos limitarnos a sólamente los artículos, clientes y poco más... entonces sí sería una buena opción la replicación que comentas. En nuestro caso ni los representantes pueden vender con precios "de ayer", necesitan tener el precio y el stok "ahora mismo", como si estuviesen en la central, así que también llevan conexión a la central y trabajan al igual que las sucursales, todos contra el servidor central. De todas formas, está muy interesante el sistema de replicación que comentas para según que negocios.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#9
|
|||
|
|||
Cita:
Buscando un replicador para mssql o mysql di con el foro y me gusto tu idea del replicador hecho en base a triggers. Mencionas que puedes ayudar para programar uno similiar asi que me atrevo a pedirte si podrias darme mas detalles y puntos a tomar en cuenta para implementar un replicador asi . Yo programo en vfp pero teniendo la idea general del programa creo que puedo implementarla en este lenguaje o posiblemente ni sea necesario y pueda ejecutarse como programa independiente en delphi ya que solo accesara las bases de datos correspondientes. Mi caso es igual a los comentados , una base de datos central con un ciento de bases de datos locales que deben replicar sus datos a la central ya que esta se utilizara para replicar a un servidor para emision de reportes y consultas consolidadas de varias sucursales. Muchas gracias de antemano. Mi correo es : dsalap @ gmail.com . Saludos a todos. |
#10
|
||||
|
||||
Hola.
Cita:
http://www.ibphoenix.com/resources/d...how_to/doc_316 Traducción automática por Google Deberías leerlo y después si quieres lo comentamos, puesto que personalmente hay cosas que prefiero hacer distinto.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). Última edición por guillotmarc fecha: 05-02-2011 a las 19:33:46. |
#11
|
||||
|
||||
Por cierto, hemos hablado mucho de este tema en otras ocasiones. Te recomiendo que leas esos comentarios (utiliza la opción Buscar que tienes arriba del Foro a la derecha).
Especialmente te recomiendo que leas este hilo : http://www.clubdelphi.com/foros/showthread.php?t=69827 Saludos
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). |
#12
|
|||
|
|||
muchas gracias Marc, voy a revisar el documento y el enlace que comentas y luego me pondre en contacto nuevamente.
Saludos desde Cancun Daniel S. |
#13
|
|||
|
|||
Buenas a Todos, alguno de uds me puede ayudar con el FBREPLICATOR?
|
#14
|
||||
|
||||
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Replicación de BD Firebird | santiago14 | Firebird e Interbase | 9 | 03-10-2017 16:43:55 |
Replicacion Base de Datos Firebird | Rockin | Firebird e Interbase | 8 | 03-11-2008 21:48:07 |
REplicación de Base de datos -TRABAJO ENTRE DISTINTOS MOTORES DE BD- | voldemmor | Oracle | 1 | 27-05-2007 10:41:23 |
Herramienta case para diccionario de datos de base de datos firebird | mcalmanovici | Firebird e Interbase | 1 | 11-02-2007 15:17:37 |
Replicacion de Base de Datos | Mardol | SQL | 1 | 02-10-2006 20:38:52 |
![]() |
|