Valeu novamente pela ajuda.Fiz o que você me informou, esta
alteração errada, corrigir, porem o mesmo não replicou.Segui
este script abaixo que você postou, este mesmo e rodando no servidor que esta o
banco, então adaptei para os IPs e nomes e o quando vou rodar o mesmo da esta
mensagem abaixo:<stdin>:7: ERROR: syntax error at or near clusterValeu 
novamente.> Bom... analisando um pouquinho melhor achei outra
coisa errada;> > "node 3 admin conninfo = 'dbname=$DB2>
host=$H2 user=$U password=$SENHA port=5573';"> > Repare que vc
colocou como host "H2" ao invés de "H3".> >
Para dar certo o que vc quer fz, tudo o que for feito para o primeiro slave
deverá ser> feito igualmente para os outros conforme suas
características próprias.> > Tenho um exemplo aqui e me
guio sempre por ele. Dá uma olhada:> > $SLONIK <<_EOF_>         #>
---------------------------------------------------------------------------------------->
         #Define o nome do cluster de
replicação> >        
cluster name = $CLUSTERNAME;> >
        #>
---------------------------------------------------------------------------------------->
         # As configurações
"admin conninfo" são usadas pelo slonik para conectar aos>
nodos> >         node 1 admin
conninfo = 'dbname=$MASTERDBNAME user=$REPLICATIONUSER> password=$PASSWORD
host=$MASTERHOST';>         node 2 admin
conninfo = 'dbname=$SLAVEDBNAME user=$REPLICATIONUSER> password=$PASSWORD
host=$SLAVEHOST1';>         node 3 admin
conninfo = 'dbname=$SLAVEDBNAME user=$REPLICATIONUSER> password=$PASSWORD
host=$SLAVEHOST2';> >         #>
---------------------------------------------------------------------------------------->
         # Inicia o primeiro nodo, o qual deve
ser "1". Isso cria o schema _$CLUSTERNAME> contendo todos os objetos
específicos>         # do sistema de
replicação> >        
init cluster ( id=1, comment = 'Nodo Master');> >
        #>
---------------------------------------------------------------------------------------->
         # O Slony-I organiza tabelas dentro de
conjuntos.> >         # CREATE
SET> >         # ID = ival -> ID
do conjunto (set) a ser criado>         #
ORIGIN = ival -> Nodo de origem inicial do conjunto>
       >
        create set (id=1, origin=1, comment='Todas as
tabelas');> >         # SET ADD
TABLE> >         # SET ID = ival
-> ID do nodo em que a tabela será adicionada>
        # ORIGIN = ival -> Nó de origem
para este conjunto.>         # ID = ival
-> ID único da tabela.>         #
FULLY QUALIFIED NAME = 'string' -> esquema.tabela> >
        set add table (set id=1, origin=1, id=1,
fully qualified name = 'public.tb_1',> comment='tabela 1');>
        set add table (set id=1, origin=1, id=2,
fully qualified name = 'public.tb_2',> comment='tabela 2');>
        set add table (set id=1, origin=1, id=3,
fully qualified name = 'public.tb_3',> comment='tabela 3');>
        set add table (set id=1, origin=1, id=4,
fully qualified name = 'public.tb_4',> comment='tabela 4');>
       >
        #>
---------------------------------------------------------------------------------------->
         # Criação do segundo
nodo (slave1) diz aos dois nodos como se conectar ao outro> e como eles devem
ouvir para eventos> >         #
STORE NODE> >         # ID = ival
-> O único, imutável ID numérico do novo nodo. O ID é
imutável por> ser usado como base para comunicação>         # entre os nodos.>
        # COMMENT = 'description' -> Um texto
descritivo adicionado à entrada do nodo na> tabela sl_node>
        # EVENT NODE = ival -> O ID do nodo usado
para criar a configuração de evento> que notifica a todos os nodo
existentes>         # sobre o novo nodo.> >         store node (id=2, comment =
'Nodo slave 1', event node=1);> >
        # STORE PATH> >
        # SERVER = ival -> ID do nodo de banco de
dados para conectar.>         # CLIENT =
ival -> ID do nodo do daemon de replicação se>
conectar.                     >         # CONNINFO = string ->
PQconnectdb() argumento para estabelecer a conexão.>
        # CONNRETRY = ival -> Número em
segundos para aguardar outra tentativa para> conectar é feita em caso
servidor>         # indisponível.
Padrão é 10.   > >
        store path (server = 1, client = 2,
conninfo='dbname=$MASTERDBNAME> user=$REPLICATIONUSER password=$PASSWORD
host=$MASTERHOST');>         store path
(server = 2, client = 1, conninfo='dbname=$SLAVEDBNAME> user=$REPLICATIONUSER
password=$PASSWORD host=$SLAVEHOST1');>
       >
        # Criação do terceiro nodo
(slave2)>         store node (id=3, comment
= 'Nodo slave 2', event node=1);>        
store path (server = 1, client = 3, conninfo='dbname=$MASTERDBNAME>
user=$REPLICATIONUSER password=$PASSWORD host=$MASTERHOST');>
        store path (server = 3, client = 1,
conninfo='dbname=$SLAVEDBNAME> user=$REPLICATIONUSER password=$PASSWORD
host=$SLAVEHOST2');>        >
_EOF_> > > > > --- Em seg, 17/5/10,
[email protected] <[email protected]> escreveu:> >De: 
[email protected] <[email protected]>> Assunto: 
[pgbr-geral] Slony com 3 Slaves> Para:
[email protected]> Data: Segunda-feira, 17 de Maio de 2010,
17:17> > Olá a todos!> Talvez possa me ajudar.> Consegui fazer o slony 
replicar> master para um slave, porem quando eu
fui tentar replicar de um master para varios> slaves o terceiro nodo não
recebe a replicação.> Abaixo segue a> conf do arquivo
que comunica com o cluster.> > #!/bin/sh> CLUSTER=sief> #DEFINA AQUI O NOME DO 
SEU CLUSTER> DB1=sief #NOME DO BANCO DE DADOS
DO> COMPUTADOR1> DB2=sief #NOME DO BANCO DE DADOS DO COMPUTADOR2> DB3=sief 
#NOME DO> BANCO DE DADOS DO COMPUTADOR3>
H1=192.168.1.254 #HOSTNAME (NOME DA MAQUINA), DO> COMPUTADOR1>
H2=192.168.1.29 #HOSTNAME DO SEGUNDO COMPUTADOR> H3=192.168.10.10 
#HOSTNAME DO SEGUNDO COMPUTADOR> U=postgres #USUARIO PARA A>
REPLICAÇÃO, PADRÃO: POSTGRES> SENHA=SENHA>
slonik> <<_EOF_> cluster name = $CLUSTER;> node 1 admin
conninfo = 'dbname=$DB2> host=$H1 user=$U password=$SENHA port=5573';>
node 2 admin conninfo = 'dbname=$DB2> host=$H2 user=$U password=$SENHA
port=5573';> node 3 admin conninfo = 'dbname=$DB2> host=$H2 user=$U
password=$SENHA port=5573';> > init cluster (id = 1, comment 'Cluster
Master');> > #especifica o set de replicacao> create set (id
= 1,> origin = 1, comment = 'objetos replicados');> >
#tabelas que seram replicadas> set add table(set id=1,origin=1,id=10,full
qualified name='public.adm_enroll');> > #no escravo e caminho que ele
fara, especificar event node !> store node (id> = 3, event node=
1,comment = 'Slave');> store path (server = 1, client = 2,conninfo> =
'dbname=$DB1 host=$H1 port=5573 user=$U password=$SENHA');> store path (server
2, client = 1,conninfo = 'dbname=$DB2 host=$H2 port=5573 user=$U>
password=$SENHA');> store path (server = 3, client = 1,conninfo = 'dbname=$DB3
host=$H3 port=5573 user=$U> password=$SENHA');> > >
store listen (origin = 1, provider = 1, receiver 2);> store listen (origin = 2,
provider = 2, receiver = 1);> store listen> (origin = 3, provider = 2,
receiver = 1);> Este script eu rodo no servidor, ja nos 2> cliente eu
rodo este script de sicronizar abaixo:> #!/bin/sh> CLUSTERNAME=sief> 
MASTERDBNAME=sief> SLAVEDBNAME=sief>
REPLICATIONUSER=postgres> SENHA=SENHA> MASTERHOST=192.168.1.254> 
SLAVEHOST=192.168.1.29> slonik <<_EOF_>
        # ---->
        # This defines which namespace the>
replication system uses>         # ---->         cluster name = $CLUSTERNAME;>
        # ---->
        # Admin conninfo's are used by the slonik> program to connect>         
# to the
node> databases. So these are the PQconnectdb arguments>
        # that connect from the administrators> workstation (where>         # 
slonik
is> executed).>         # ---->         node 1 admin conninfo
'dbname=$MASTERDBNAME host=$MASTERHOST port=5573> user=$REPLICATIONUSER> 
password=$SENHA';>         node 2
admin conninfo> = 'dbname=$SLAVEDBNAME host=$SLAVEHOST port 5573
user=$REPLICATIONUSER> password=$SENHA';>
        # ---->
        # Node 2 subscribes set 1>
        # ---->
        subscribe set ( id = 1, provider = 1,> receiver = 2, forward = no);> 
_EOF_> > Segundo
slave:> #!/bin/sh> CLUSTERNAME=sief> MASTERDBNAME=sief> SLAVEDBNAME=sief> 
REPLICATIONUSER=postgres> SENHA=SENHA> MASTERHOST=192.168.1.254> 
SLAVEHOST=192.168.10.10> slonik
<<_EOF_>         # ---->
        # This defines which namespace the>
replication system uses>         # ---->         cluster name = $CLUSTERNAME;>
        # ---->
        # Admin conninfo's are used by the slonik> program to connect>         
# to the
node> databases. So these are the PQconnectdb arguments>
        # that connect from the administrators> workstation (where>         # 
slonik
is> executed).>         # ---->         node 1 admin conninfo
'dbname=$MASTERDBNAME host=$MASTERHOST port=5573> user=$REPLICATIONUSER> 
password=$SENHA';>         node 2
admin conninfo> = 'dbname=$SLAVEDBNAME host=$SLAVEHOST port 5573
user=$REPLICATIONUSER> password=$SENHA';>
        # ---->
        # Node 2 subscribes set 1>
        # ---->
        subscribe set ( id = 1, provider = 1,> receiver = 2, forward = no);> 
_EOF_> Alguem sabe o que pode
ser? lembrando que> se eu retirar o 3 nodo replica 100%.> -----Anexo
incorporado-----> > _______________________________________________> pgbr-geral 
mailing list> [email protected]>
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral> > > >     
  _______________________________________________> pgbr-geral mailing list> 
[email protected]>
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral>
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a