UNIVERSIDAD DE EL SALVADOR FACULTAD MULTIDISCIPLINARIA DE OCCIDENTEDEPARTAMENTO DE INGENIERÍA Y ARQUITECTURA “REPLICACION ...
REPLICACION CON POSTGRESQL-SLONY-I EN WINDOWS                                  POSTGRESQLEs el gestor de bases de datos de...
HERRAMIENTA DE REPLICACION   •   Slony-I                           MODELOS DE REPLICACION   •   PgAdmin3: Entorno de escri...
PGADMIN-IIIInterfaz gráfica soporta todas las características de PostgreSQL y facilita enormementela administración. La ap...
•   Origen: proveedores y suscriptores: Los nodos que reciben la informacion se    denomina nodos suscriptores, dichos nod...
INSTALACION Y CONFIGURACION DE POSTGRESQL-SLONY-IREPLICANDO!!!  1. crear la base de datos en ambos nodos maestro y esclavo...
•   Clic en commit para agregar nuestra tabla.
•   En este caso agregaremos el campo nombre a nuestra primera tabla y
2. Agregamos la ruta para Slony desde file>options>slony_I path>c:program   Files PostgreSQL8.4share
3. Crear una nueva regla de entrada para que nuestro firewall permita la conexión a   traves del puerto 5432.4. Configurar...
Abre el bloc de notas, copia lo siguiente y modifica los parámetros de este script:Para el nodo maestro: cluster name = sl...
C:Archivos de ProgramasPostgreSQL8.4binslonik suscriptor.txt   8. En Windows con tan solo ir a la línea de comandos en C:P...
Upcoming SlideShare
Loading in …5
×

Replicacion con postgresql y slony

2,131 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,131
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
91
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Replicacion con postgresql y slony

  1. 1. UNIVERSIDAD DE EL SALVADOR FACULTAD MULTIDISCIPLINARIA DE OCCIDENTEDEPARTAMENTO DE INGENIERÍA Y ARQUITECTURA “REPLICACION CON POSTGRESQL” CARRERA: INGENIERIA DE SISTEMAS INFORMATICOS DOCENTE: ING. ERNESTO ALEXANDER CALDERON ALUMNOS: BATRES CISNEROS, DEYMI CORINA CASTRO MARTINEZ,JUAN CARLOS MENDEZ CADENAS, JOHANNA NATHALIE QUIÑONEZ GUERRERO, ROSA ESMERALDA
  2. 2. REPLICACION CON POSTGRESQL-SLONY-I EN WINDOWS POSTGRESQLEs el gestor de bases de datos de codigo abierto mas avanzado hoy en dia, ofreciendocontrol de concurrecia multiversion, soportando casi toda la sintaxis SQL,contandotambien con un amplio conjunto de enlaces con lenguajes de programación.Es un sistema de gestión de base de datos relacional orientada a objetos y libre,publicado bajo la licencia BSD, como su nombre lo indica, utiliza el lenguaje SQL parallevar a cabo sus búsquedas de información, las bases de datos generadas dentro deservidores de SQL son bases de datos relacionales.Las herramientas de replicación de bases de datos son imprescindibles para centros dedatos, Slony es una excelente elección cuando se requiere realizar una replicaciónasíncrona de bases de datos de PostgreSQL.Cumple completamente con las características atomicidad, consistencia, aislamiento ydurabilidad (Atomicity, Consistency, Isolation and Durability: ACID) para realizartransacciones seguras, es multiplataforma, está disponible para 34 plataformas en suúltima versión estable. Posee interfaces nativas para lenguajes como ODBC, JDBC, C,C++, PHP, PERL, TCL, ECPG; PYTHON y RUBY, además de traer soporte para laherencia y la seguridad de la capa de dispositivo de transportación de datos (SecureSockets Layer: SSL). Además, PostgreSQL puede ser personalizado por el usuario enmuchas formas, según sus necesidades, por ejemplo, adicionando entre otros, un nuevo: • Tipo de datos. • Funciones. • Operadores. • Funciones agregadas. • Lenguajes procedurales.
  3. 3. HERRAMIENTA DE REPLICACION • Slony-I MODELOS DE REPLICACION • PgAdmin3: Entorno de escritorio visual. • PgAccess : Entorno de escritorio visual. • PhpPgAdmin: Entorno Web. • Psql: Cliente de consola. SLONY-I:Es un sistema de replicacion asincrono para PostgreSql de una base de datos maestrahacia multiples bases de datos hijas que realiza las actualizaciones utilizando triggers, loque significa que no puede propagar cambios de esquemas y operaciones con objetos .Actualmente Slony solamente replica cambios a tablas y secuencias.La ventaja que tenemos con Slony es que el servidor primario manda las actualizacionesen tiempo real a la base de datos esclava y en caso de que falle el servidor primario,continuamos trabajando con la base de datos esclava.En el "origen" de cada tabla replicada, un trigger adicional se agrega y se almacenaschemadoclogtrigger () . Por cada suscriptor, las tablas son aumentadas con un triggerque ejecuta la funcion schemadocdenyaccess (), esta función evita que cualquier cosaque no sea el proceso slon actualice los datos en tablas replicadas. Además, todos losotros factores desencadenantes y las normas sobre las tablas replicadas se suprimen enlos suscriptores. No se maneja "de forma automática," usted, como administrador debase de datos, tendrá que construir una secuencia de comandos SQL DDL y lopresentará, a través de slonik execute script. PREREQUISITOSInstalar POSTGRESQL 8.4Instalar Slony-I v.2.0.4-1
  4. 4. PGADMIN-IIIInterfaz gráfica soporta todas las características de PostgreSQL y facilita enormementela administración. La aplicación también incluye un editor SQL con resaltado desintaxis, un editor de código de la parte del servidor, un agente para lanzar scriptsprogramados, soporte para el motor de replicación Slony-I y mucho más. CONCEPTOS IMPORTANTES ANTES DE EMPEZAR LA REPLICACION • Cluster: Conjunto de bases de datos PostgreSql dentro de las cuales sucede la replicacion. • Nodo: Es una base de datos que participara en el proceso de replicacion. • Set de Replicacion: Conjunto de tablas y secuencias que se replicaran.
  5. 5. • Origen: proveedores y suscriptores: Los nodos que reciben la informacion se denomina nodos suscriptores, dichos nodos suscriptores se pueden en proveedores y s u vez tienen otros nodos suscriptores.• Comandos Slonik: E s un pequeño interprete que incluye comandos utilizados para la manipulacion del cluster de replicacion.• Suscriptores: Son todos los demás nodos en el cluster(esclavos), son los que reciben los datos en la réplica.• Proveedores: Es un nodo subscriber (esclavo) que sirve comoproveedor para un subconjunto de nodos en el cluster (actúa como un nodo origin pero no se permite a ninguna aplicación escribir en él.
  6. 6. INSTALACION Y CONFIGURACION DE POSTGRESQL-SLONY-IREPLICANDO!!! 1. crear la base de datos en ambos nodos maestro y esclavo. • Abrir el programa pgAdmin III , clic derecho sobre servers y se nos mostrara una imagen como la siguiente en donde asignamos el nombre de nuestro Server(en nuestro caso ejemplo) y la direccion ip de nuestro nodo maestro . • Creamos la misma base de datos en nuestro nodo maestro utilizando nuestra aplicación PosgreSQL Maestro.Asignamos tablas y cmpos a nuestra base de datos.
  7. 7. • Clic en commit para agregar nuestra tabla.
  8. 8. • En este caso agregaremos el campo nombre a nuestra primera tabla y
  9. 9. 2. Agregamos la ruta para Slony desde file>options>slony_I path>c:program Files PostgreSQL8.4share
  10. 10. 3. Crear una nueva regla de entrada para que nuestro firewall permita la conexión a traves del puerto 5432.4. Configurar el archivo pg_hbaC:Program Files PostgreSQL 8.4datapg_hba.confAgregar las siguientes líneas# TYPE DATABASE USER CIDR-ADDRESS METHOD# IPv4 local connections:host all all 127.0.0.1/32 md5#maestrohost all all 192.168.0.1/24 md5#esclavohost all all 192.168.0.2/24 md5# IPv6 local connections:host all all ::1/128 md55. Ahora vamos a crear un script al cual se le introduce que tablas queremos replicar, se especifica quien será el nodo maestro y el nodo o nodos secundarios a los cuales queremos replicar nuestra información, etc...
  11. 11. Abre el bloc de notas, copia lo siguiente y modifica los parámetros de este script:Para el nodo maestro: cluster name = slony_pruebaRE; node 1 admin conninfo = dbname=prueba host=192.168.0.2 user=postgres password=soloyo; node 2 admin conninfo = dbname=prueba host=192.168.0.1 user=postgres password=soloyo; init cluster (id=1, comment=Nodo Maestro); create set (id=1, origin=1, comment=mis tablas); set add table (set id=1, origin=1, id=1, fully qualified name=public.tabla1, comment=mi tabla ); store node (id=2, comment=Nodo Esclavo, EVENT NODE=1); store path (server=1, client=2, conninfo=dbname=prueba host=192.168.0.2 user=postgres password=soloyo); store path (server=2, client=1, conninfo=dbname=prueba host=192.168.0.1 user=postgres password=soloyo); store listen (origin=1, provider=1, receiver=2); store listen (origin=2, provider=2, receiver=1);Para el nodo esclavo: cluster name = slony_pruebaRE; node 1 admin conninfo=dbname=prueba host=192.168.0.2 user= postgres password=soloyo; node 2 admin conninfo=dbname=prueba host=192.168.0.1 user= postgres password=soloyo; SUBSCRIBE SET ( ID=1, PROVIDER=1, RECEIVER=2, FORWARD= yes); 6. Ejecutar desde la consola de Windows en la maquina maestra: C:Archivos de ProgramasPostgreSQL8.4binslonik maestra.txt 7. Ejecutar desde la consola de Windows en la maquina esclava:
  12. 12. C:Archivos de ProgramasPostgreSQL8.4binslonik suscriptor.txt 8. En Windows con tan solo ir a la línea de comandos en C:Program FilesPostgreSQL8.4bin> ejecutar: - slon –regserviceCon esto hemos creado el servicio, ve a Servicios de Windows y busca el serviciollamado Slony-I para verificar que todo se haya ejecutado correctamente, pero no loactives.En este momento los nodos ya están replicando, y no se deben cerrar lasconsolas. Cada vez que inicies postgres debes iniciar el servicio de nuevo paraactualizar los datos de la replica.

×