SlideShare una empresa de Scribd logo
1 de 21
Descargar para leer sin conexión
UNIVERSIDAD DE EL SALVADOR
    FACULTAD MULTIDISCIPLINARIA DE OCCIDENTE
       DEPTO. DE INGENIERIA Y ARQUITECTURA




REPLICACION EN POSTGRESQL CON SLONY-I EN WINDOWS

            CATEDRA: BASE DE DATOS

      CATEDRATICO: ING. ALEXANDER CALDERON

                PRESENTADO POR:

          GARAY CALDERON KEVIN ALONSO

          MENJIVAR SALAS JOSE ALBERTO

              NUÑEZ EDVIN MANOLO

           HERRERA MEJIA LUIS ALBERTO




          SANTA ANA, 22 DE MAYO DE 2012
Índice general


Contenido                                                                                                                                 pag
Sobre PostgreSQL .......................................................................................................................... 1
Características de PostgreSQL ........................................................................................................ 1
Herramientas graficas de administración de bases de datos en PostgreSQL................................... 1
La replicación de datos................................................................................................................... 2
Herramientas de replicación para PostgreSQL ................................................................................ 2
Sobre Slony-I .................................................................................................................................. 3
Aspectos importantes antes de poner en marcha una replicación .................................................. 4
Replicando una base de datos de PostgreSQL con Slony-I en Windows .......................................... 5
POSTGRESQL Y REPLICACION


Sobre PostgreSQL


PostgreSQL es una potente herramienta de gestión de bases de datos
relacional y orientada a objetos (SGBDOO en sus siglas en ingles).
PostgreSQL se distribuye bajo licencia BSD (Berkeley Software
Distribution). Es una licencia de software libre permisiva, lo que permite su
uso, redistribución, modificación con la única restricción de mantener el
copyright del software a sus autores.



Características de PostgreSQL

Entre las características de PostgreSQL podemos destacar las siguientes:

    Es multiplataforma, PostgreSQL en sus versiones más recientes
     está disponible para 34 plataformas.
    Cuenta con un rico conjunto de tipo de datos, permitiendo además
     su extensión mediante tipos y operadores definidos y programados
     por el usuario.
    Sus opciones de conectividad abarcan TCP/IP, sockets Unix y NT
     además de soportar completamente ODBC.
    Soporte para vistas, claves foráneas, integridad referencial,
     disparadores (triggers), procedimientos almacenados y casi todos los
     tipos de datos y operadores soportados en SQL.
    Su administración se basa en usuarios y privilegios.



Herramientas graficas de administración de bases de datos en
PostgreSQL.


Existen varias herramientas que se pueden utilizar para la manipulación
de bases de datos en PostgreSQL, dichas herramientas nos permiten ver y
trabajar con casi todos los objetos de la base de datos, examinar sus
propiedades o realizar tareas administrativas. Entre estas herramientas
podemos mencionar:

    PHPPGadmin: esta herramienta está basada en interfaz web.

                                      1
   PGexplorer: entorno de escritorio.
      PGadmin: entorno de escritorio.
      PGaccess: entorno de escritorio.
      Psql: Cliente de consola.
      Etc.


Todas estas pueden encontrar en sus respectivas versiones.


La replicación de datos

La replicación es una técnica que se basa en mantener objetos de las
bases de datos en múltiples ubicaciones. De esta forma se puede tener
una réplica exacta o parcial de la base de datos que puede usarse para
una restauración de emergencia o bien para realizar consultas sobre ella y
aligerar la carga del servidor principal.

La replicación es una buena alternativa para tener disponibilidad de
información cuando un servidor se cae. La replicación no suplanta los
backup’s, sino, simplemente garantiza la operatividad.

Existen algunos métodos de replicación entre los cuales se pueden
mencionar:

    Multimaestro
    Maestro -esclavo

Multimaestro: es un método de replicación de bases de datos que permite
que los datos sean almacenados por un grupo de computadoras y además
estos datos pueden ser actualizados por cualquier nodo de este grupo. Con
este tipo de replicación todos los nodos participantes son de
lectura/escritura.

Maestro-esclavo: con este método de replicación los datos también son
almacenados en un grupo de computadoras con la diferencia de que aquí
solamente el nodo maestro es de lectura/escritura y el esclavo solo de
lectura.


Herramientas de replicación para PostgreSQL



                                      2
Hay varias herramientas que actúan como middleware (intermediario)
entre PostgreSQL y la replicación de datos, entre las que se pueden
destacar:

      Slony-I
      Rubyrep
      PGpool
      Hot Standby / Streaming Replication

De estas herramientas se elegirá la que más se ajustes a las necesidades
que se tengan, en nuestro caso hemos elegido Slony-I y será en la cual
profundizaremos nuestro estudio.

SLONY-I


Sobre Slony-I
Slony-I es un sistema de replicación asíncrono para PostgreSQL de una
base de datos maestra hacia una o múltiples bases de datos hijas. Slony-I
realiza las actualizaciones a través de disparadores o triggers por lo que
actualmente solo puede realizar replicación de tablas y secuencias.

Replicación asíncrona

Que una replicación sea asíncrona significa que cuando una transacción
para la base de datos es enviada al servidor maestro no se garantiza que
esté disponible para los nodos esclavos.

Triggers

Un trigger (o disparador) en una Base de datos, es un procedimiento que
se ejecuta cuando se cumple una condición establecida al realizar una
operación. Dependiendo de la base de datos, los triggers pueden ser de
inserción (INSERT), actualización (UPDATE) o borrado (DELETE). Algunas
bases de datos pueden ejecutar triggers al crear, borrar o editar usuarios,
tablas, bases de datos u otros objetos.

Situaciones en las cuales no es recomendable utilizar slony-I

    Bases de datos donde regularmente se hagan cambios a esquemas y
     definiciones de tablas (DDL).
    Cuando se quiere un sistema de replicación que por sí mismo de
     notificaciones sobre fallos como por ejemplo nodos caídos.


                                     3
De lo contrario Slony-I es una opción para tomar muy en cuenta al querer
realizar una replicación.


Aspectos importantes antes de poner en marcha una replicación


Antes de poner en marcha una replicación usando Slony-I es importante
tener claro algunos conceptos como:

      Clúster
      Nodo
      Set de replicación
      Origen, Proveedores y Suscriptores
      Demonio slon
      Comando slonik

Cluster: conjunto de bases de datos PostgreSQL dentro de las cuales
ocurre la replicación.

Nodo: un nodo es una base de datos que participa en el proceso de
replicación.

Set de replicación: Es un conjunto de tablas y secuencias que se
replicaran. Nótese que no se replican todas las tablas, sino que se tienen
que especificar explícitamente.

Origen, proveedores y suscriptores: Cada set de replicación tiene un
nodo de origen, que es la base de donde se obtiene información. Los nodos
que reciben la información se denominan nodos suscriptores. Dichos
nodos suscriptores se pueden convertir en proveedores si a su vez tienen
otros nodos suscriptores.

Demonios slon: Para cada nodo en el clúster, existe un proceso slon que
administra la actividad de replicación para ese nodo.

Comandos slonik: es un pequeño intérprete de comandos que incluye
comandos utilizados para la manipulación del clúster de replicación.


También se recomienda tomar en cuenta las siguientes consideraciones:

    Utilizar exactamente la misma versión de Slony en todos los nodos.
    Utilizar versiones 8.3 o superior de PostgreSQL para utilizar Slony-I
     2.0.4

                                     4
 Sincronización de hora de sistemas operativos donde estén las bases
     involucradas en la replicación.


Replicando una base de datos de PostgreSQL con Slony-I en
Windows
Requisitos:

Para la realización de nuestra replicación es necesario tener instaladas las
siguientes herramientas:
    PostgreSQL 8.4 o compatible
    PGadmin III
    Slony-I 2.0.4

Descripción de los elementos:

PostgreSQL 8.4: es el gestor de base de datos, el cual puede ser instalado
desde el gestor de paquetes de Linux o se puede descargar desde su sitio
oficial (http://www.postgresql.org/ftp/binary) tanto para Linux como para
Windows.

PGadmin III: como se dijo anteriormente existen varias herramientas para
la manipulación de bases de datos PostgreSQL entre los que esta
PGadmin.

PGadmin III es una interfaz gráfica que soporta todas las características de
PostgreSQL y facilita enormemente la administración. La aplicación
también incluye un editor SQL con resaltado de sintaxis, un editor de
código de la parte del servidor, un agente para lanzar scripts programados,
soporte para el motor de replicación Slony-I y mucho más.

Al igual que PostgreSQL esta herramienta también se encuentra disponible
en los repositorios de Linux y se puede instalar de esa forma o
descargándolo         de         su        sitio      web         oficial
(http://www.postgresql.org/ftp/pgadmin3/release/).

Slony-I 2.0.4: como ya vimos anteriormente Slony es el software que
permite la replicación en PostgreSQL, su instalación puede ser también
desde el gestor de paquetes en Linux o utilizando el Stack Builder que es
una herramienta que se instala cuando instalamos el gestor PostgreSQL
en windows y sirve para instalar complementos para dicho gestor.



                                     5
Para instalar Slony-I desde el Stack Builder debemos seguir los siguientes
pasos:

   1-   Inicio
   2-   Todos los programas
   3-   PostgreSQL
   4-   Aplicación    Stack Builder, clic derecho ejecutar          como
        administrador y nos aparecerá la siguiente pantalla.




   5- En la pestaña seleccionamos PostgreSQL 8.4 on port 5432 como
      se muestra en la siguiente imagen. Presionamos siguiente.




                                    6
6- Al dar clic en siguiente se no muestra una ventana con las
   categorías de complementos que podemos instalar para el caso
   debemos        elegir    soluciones     de       replicación.




7- Y chequeamos Slony-I y siguiente.




                               7
8- Nos aparecerá la ventana con el resumen de los paquetes
     seleccionados para instalar.




  9- Para el caso solo instalaremos Slony-I. Si todo es correcto
     presionamos siguiente. Se instalaran los paquetes seleccionados y le
     damos finalizar. Cabe mencionar que para realizar la instalación de
     este modo debemos de tener conexión a internet.


Con los pasos anteriores ya tendremos a disposición Slony-I 2.0.4 para
PostgreSQL 8.4



CASO PRACTICO DE REPLICACION.

Ya teniendo todo lo necesario pasamos a lo que es la replicación en sí. A
continuación se muestra como realizar dicha replicación de tipo maestro-
esclavo en Windows 7 con los detalles mostrados en la imagen.




                                    8
Consideraciones:

    Ambos nodos deberán tener instalado PostgreSQL 8.4, Slony-I y
     PGadmin.
    La base de datos a replicar deberá crearse tanto en el nodo maestro
     como en el nodo esclavo y debe de ser idéntica, a sea debe llamarse
     igual tanto la BD como las tablas y campos, tener los mismos
     campos, etc.


Paso 1: Crear la base de datos

1.1-   Crear la base de datos que queremos replicar (si ya se tiene creada
       la BD saltar a siguiente paso) para el caso utilizaremos la base de
       datos mini_agenda la cual se muestra a continuación:




1.2-   El siguiente paso será pasar la base de datos al gestor PostgreSQL
       8.4 para ello utilizaremos PGadmin III, deberá quedar de la siguiente
       manera:




                                     9
1.3-   Esta configuración debe de estar en ambos nodos

Paso 2: Configurar el Slony-I

2.1- Ya teniendo creada la base de datos, el siguiente paso es agregar
desde el PGadmin la ruta a Slony-I para ello nos vamos a
FileOpciones slony_I pathc:program Files PostgreSQL8.4
recordemos que esta es la ruta donde se instalo Slony-I por lo que si
especificamos otro directorio al instalarlo esta ruta variaría.




                                   10
2.2- Ademas de agregar la ruta anterior, debemos de verificar que
tengamos disponible el lenguaje plpgsql.




Si no esta disponible debemos agregarlo de la siguiente manera

                                   11
FileOptionsdisplay y chequiamos Lenguages




Luego clic derecho sobre lenguajenuevo lenguajeplpgsql




                                12
Paso 3: configurar firewall de windows
3.1- Crear una nueva regla de entrada para que nuestro firewall permita la
conexión a través del puerto 5432. Para ello nos dirigimos a Panel de
controlSistema y seguridadfirewall de Windowsconfiguración
avanzadareglas de entradanueva reglapuerto.




Al hacer clic en siguiente nos aparece la ventana para especificar puerto y
protocolo para el caso elegimos TCPPuertos locales especificos. El
puerto en este caso es el de postgeSQL o sea 5432




                                    13
Siguiente y permitir conexión




Después seleccionamos dominio y privado




                                14
Luego le colocamos un nombre y finalizar




Listo ya tenemos creada nuestra entrada para permitir conexiones remotas
en Windows.

Paso 4: configurar el archivo pg_hba.conf

4.1-   abrir  el    archivo    C:Program        Files     PostgreSQL
8.4datapg_hba.conf. Este deberá ser abierto con el bloc de notas.

4.2-modificar el archivo para que quede de la siguiente manera

   # TYPE DATABASE        USER       CIDR-ADDRESS          METHOD

   # IPv4 local connections:
    host all         all     127.0.0.1/32      md5
   #maestro
    host all        all     10.0.10.2/24        md5
   #esclavo
    host all        all     10.0.10.3/24        md5
   # IPv6 local connections:
   host all        all     ::1/128              md5


Esto se realizará para todas las maquinas donde se desea replicar.

                                    15
5- Crear un script con el bloc de notas para el nodo maestro y lo
llamaremos Maestro.txt:


cluster name = slony_MINI_AGENDA;

node 1 admin conninfo = 'dbname = MINI_AGENDA host = 10.0.10.2 user
= postgres password = admin';
node 2 admin conninfo = 'dbname = MINI_AGENDA host = 10.0.10.3 user
= postgres password = admin';

init cluster (id=1, comment = 'nodo maestro');

create set (id=1, origin=1, comment= 'aqui van todas mis tablas');

set add table (set id=1, origin=1, id=1, fully qualified name =
'public.Contacto', comment= 'mi tabla contacto');


set add table (set id=1, origin=1, id=1, fully qualified name =
'public.Telefono', comment= 'mi tabla telefono');



store node (id = 2, comment = 'nodo esclavo', EVENT NODE = 1);
store path (server = 1, client = 2, conninfo = 'dbname = MINI_AGENDA host
= 10.0.10.2 user = postgres password = admin');
store path (server = 2, client = 1, conninfo = 'dbname = MINI_AGENDA host
= 10.0.10.3 user = postgres password = admin');
store listen (origin = 1, provider = 1, receiver = 2);
store listen (origin = 2, provider= 2, receiver = 1);



Este archive debera guardarce en la siguiente ubicacion C:Archivos de
ProgramasPostgreSQL8.4bin


6- de la misma manera crearemos un script llamado Suscriptor.txt para el
nodo     esclavo, este    será   guardado     en   C:Archivos       de
ProgramasPostgreSQL8.4bin pero del nodo esclavo.



                                      16
cluster name = slony_MINI_AGENDA;

node 1 admin conninfo = 'dbname= MINI_AGENDA host = 10.0.10.2 user
= postgres password = admin';


node 2 admin conninfo = 'dbname= MINI_AGENDA host =10.0.10.3 user =
postgres password = admin';

subscribe set (id = 1, provider = 1, receiver = 2, forward = yes);




8- Ejecutar el script en el nodo maestro.

8.1- abrir la consola de Windows y ejecutamos la siguiente línea:
C:Archivos de ProgramasPostgreSQL8.4binslonik Maestro.txt




9- Ejecutar el script en el nodo esclavo.

9.1- abrir la consola de Windows y ejecutamos la siguiente línea:
C:Archivos de ProgramasPostgreSQL8.4binslonik Suscriptor.txt




                                      17
10- Ejecutar siempre desde la consola de Windows en la maquina maestra
y esclava la siguiente instrucción:


C:Archivos de ProgramasPostgreSQL8.4binslon slony_MINI_AGENDA
“dbname = MINI_AGENDA user = postgres password = admin”




                                  18
Desde este momento la base de datos MINI_AGENDA estará replicando
cualquier modificación de sus tablas. OjO NO DEBEMOS CERRAR LA
CONSOLA EN NINGUN NODO.




                                 19

Más contenido relacionado

La actualidad más candente

Replicacion Postgresql
Replicacion PostgresqlReplicacion Postgresql
Replicacion Postgresqljockbrera
 
Migrando de MSSQL a PostgreSQL
Migrando de MSSQL a PostgreSQLMigrando de MSSQL a PostgreSQL
Migrando de MSSQL a PostgreSQLscastell77
 
Instalación y configuración de sgbd presentacion
Instalación y configuración de sgbd presentacionInstalación y configuración de sgbd presentacion
Instalación y configuración de sgbd presentacionhugoAlvidrez
 
Dba PostgreSQL desde básico a avanzado parte2
Dba PostgreSQL desde básico a avanzado parte2Dba PostgreSQL desde básico a avanzado parte2
Dba PostgreSQL desde básico a avanzado parte2EQ SOFT EIRL
 
Postgresql Como Funciona Una Dbms Por Dentro
Postgresql Como Funciona Una Dbms Por DentroPostgresql Como Funciona Una Dbms Por Dentro
Postgresql Como Funciona Una Dbms Por DentroEQ SOFT EIRL
 
Arquitectura e implementación de PostgreSQL 9.3
Arquitectura e implementación de PostgreSQL 9.3Arquitectura e implementación de PostgreSQL 9.3
Arquitectura e implementación de PostgreSQL 9.3Bryan Rodríguez
 
LSWC PostgreSQL 9.1 (2011)
LSWC PostgreSQL 9.1 (2011)LSWC PostgreSQL 9.1 (2011)
LSWC PostgreSQL 9.1 (2011)Emanuel Calvo
 
Curso de PostgreSQL
Curso de PostgreSQLCurso de PostgreSQL
Curso de PostgreSQLEQ SOFT EIRL
 
Instalación de sgbd en diferentes plataformas de windows
Instalación de sgbd en diferentes plataformas de windowsInstalación de sgbd en diferentes plataformas de windows
Instalación de sgbd en diferentes plataformas de windowsDaniel Huerta Cruz
 
PostgreSQL
PostgreSQLPostgreSQL
PostgreSQLbrobelo
 
Presentación de Postgresql 9.1
Presentación de Postgresql 9.1Presentación de Postgresql 9.1
Presentación de Postgresql 9.1EQ SOFT EIRL
 
Replicación de Base de Datos en PostGreSQL 9.4 en Sistemas Operativos de Win...
Replicación de  Base de Datos en PostGreSQL 9.4 en Sistemas Operativos de Win...Replicación de  Base de Datos en PostGreSQL 9.4 en Sistemas Operativos de Win...
Replicación de Base de Datos en PostGreSQL 9.4 en Sistemas Operativos de Win...Julio Antonio Huaman Chuque
 
Requerimientos de instalación
Requerimientos de instalaciónRequerimientos de instalación
Requerimientos de instalaciónPrincezitha Ruiz
 
Trabajo de sistemas de informacion
Trabajo de sistemas de informacionTrabajo de sistemas de informacion
Trabajo de sistemas de informacionEvelin Oña
 
58517228 postgre sql-desarrolladoresbasico
58517228 postgre sql-desarrolladoresbasico58517228 postgre sql-desarrolladoresbasico
58517228 postgre sql-desarrolladoresbasicoLucia Zambrano Franco
 
Cuellos botella en PostgreSQL
Cuellos botella en PostgreSQLCuellos botella en PostgreSQL
Cuellos botella en PostgreSQLEQ SOFT EIRL
 

La actualidad más candente (19)

Replicacion Postgresql
Replicacion PostgresqlReplicacion Postgresql
Replicacion Postgresql
 
Migrando de MSSQL a PostgreSQL
Migrando de MSSQL a PostgreSQLMigrando de MSSQL a PostgreSQL
Migrando de MSSQL a PostgreSQL
 
Instalación y configuración de sgbd presentacion
Instalación y configuración de sgbd presentacionInstalación y configuración de sgbd presentacion
Instalación y configuración de sgbd presentacion
 
Dba PostgreSQL desde básico a avanzado parte2
Dba PostgreSQL desde básico a avanzado parte2Dba PostgreSQL desde básico a avanzado parte2
Dba PostgreSQL desde básico a avanzado parte2
 
Postgresql Como Funciona Una Dbms Por Dentro
Postgresql Como Funciona Una Dbms Por DentroPostgresql Como Funciona Una Dbms Por Dentro
Postgresql Como Funciona Una Dbms Por Dentro
 
Arquitectura e implementación de PostgreSQL 9.3
Arquitectura e implementación de PostgreSQL 9.3Arquitectura e implementación de PostgreSQL 9.3
Arquitectura e implementación de PostgreSQL 9.3
 
LSWC PostgreSQL 9.1 (2011)
LSWC PostgreSQL 9.1 (2011)LSWC PostgreSQL 9.1 (2011)
LSWC PostgreSQL 9.1 (2011)
 
Curso de PostgreSQL
Curso de PostgreSQLCurso de PostgreSQL
Curso de PostgreSQL
 
PostgreSQL
PostgreSQLPostgreSQL
PostgreSQL
 
Introducción a PostgreSql
Introducción a PostgreSqlIntroducción a PostgreSql
Introducción a PostgreSql
 
Instalación de sgbd en diferentes plataformas de windows
Instalación de sgbd en diferentes plataformas de windowsInstalación de sgbd en diferentes plataformas de windows
Instalación de sgbd en diferentes plataformas de windows
 
Postgresql expo
Postgresql expoPostgresql expo
Postgresql expo
 
PostgreSQL
PostgreSQLPostgreSQL
PostgreSQL
 
Presentación de Postgresql 9.1
Presentación de Postgresql 9.1Presentación de Postgresql 9.1
Presentación de Postgresql 9.1
 
Replicación de Base de Datos en PostGreSQL 9.4 en Sistemas Operativos de Win...
Replicación de  Base de Datos en PostGreSQL 9.4 en Sistemas Operativos de Win...Replicación de  Base de Datos en PostGreSQL 9.4 en Sistemas Operativos de Win...
Replicación de Base de Datos en PostGreSQL 9.4 en Sistemas Operativos de Win...
 
Requerimientos de instalación
Requerimientos de instalaciónRequerimientos de instalación
Requerimientos de instalación
 
Trabajo de sistemas de informacion
Trabajo de sistemas de informacionTrabajo de sistemas de informacion
Trabajo de sistemas de informacion
 
58517228 postgre sql-desarrolladoresbasico
58517228 postgre sql-desarrolladoresbasico58517228 postgre sql-desarrolladoresbasico
58517228 postgre sql-desarrolladoresbasico
 
Cuellos botella en PostgreSQL
Cuellos botella en PostgreSQLCuellos botella en PostgreSQL
Cuellos botella en PostgreSQL
 

Destacado

Asynchronous Replication for PostgreSQL Slony
Asynchronous Replication for PostgreSQL SlonyAsynchronous Replication for PostgreSQL Slony
Asynchronous Replication for PostgreSQL Slonyelliando dias
 
A passagem do virtual para o real
A passagem do virtual para o realA passagem do virtual para o real
A passagem do virtual para o realpietra bravo
 
Biosoja 2011
Biosoja 2011Biosoja 2011
Biosoja 2011galetto
 
Serverprovisioning in einer dynamischen Infrastruktur
Serverprovisioning in einer dynamischen InfrastrukturServerprovisioning in einer dynamischen Infrastruktur
Serverprovisioning in einer dynamischen Infrastrukturinovex GmbH
 
El perfil del hombre y la cultura en México.
El perfil del hombre y la cultura en México.El perfil del hombre y la cultura en México.
El perfil del hombre y la cultura en México.Escritura Creativa
 
Ranking "250 Mejores Masters" - El Mundo 2015
Ranking "250 Mejores Masters" - El Mundo 2015Ranking "250 Mejores Masters" - El Mundo 2015
Ranking "250 Mejores Masters" - El Mundo 2015EAE Business School
 
Thoughts behind Cubie Messenger
Thoughts behind Cubie MessengerThoughts behind Cubie Messenger
Thoughts behind Cubie MessengerYenwen Feng
 
Lokale Suche & Google+ Local - Die erfolgreichsten SEO-Strategien
Lokale Suche & Google+ Local - Die erfolgreichsten  SEO-Strategien Lokale Suche & Google+ Local - Die erfolgreichsten  SEO-Strategien
Lokale Suche & Google+ Local - Die erfolgreichsten SEO-Strategien KennstDuEinen GmbH
 
Investigacion de operaciones
Investigacion de operaciones Investigacion de operaciones
Investigacion de operaciones David Soriano
 

Destacado (15)

Asynchronous Replication for PostgreSQL Slony
Asynchronous Replication for PostgreSQL SlonyAsynchronous Replication for PostgreSQL Slony
Asynchronous Replication for PostgreSQL Slony
 
Heels forever young
Heels forever youngHeels forever young
Heels forever young
 
E-handel med Commerce Server
E-handel med Commerce ServerE-handel med Commerce Server
E-handel med Commerce Server
 
A passagem do virtual para o real
A passagem do virtual para o realA passagem do virtual para o real
A passagem do virtual para o real
 
Biosoja 2011
Biosoja 2011Biosoja 2011
Biosoja 2011
 
Serverprovisioning in einer dynamischen Infrastruktur
Serverprovisioning in einer dynamischen InfrastrukturServerprovisioning in einer dynamischen Infrastruktur
Serverprovisioning in einer dynamischen Infrastruktur
 
R.p en el mundo digital
R.p en el mundo digitalR.p en el mundo digital
R.p en el mundo digital
 
Multimedia Y Monitores
Multimedia Y MonitoresMultimedia Y Monitores
Multimedia Y Monitores
 
El perfil del hombre y la cultura en México.
El perfil del hombre y la cultura en México.El perfil del hombre y la cultura en México.
El perfil del hombre y la cultura en México.
 
Ranking "250 Mejores Masters" - El Mundo 2015
Ranking "250 Mejores Masters" - El Mundo 2015Ranking "250 Mejores Masters" - El Mundo 2015
Ranking "250 Mejores Masters" - El Mundo 2015
 
Thoughts behind Cubie Messenger
Thoughts behind Cubie MessengerThoughts behind Cubie Messenger
Thoughts behind Cubie Messenger
 
Lokale Suche & Google+ Local - Die erfolgreichsten SEO-Strategien
Lokale Suche & Google+ Local - Die erfolgreichsten  SEO-Strategien Lokale Suche & Google+ Local - Die erfolgreichsten  SEO-Strategien
Lokale Suche & Google+ Local - Die erfolgreichsten SEO-Strategien
 
Microondas Zanussi ZBM26542XA
Microondas Zanussi ZBM26542XAMicroondas Zanussi ZBM26542XA
Microondas Zanussi ZBM26542XA
 
Investigacion de operaciones
Investigacion de operaciones Investigacion de operaciones
Investigacion de operaciones
 
Relación Médico-Paciente
Relación Médico-PacienteRelación Médico-Paciente
Relación Médico-Paciente
 

Similar a Postgre sql y_replicacion_slony_p

Replicacion con postgresql y slony
Replicacion con  postgresql y slonyReplicacion con  postgresql y slony
Replicacion con postgresql y slonyJohanna Mendez
 
Potsgrade emerson
Potsgrade emerson Potsgrade emerson
Potsgrade emerson HeidyGuzmn2
 
Base de datos_-_material_didactico
Base de datos_-_material_didacticoBase de datos_-_material_didactico
Base de datos_-_material_didacticoenriquehot
 
Administracion de datos
Administracion de datosAdministracion de datos
Administracion de datosUsein Gonzalez
 
Tres gestores de bases de datos
Tres gestores de bases de datosTres gestores de bases de datos
Tres gestores de bases de datossatakin_armando7
 
Preparando el entorno de Red de Oracle Database 11gZ052 06
Preparando el entorno de Red de Oracle Database 11gZ052 06Preparando el entorno de Red de Oracle Database 11gZ052 06
Preparando el entorno de Red de Oracle Database 11gZ052 06Alexander Calderón
 
Obvios herramientas de un SGDB
Obvios herramientas de un SGDBObvios herramientas de un SGDB
Obvios herramientas de un SGDBliras loca
 
cuadro_comparativo_SGBD_top_10.docx (1).docx
cuadro_comparativo_SGBD_top_10.docx (1).docxcuadro_comparativo_SGBD_top_10.docx (1).docx
cuadro_comparativo_SGBD_top_10.docx (1).docxIgor Rodriguez
 

Similar a Postgre sql y_replicacion_slony_p (20)

Replicacion con postgresql y slony
Replicacion con  postgresql y slonyReplicacion con  postgresql y slony
Replicacion con postgresql y slony
 
Pg pool cluster postgresql
Pg pool cluster postgresqlPg pool cluster postgresql
Pg pool cluster postgresql
 
Postgre
PostgrePostgre
Postgre
 
Potsgrade emerson
Potsgrade emerson Potsgrade emerson
Potsgrade emerson
 
SGBD Postgresql
SGBD PostgresqlSGBD Postgresql
SGBD Postgresql
 
Base de datos_-_material_didactico
Base de datos_-_material_didacticoBase de datos_-_material_didactico
Base de datos_-_material_didactico
 
Administracion de datos
Administracion de datosAdministracion de datos
Administracion de datos
 
Prueba
PruebaPrueba
Prueba
 
Tres gestores de bases de datos
Tres gestores de bases de datosTres gestores de bases de datos
Tres gestores de bases de datos
 
Preparando el entorno de Red de Oracle Database 11gZ052 06
Preparando el entorno de Red de Oracle Database 11gZ052 06Preparando el entorno de Red de Oracle Database 11gZ052 06
Preparando el entorno de Red de Oracle Database 11gZ052 06
 
trabajo numero 3
trabajo numero 3trabajo numero 3
trabajo numero 3
 
Base de datos sql
Base de datos sqlBase de datos sql
Base de datos sql
 
Obvios herramientas de un SGDB
Obvios herramientas de un SGDBObvios herramientas de un SGDB
Obvios herramientas de un SGDB
 
Oracle
OracleOracle
Oracle
 
Autenticacion ldap
Autenticacion ldapAutenticacion ldap
Autenticacion ldap
 
Base de datos CBTis 75
Base de datos CBTis 75Base de datos CBTis 75
Base de datos CBTis 75
 
cuadro_comparativo_SGBD_top_10.docx (1).docx
cuadro_comparativo_SGBD_top_10.docx (1).docxcuadro_comparativo_SGBD_top_10.docx (1).docx
cuadro_comparativo_SGBD_top_10.docx (1).docx
 
Replicación de Bases de Datos con SQL Server 2008
Replicación de Bases de Datos con SQL Server 2008Replicación de Bases de Datos con SQL Server 2008
Replicación de Bases de Datos con SQL Server 2008
 
Base De Datos
Base De DatosBase De Datos
Base De Datos
 
PostgreSQL BDR - Altenwald.pdf
PostgreSQL BDR - Altenwald.pdfPostgreSQL BDR - Altenwald.pdf
PostgreSQL BDR - Altenwald.pdf
 

Último

Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...
Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...
Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...Luis Olivera
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...FacuMeza2
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaarkananubis
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersIván López Martín
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxJOSEFERNANDOARENASCA
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELmaryfer27m
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofJuancarlosHuertasNio1
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...JaquelineJuarez15
 

Último (20)

Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...
Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...
Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en mina
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptx
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFEL
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sof
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
 

Postgre sql y_replicacion_slony_p

  • 1. UNIVERSIDAD DE EL SALVADOR FACULTAD MULTIDISCIPLINARIA DE OCCIDENTE DEPTO. DE INGENIERIA Y ARQUITECTURA REPLICACION EN POSTGRESQL CON SLONY-I EN WINDOWS CATEDRA: BASE DE DATOS CATEDRATICO: ING. ALEXANDER CALDERON PRESENTADO POR: GARAY CALDERON KEVIN ALONSO MENJIVAR SALAS JOSE ALBERTO NUÑEZ EDVIN MANOLO HERRERA MEJIA LUIS ALBERTO SANTA ANA, 22 DE MAYO DE 2012
  • 2. Índice general Contenido pag Sobre PostgreSQL .......................................................................................................................... 1 Características de PostgreSQL ........................................................................................................ 1 Herramientas graficas de administración de bases de datos en PostgreSQL................................... 1 La replicación de datos................................................................................................................... 2 Herramientas de replicación para PostgreSQL ................................................................................ 2 Sobre Slony-I .................................................................................................................................. 3 Aspectos importantes antes de poner en marcha una replicación .................................................. 4 Replicando una base de datos de PostgreSQL con Slony-I en Windows .......................................... 5
  • 3. POSTGRESQL Y REPLICACION Sobre PostgreSQL PostgreSQL es una potente herramienta de gestión de bases de datos relacional y orientada a objetos (SGBDOO en sus siglas en ingles). PostgreSQL se distribuye bajo licencia BSD (Berkeley Software Distribution). Es una licencia de software libre permisiva, lo que permite su uso, redistribución, modificación con la única restricción de mantener el copyright del software a sus autores. Características de PostgreSQL Entre las características de PostgreSQL podemos destacar las siguientes:  Es multiplataforma, PostgreSQL en sus versiones más recientes está disponible para 34 plataformas.  Cuenta con un rico conjunto de tipo de datos, permitiendo además su extensión mediante tipos y operadores definidos y programados por el usuario.  Sus opciones de conectividad abarcan TCP/IP, sockets Unix y NT además de soportar completamente ODBC.  Soporte para vistas, claves foráneas, integridad referencial, disparadores (triggers), procedimientos almacenados y casi todos los tipos de datos y operadores soportados en SQL.  Su administración se basa en usuarios y privilegios. Herramientas graficas de administración de bases de datos en PostgreSQL. Existen varias herramientas que se pueden utilizar para la manipulación de bases de datos en PostgreSQL, dichas herramientas nos permiten ver y trabajar con casi todos los objetos de la base de datos, examinar sus propiedades o realizar tareas administrativas. Entre estas herramientas podemos mencionar:  PHPPGadmin: esta herramienta está basada en interfaz web. 1
  • 4. PGexplorer: entorno de escritorio.  PGadmin: entorno de escritorio.  PGaccess: entorno de escritorio.  Psql: Cliente de consola.  Etc. Todas estas pueden encontrar en sus respectivas versiones. La replicación de datos La replicación es una técnica que se basa en mantener objetos de las bases de datos en múltiples ubicaciones. De esta forma se puede tener una réplica exacta o parcial de la base de datos que puede usarse para una restauración de emergencia o bien para realizar consultas sobre ella y aligerar la carga del servidor principal. La replicación es una buena alternativa para tener disponibilidad de información cuando un servidor se cae. La replicación no suplanta los backup’s, sino, simplemente garantiza la operatividad. Existen algunos métodos de replicación entre los cuales se pueden mencionar:  Multimaestro  Maestro -esclavo Multimaestro: es un método de replicación de bases de datos que permite que los datos sean almacenados por un grupo de computadoras y además estos datos pueden ser actualizados por cualquier nodo de este grupo. Con este tipo de replicación todos los nodos participantes son de lectura/escritura. Maestro-esclavo: con este método de replicación los datos también son almacenados en un grupo de computadoras con la diferencia de que aquí solamente el nodo maestro es de lectura/escritura y el esclavo solo de lectura. Herramientas de replicación para PostgreSQL 2
  • 5. Hay varias herramientas que actúan como middleware (intermediario) entre PostgreSQL y la replicación de datos, entre las que se pueden destacar:  Slony-I  Rubyrep  PGpool  Hot Standby / Streaming Replication De estas herramientas se elegirá la que más se ajustes a las necesidades que se tengan, en nuestro caso hemos elegido Slony-I y será en la cual profundizaremos nuestro estudio. SLONY-I Sobre Slony-I Slony-I es un sistema de replicación asíncrono para PostgreSQL de una base de datos maestra hacia una o múltiples bases de datos hijas. Slony-I realiza las actualizaciones a través de disparadores o triggers por lo que actualmente solo puede realizar replicación de tablas y secuencias. Replicación asíncrona Que una replicación sea asíncrona significa que cuando una transacción para la base de datos es enviada al servidor maestro no se garantiza que esté disponible para los nodos esclavos. Triggers Un trigger (o disparador) en una Base de datos, es un procedimiento que se ejecuta cuando se cumple una condición establecida al realizar una operación. Dependiendo de la base de datos, los triggers pueden ser de inserción (INSERT), actualización (UPDATE) o borrado (DELETE). Algunas bases de datos pueden ejecutar triggers al crear, borrar o editar usuarios, tablas, bases de datos u otros objetos. Situaciones en las cuales no es recomendable utilizar slony-I  Bases de datos donde regularmente se hagan cambios a esquemas y definiciones de tablas (DDL).  Cuando se quiere un sistema de replicación que por sí mismo de notificaciones sobre fallos como por ejemplo nodos caídos. 3
  • 6. De lo contrario Slony-I es una opción para tomar muy en cuenta al querer realizar una replicación. Aspectos importantes antes de poner en marcha una replicación Antes de poner en marcha una replicación usando Slony-I es importante tener claro algunos conceptos como:  Clúster  Nodo  Set de replicación  Origen, Proveedores y Suscriptores  Demonio slon  Comando slonik Cluster: conjunto de bases de datos PostgreSQL dentro de las cuales ocurre la replicación. Nodo: un nodo es una base de datos que participa en el proceso de replicación. Set de replicación: Es un conjunto de tablas y secuencias que se replicaran. Nótese que no se replican todas las tablas, sino que se tienen que especificar explícitamente. Origen, proveedores y suscriptores: Cada set de replicación tiene un nodo de origen, que es la base de donde se obtiene información. Los nodos que reciben la información se denominan nodos suscriptores. Dichos nodos suscriptores se pueden convertir en proveedores si a su vez tienen otros nodos suscriptores. Demonios slon: Para cada nodo en el clúster, existe un proceso slon que administra la actividad de replicación para ese nodo. Comandos slonik: es un pequeño intérprete de comandos que incluye comandos utilizados para la manipulación del clúster de replicación. También se recomienda tomar en cuenta las siguientes consideraciones:  Utilizar exactamente la misma versión de Slony en todos los nodos.  Utilizar versiones 8.3 o superior de PostgreSQL para utilizar Slony-I 2.0.4 4
  • 7.  Sincronización de hora de sistemas operativos donde estén las bases involucradas en la replicación. Replicando una base de datos de PostgreSQL con Slony-I en Windows Requisitos: Para la realización de nuestra replicación es necesario tener instaladas las siguientes herramientas:  PostgreSQL 8.4 o compatible  PGadmin III  Slony-I 2.0.4 Descripción de los elementos: PostgreSQL 8.4: es el gestor de base de datos, el cual puede ser instalado desde el gestor de paquetes de Linux o se puede descargar desde su sitio oficial (http://www.postgresql.org/ftp/binary) tanto para Linux como para Windows. PGadmin III: como se dijo anteriormente existen varias herramientas para la manipulación de bases de datos PostgreSQL entre los que esta PGadmin. PGadmin III es una interfaz gráfica que soporta todas las características de PostgreSQL y facilita enormemente la administración. La aplicación también incluye un editor SQL con resaltado de sintaxis, un editor de código de la parte del servidor, un agente para lanzar scripts programados, soporte para el motor de replicación Slony-I y mucho más. Al igual que PostgreSQL esta herramienta también se encuentra disponible en los repositorios de Linux y se puede instalar de esa forma o descargándolo de su sitio web oficial (http://www.postgresql.org/ftp/pgadmin3/release/). Slony-I 2.0.4: como ya vimos anteriormente Slony es el software que permite la replicación en PostgreSQL, su instalación puede ser también desde el gestor de paquetes en Linux o utilizando el Stack Builder que es una herramienta que se instala cuando instalamos el gestor PostgreSQL en windows y sirve para instalar complementos para dicho gestor. 5
  • 8. Para instalar Slony-I desde el Stack Builder debemos seguir los siguientes pasos: 1- Inicio 2- Todos los programas 3- PostgreSQL 4- Aplicación Stack Builder, clic derecho ejecutar como administrador y nos aparecerá la siguiente pantalla. 5- En la pestaña seleccionamos PostgreSQL 8.4 on port 5432 como se muestra en la siguiente imagen. Presionamos siguiente. 6
  • 9. 6- Al dar clic en siguiente se no muestra una ventana con las categorías de complementos que podemos instalar para el caso debemos elegir soluciones de replicación. 7- Y chequeamos Slony-I y siguiente. 7
  • 10. 8- Nos aparecerá la ventana con el resumen de los paquetes seleccionados para instalar. 9- Para el caso solo instalaremos Slony-I. Si todo es correcto presionamos siguiente. Se instalaran los paquetes seleccionados y le damos finalizar. Cabe mencionar que para realizar la instalación de este modo debemos de tener conexión a internet. Con los pasos anteriores ya tendremos a disposición Slony-I 2.0.4 para PostgreSQL 8.4 CASO PRACTICO DE REPLICACION. Ya teniendo todo lo necesario pasamos a lo que es la replicación en sí. A continuación se muestra como realizar dicha replicación de tipo maestro- esclavo en Windows 7 con los detalles mostrados en la imagen. 8
  • 11. Consideraciones:  Ambos nodos deberán tener instalado PostgreSQL 8.4, Slony-I y PGadmin.  La base de datos a replicar deberá crearse tanto en el nodo maestro como en el nodo esclavo y debe de ser idéntica, a sea debe llamarse igual tanto la BD como las tablas y campos, tener los mismos campos, etc. Paso 1: Crear la base de datos 1.1- Crear la base de datos que queremos replicar (si ya se tiene creada la BD saltar a siguiente paso) para el caso utilizaremos la base de datos mini_agenda la cual se muestra a continuación: 1.2- El siguiente paso será pasar la base de datos al gestor PostgreSQL 8.4 para ello utilizaremos PGadmin III, deberá quedar de la siguiente manera: 9
  • 12. 1.3- Esta configuración debe de estar en ambos nodos Paso 2: Configurar el Slony-I 2.1- Ya teniendo creada la base de datos, el siguiente paso es agregar desde el PGadmin la ruta a Slony-I para ello nos vamos a FileOpciones slony_I pathc:program Files PostgreSQL8.4 recordemos que esta es la ruta donde se instalo Slony-I por lo que si especificamos otro directorio al instalarlo esta ruta variaría. 10
  • 13. 2.2- Ademas de agregar la ruta anterior, debemos de verificar que tengamos disponible el lenguaje plpgsql. Si no esta disponible debemos agregarlo de la siguiente manera 11
  • 14. FileOptionsdisplay y chequiamos Lenguages Luego clic derecho sobre lenguajenuevo lenguajeplpgsql 12
  • 15. Paso 3: configurar firewall de windows 3.1- Crear una nueva regla de entrada para que nuestro firewall permita la conexión a través del puerto 5432. Para ello nos dirigimos a Panel de controlSistema y seguridadfirewall de Windowsconfiguración avanzadareglas de entradanueva reglapuerto. Al hacer clic en siguiente nos aparece la ventana para especificar puerto y protocolo para el caso elegimos TCPPuertos locales especificos. El puerto en este caso es el de postgeSQL o sea 5432 13
  • 16. Siguiente y permitir conexión Después seleccionamos dominio y privado 14
  • 17. Luego le colocamos un nombre y finalizar Listo ya tenemos creada nuestra entrada para permitir conexiones remotas en Windows. Paso 4: configurar el archivo pg_hba.conf 4.1- abrir el archivo C:Program Files PostgreSQL 8.4datapg_hba.conf. Este deberá ser abierto con el bloc de notas. 4.2-modificar el archivo para que quede de la siguiente manera # TYPE DATABASE USER CIDR-ADDRESS METHOD # IPv4 local connections: host all all 127.0.0.1/32 md5 #maestro host all all 10.0.10.2/24 md5 #esclavo host all all 10.0.10.3/24 md5 # IPv6 local connections: host all all ::1/128 md5 Esto se realizará para todas las maquinas donde se desea replicar. 15
  • 18. 5- Crear un script con el bloc de notas para el nodo maestro y lo llamaremos Maestro.txt: cluster name = slony_MINI_AGENDA; node 1 admin conninfo = 'dbname = MINI_AGENDA host = 10.0.10.2 user = postgres password = admin'; node 2 admin conninfo = 'dbname = MINI_AGENDA host = 10.0.10.3 user = postgres password = admin'; init cluster (id=1, comment = 'nodo maestro'); create set (id=1, origin=1, comment= 'aqui van todas mis tablas'); set add table (set id=1, origin=1, id=1, fully qualified name = 'public.Contacto', comment= 'mi tabla contacto'); set add table (set id=1, origin=1, id=1, fully qualified name = 'public.Telefono', comment= 'mi tabla telefono'); store node (id = 2, comment = 'nodo esclavo', EVENT NODE = 1); store path (server = 1, client = 2, conninfo = 'dbname = MINI_AGENDA host = 10.0.10.2 user = postgres password = admin'); store path (server = 2, client = 1, conninfo = 'dbname = MINI_AGENDA host = 10.0.10.3 user = postgres password = admin'); store listen (origin = 1, provider = 1, receiver = 2); store listen (origin = 2, provider= 2, receiver = 1); Este archive debera guardarce en la siguiente ubicacion C:Archivos de ProgramasPostgreSQL8.4bin 6- de la misma manera crearemos un script llamado Suscriptor.txt para el nodo esclavo, este será guardado en C:Archivos de ProgramasPostgreSQL8.4bin pero del nodo esclavo. 16
  • 19. cluster name = slony_MINI_AGENDA; node 1 admin conninfo = 'dbname= MINI_AGENDA host = 10.0.10.2 user = postgres password = admin'; node 2 admin conninfo = 'dbname= MINI_AGENDA host =10.0.10.3 user = postgres password = admin'; subscribe set (id = 1, provider = 1, receiver = 2, forward = yes); 8- Ejecutar el script en el nodo maestro. 8.1- abrir la consola de Windows y ejecutamos la siguiente línea: C:Archivos de ProgramasPostgreSQL8.4binslonik Maestro.txt 9- Ejecutar el script en el nodo esclavo. 9.1- abrir la consola de Windows y ejecutamos la siguiente línea: C:Archivos de ProgramasPostgreSQL8.4binslonik Suscriptor.txt 17
  • 20. 10- Ejecutar siempre desde la consola de Windows en la maquina maestra y esclava la siguiente instrucción: C:Archivos de ProgramasPostgreSQL8.4binslon slony_MINI_AGENDA “dbname = MINI_AGENDA user = postgres password = admin” 18
  • 21. Desde este momento la base de datos MINI_AGENDA estará replicando cualquier modificación de sus tablas. OjO NO DEBEMOS CERRAR LA CONSOLA EN NINGUN NODO. 19