Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > MySQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 28-01-2008
angara angara is offline
Miembro
 
Registrado: jun 2006
Posts: 22
Poder: 0
angara Va por buen camino
Replicar base datos mySQL

Hola

nesecito actualizar los datos en una base de datos mySQL explicación:

tengo un Pc con un programa administración punto venta con el servidor mySQL5 con una base datos llamada ventas y dos equipos llamese punto venta 1 y 2, con la misma base de datos y servidor mySQL5. Ahora lo que deseo hacer es que cuando en el punto venata 1 y/o se realize una venta esta se refleje en el equipo administración y a la vez si en el equipo administración se modifico un valor se refleje en los puntos de ventas. en el fondo se trata de realizar una especie de replicacion entre los tres equipos de manera que si uno falla por cortes de energia o la red el otro siga funcionando en local. demás esta decir que el equipo administración no esta en el mismo lugar físico que los punto de ventas. todo esto esta hecho en Delphi7 y componentes MiDAC. para la communiucion con mySQL.
gracias por los aportes que puedan realizar a este tema.
Responder Con Cita
  #2  
Antiguo 28-01-2008
Avatar de AzidRain
[AzidRain] AzidRain is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Córdoba, Veracruz, México
Posts: 2.914
Poder: 22
AzidRain Va camino a la fama
De entrada creo que el diseño de todo esta incorrecto. Solo debes tener un servidor y una BD para dar servicio tanto a los puntos de venta como a la aplicación administrativa. De esta forma la información está siempre actualizada y visible por todos los equipos.

Como lo planteas no te da opción de nada porque si necesitaras por ejemplo otra terminal POS, tendrías que instalar sus propias bases de datos.

Por lo menos así te lo entendí, pero suponiendo que la base de datos "local" de cada POS solo sea como respaldo en caso de cortes la cosa cambia:

1.- MySQL solo incluye de momento replicación líneal, es decir, en un solo sentido: 1 servidor maestro y "n" servidores esclavos. Si modificas un esclavo el servidor no toma el cuenta el cambio, además de que se crea un desmother con los datos.

2.- Para casos de POS que requieren poder seguir por su cuenta en caso de caerse el servidor, te comento como funciona el esquema usado por IBM en sus POS, los cuales puedes ver funcionando en muchos de los grandes supermercados, te puede servir para un nuevo diseño:

[quote]
Tenemos 2 servidores principales: 1 maestro, que llamaremos CC y un esclavo que llamaremos DD. Cada terminal punto de venta arranca, se conecta y se registra con el servidor CC y empieza a trabajar. La terminal no tiene copia de base de datos ni nada, todo depende del servidor. Si CC deja de funcionar, DD toma el control y sigue trabajando la cosa. Esto último no puede hacerse con MySQL así que vamos a brincarnos esto y suponer que tampoco DD está disponible.

En este momento la terminal no tiene acceso al catálogo de artículos y por lo tanto a los precios. El enfoque de IBM es indicar esto en l display y permitir el registro de artículos sólo mediante la combinación "precio a departamento". Es decir, se debe indicar el precio del artículo y el departamento al que se dirige la venta. La transacción se guarda localmente en la terminal indicando además los UPCs de los artículos.
Al regresar el servidor, las terminales le envían sus transacciones almacenadas, ésto solo para efectos de que el servidor disminuya el inventario de los UPCs escaneados y que sume las ventas en $ a los departamentos indicados. En el reporte de cierre del negocio apareceran los importes que fueron cobrados "sin sistema".

Aquí lo importante es que en el caso de IBM es casi imposible que se llegue a ese extremo, pues hay UPS además de la redundancia de los servidores.
[quote]
Otro supuesto, tienes un servidor ubicado en otro local o ciudad, aunque de todas formas puedes montar el servidor via remota, puedes optar por montar un servidor intermedio que sí esté fisicamente en el mismo lugar que los POS y hacer una aplicación que se encargue de ir actualizando al servidor principal.
__________________
AKA "El animalito" ||Cordobés a mucha honra||
Responder Con Cita
  #3  
Antiguo 29-01-2008
angara angara is offline
Miembro
 
Registrado: jun 2006
Posts: 22
Poder: 0
angara Va por buen camino
Gracias por tu detallado aporte.
Lo que mencionas referente a que los PV. trabajen conectados directamente al servidor es lo que tengo actualmente hecho y va bien, siempre y cuando no se producan cortes de energia, prolongados y que no se produca caida de la red por la ubicacion fisica del servidor. además que en este mismo servidor corre otra aplicación que tambien es utilisada por los PV. para emitir los tickes fiscales. y en ese caso esa aplicación si actualiza los datos bididercionalmente. debo destacar que esa corre con SQL y fue desarrollada en VB6 por otro desarrollador.
Yo solo trabajo en Delphi y lo de realizar esta usando mySQL es por la facilidad de poder efectuar via internet consultas sobre los movimientos y ventas en terreno. todo se almacena en el mismo servidor. de ahi la necesidad de replicar la información.

En alguna parte leei que se podia guardar la informacion en los clientes en un archivo de texto y luego un programa monitor ir leyendo y actualizando hacia el servidor y por ende desde el servidor hacia el cliente.
si sabes de algo parecido se te agredece desde ya.
Responder Con Cita
  #4  
Antiguo 29-01-2008
Avatar de AzidRain
[AzidRain] AzidRain is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Córdoba, Veracruz, México
Posts: 2.914
Poder: 22
AzidRain Va camino a la fama
Efectivamente como comentas es otra posibilidad pero en todos los casos siempre tendrás el problema de los cortes o fallas de energía y aquí es peor porque si falla la energía en el momento justo en que se esté escribiendo o leyendo ese archivo de texto pues ya te imaginarás.
__________________
AKA "El animalito" ||Cordobés a mucha honra||
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Encriptar base de datos mysql zevahc Conexión con bases de datos 5 14-01-2008 20:42:42
Como replicar desde mySQL Hell_Raiser MySQL 1 22-02-2007 00:50:04
Base de Datos MySql en Red The_figo MySQL 4 20-01-2007 02:47:38
Replicar base de datos crack_neon Conexión con bases de datos 2 30-06-2006 21:07:14
replicar base de datos de un lugar a otro ctronx MySQL 3 17-01-2006 17:41:03


La franja horaria es GMT +2. Ahora son las 02:02:31.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi