Em 18 de abril de 2014 04:42, Flavio Henrique Araque Gurgel < [email protected]> escreveu:
> Tenho um ambiente com dois servidores, sendo um master (virtualizado) >> com postgres 9.1.11, e a replica (maquina fisica) com postgres 9.1.12. >> >> Depois de executar o pg_basebackup e criar o recovery.conf na subida do >> serviço na replica a mensagem do log é a seguinte: >> >> Ja verifiquei permissões, usuario e tudo está correto. >> > > Acho que não. Veja mais abaixo: > > > Alguém saberia me ajudar ou indicar o caminho da luz? >> >> agradeço.... >> >> Recovery.conf >> >> standby_mode = 'on' >> restore_command = 'scp [email protected]:/backup/archive/%f %p ' >> primary_conninfo = 'host=guardiandb.local.buonny port=5432 >> user=replicacao password=bUonnyRPL13 application_name=guardian' >> trigger_file = '/tmp/psql.trigger' >> > > Verifique se seu restore_command é válido testando manualmente. Não vi > erros no log (pode ser que você tenha cortado sem querer) e pode ser que o > restore_command esteja falhando por algum motivo desconhecido. > Flávio, Fiz o comando com o usuario postgres: restore_command = 'scp [email protected]:/backup/archive/%f %p ' e funcionou, não pediu senha conforme o esperado. > > Log Master (fica em loop) >> >> sent 16779372 bytes received 31 bytes 6711761.20 bytes/sec >> total size is 16777216 speedup is 1.00 >> 2014-04-16 17 <callto:2014-04-16%2017>:35:20 BRT [9472]: [1-1] >> >> user=replicacao,db=[unknown] FATAL: requested WAL segment >> 00000002000038C0000000BA has already been removed >> sending incremental file list >> 00000002000038D400000084 >> 2014-04-16 17 <callto:2014-04-16%2017>:35:25 BRT [9614]: [1-1] >> >> user=replicacao,db=[unknown] FATAL: requested WAL segment >> 00000002000038C0000000BA has already been removed >> > > Justamente, o escravo deveria, ao receber estas mensagens do master, > chavear para o restore_command. > > Mas pode ser que os outros erros abaixo estejam atrapalhando *antes* > disso. Veja: > > sent 16779372 bytes received 31 bytes 11186268.67 bytes/sec >> total size is 16777216 speedup is 1.00 >> >> >> Log replica >> >> >> root@guardian:/# tail -f nohup.out >> NOTICE: pg_stop_backup cleanup done, waiting for required WAL segments >> to be archived >> NOTICE: pg_stop_backup complete, all required WAL segments have been >> archived >> pg_basebackup: base backup completed >> Ativando postgres com restore >> * Starting PostgreSQL 9.1 database server >> ...done. >> Parando servico postgres >> * Stopping PostgreSQL 9.1 database server >> ...done. >> Removendo base, antes de iniciar o restore >> Preparar tablespaces e permissoes >> Configurando permissoes e usuarios >> Fazendo Backup >> 1700696644 <callto:1700696644>/1700696644 <callto:1700696644> kB (100%), >> >> 6/6 tablespaces b) >> NOTICE: pg_stop_backup complete, all required WAL segments have been >> archived >> > > Estas mensagens acima são do master, ok? > Na verdade, do pg_basebackup. > Esta maquina é a slave que através de um script executa o pg_basebackup. Se observar acima o script lança um label: Configurando permissoes e usuarios. Nesse momento o script (Configurando permissoes e usuarios) executa os seguintes comandos: PG_XLOG=/var/lib/postgresql/9.1/main/pg_xlog BACKUP_IP=miura RESTORE_FOLDER=/var/lib/postgresql/9.1/main DADOS=/dados #postgres/database INDICES=/indices #postgres/database #DADOS2=/dados2 TBLSP1=/home/postgresql/tblsp1 TBLSP2=/var/postgresql/tblsp2 TBLSP3=/home2/postgresql echo 'Configurando permissoes e usuarios' chown -R postgres.postgres $INDICES chown -R postgres.postgres $DADOS chown -R postgres.postgres $TBLSP1 chown -R postgres.postgres $TBLSP2 chown -R postgres.postgres $TBLSP3 chown -R postgres.postgres $RESTORE_FOLDER chmod -R 0700 $DADOS chmod -R 0700 $INDICES chmod -R 0700 $TBLSP1 chmod -R 0700 $TBLSP2 chmod -R 0700 $TBLSP3 chmod -R 0700 $RESTORE_FOLDER echo 'Fazendo Backup' pg_basebackup -D $RESTORE_FOLDER -Fp -v -P -U replicacao -h $MASTER echo 'Ativando postgres com restore' cp /recovery.conf $RESTORE_FOLDER chown -R postgres.postgres $RESTORE_FOLDER service postgresql start > pg_basebackup: base backup completed >> Ativando postgres com restore >> * Starting PostgreSQL 9.1 database server >> * The PostgreSQL server failed to start. Please check the log output: >> 2014-04-17 18 <callto:2014-04-17%2018>:54:21 BRT [2194]: [1-1] user=,db= >> >> LOG: could not open temporary-files directory >> "pg_tblspc/850298/PG_9.1_201105231/pgsql_tmp": Permission denied >> > > Ooops: permissão negada no diretório da sua tablespace! > Como explico acima o script que fica encarregado de criar as pastas e dar permissão, acredito que o script esteja rodando corretamente, pois não lança erro. Tive um problema nesse servidor uma vez, de ele dar erros nos discos e por este motivo o linux, deixa a partição como somente leitura, mas acredito que este não seria o caso. > > 2014-04-17 18 <callto:2014-04-17%2018>:54:21 BRT [2194]: [2-1] user=,db= >> >> LOG: could not open tablespace directory >> "pg_tblspc/850298/PG_9.1_201105231": Permission denied >> 2014-04-17 18 <callto:2014-04-17%2018>:54:21 BRT [2194]: [3-1] user=,db= >> >> LOG: could not open temporary-files directory >> "pg_tblspc/16384/PG_9.1_201105231/pgsql_tmp": Permission denied >> 2014-04-17 18 <callto:2014-04-17%2018>:54:21 BRT [2194]: [4-1] user=,db= >> >> LOG: could not open tablespace directory >> "pg_tblspc/16384/PG_9.1_201105231": Permission denied >> 2014-04-17 18 <callto:2014-04-17%2018>:54:21 BRT [2194]: [5-1] user=,db= >> >> LOG: could not open temporary-files directory >> "pg_tblspc/866627/PG_9.1_201105231/pgsql_tmp": Permission denied >> 2014-04-17 18 <callto:2014-04-17%2018>:54:21 BRT [2194]: [6-1] user=,db= >> >> LOG: could not open tablespace directory >> "pg_tblspc/866627/PG_9.1_201105231": Permission denied >> 2014-04-17 18 <callto:2014-04-17%2018>:54:21 BRT [2194]: [7-1] user=,db= >> >> LOG: could not open temporary-files directory >> "pg_tblspc/850338/PG_9.1_201105231/pgsql_tmp": Permission denied >> 2014-04-17 18 <callto:2014-04-17%2018>:54:21 BRT [2194]: [8-1] user=,db= >> >> LOG: could not open tablespace directory >> "pg_tblspc/850338/PG_9.1_201105231": Permission denied >> 2014-04-17 18 <callto:2014-04-17%2018>:54:21 BRT [2194]: [9-1] user=,db= >> >> LOG: could not open temporary-files directory >> "pg_tblspc/16385/PG_9.1_201105231/pgsql_tmp": Permission denied >> 2014-04-17 18 <callto:2014-04-17%2018>:54:21 BRT [2194]: [10-1] >> >> user=,db= LOG: could not open tablespace directory >> "pg_tblspc/16385/PG_9.1_201105231": Permission denied >> 2014-04-17 18 <callto:2014-04-17%2018>:54:21 BRT [2202]: [1-1] >> >> user=[unknown],db=[unknown] LOG: incomplete startup packet >> 2014-04-17 18 <callto:2014-04-17%2018>:54:21 BRT [2201]: [1-1] user=,db= >> >> LOG: database system was interrupted; last known up at 2014-04-17 18 >> <callto:2014-04-17%2018>:54:26 BRT >> 2014-04-17 18 <callto:2014-04-17%2018>:54:21 BRT [2201]: [2-1] user=,db= >> >> LOG: creating missing WAL directory "pg_xlog/archive_status" >> 2014-04-17 18 <callto:2014-04-17%2018>:54:21 BRT [2201]: [3-1] user=,db= >> >> LOG: could not open tablespace directory >> "pg_tblspc/850298/PG_9.1_201105231": Permission denied >> 2014-04-17 18 <callto:2014-04-17%2018>:54:21 BRT [2201]: [4-1] user=,db= >> >> LOG: could not open tablespace directory >> "pg_tblspc/16384/PG_9.1_201105231": Permission denied >> 2014-04-17 18 <callto:2014-04-17%2018>:54:21 BRT [2201]: [5-1] user=,db= >> >> LOG: could not open tablespace directory >> "pg_tblspc/866627/PG_9.1_201105231": Permission denied >> 2014-04-17 18 <callto:2014-04-17%2018>:54:21 BRT [2201]: [6-1] user=,db= >> >> LOG: could not open tablespace directory >> "pg_tblspc/850338/PG_9.1_201105231": Permission denied >> 2014-04-17 18 <callto:2014-04-17%2018>:54:21 BRT [2201]: [7-1] user=,db= >> >> LOG: could not open tablespace directory >> "pg_tblspc/16385/PG_9.1_201105231": Permission denied >> 2014-04-17 18 <callto:2014-04-17%2018>:54:22 BRT [2211]: [1-1] >> >> user=postgres,db=postgres FATAL: the database system is starting up >> scp: /backup/archive/00000002.history: No such file or directory >> 2014-04-17 18 <callto:2014-04-17%2018>:54:22 BRT [2201]: [8-1] user=,db= >> LOG: entering standby mode >> 2014-04-17 18 <callto:2014-04-17%2018>:54:22 BRT [2217]: [1-1] >> >> user=postgres,db=postgres FATAL: the database system is starting up >> 2014-04-17 18 <callto:2014-04-17%2018>:54:23 BRT [2220]: [1-1] >> >> user=postgres,db=postgres FATAL: the database system is starting up >> 2014-04-17 18 <callto:2014-04-17%2018>:54:23 BRT [2201]: [9-1] user=,db= >> >> LOG: restored log file "00000002000038F30000006F" from archive >> 2014-04-17 18 <callto:2014-04-17%2018>:54:23 BRT [2226]: [1-1] >> >> user=postgres,db=postgres FATAL: the database system is starting up >> 2014-04-17 18 <callto:2014-04-17%2018>:54:24 BRT [2232]: [1-1] >> >> user=postgres,db=postgres FATAL: the database system is starting up >> 2014-04-17 18 <callto:2014-04-17%2018>:54:24 BRT [2201]: [10-1] >> >> user=,db= LOG: restored log file "00000002000038F300000051" from archive >> 2014-04-17 18 <callto:2014-04-17%2018>:54:24 BRT [2201]: [11-1] >> >> user=,db= LOG: could not open tablespace directory >> "pg_tblspc/850298/PG_9.1_201105231": Permission denied >> 2014-04-17 18 <callto:2014-04-17%2018>:54:24 BRT [2201]: [12-1] >> >> user=,db= LOG: could not open tablespace directory >> "pg_tblspc/16384/PG_9.1_201105231": Permission denied >> 2014-04-17 18 <callto:2014-04-17%2018>:54:24 BRT [2201]: [13-1] >> >> user=,db= LOG: could not open tablespace directory >> "pg_tblspc/866627/PG_9.1_201105231": Permission denied >> 2014-04-17 18 <callto:2014-04-17%2018>:54:24 BRT [2201]: [14-1] >> >> user=,db= LOG: could not open tablespace directory >> "pg_tblspc/850338/PG_9.1_201105231": Permission denied >> 2014-04-17 18 <callto:2014-04-17%2018>:54:24 BRT [2201]: [15-1] >> >> user=,db= LOG: could not open tablespace directory >> "pg_tblspc/16385/PG_9.1_201105231": Permission denied >> 2014-04-17 18 <callto:2014-04-17%2018>:54:24 BRT [2201]: [16-1] >> >> user=,db= LOG: redo starts at 38F3/510000A0 >> 2014-04-17 18 <callto:2014-04-17%2018>:54:24 BRT [2201]: [17-1] >> >> user=,db= FATAL: could not stat directory >> "pg_tblspc/866627/PG_9.1_201105231/124383": Permission denied >> 2014-04-17 18 <callto:2014-04-17%2018>:54:24 BRT [2201]: [18-1] >> >> user=,db= CONTEXT: xlog redo insert: rel 866627/124383/867766; tid >> 60999/407 >> 2014-04-17 18 <callto:2014-04-17%2018>:54:24 BRT [2194]: [11-1] >> >> user=,db= LOG: startup process (PID 2201) exited with exit code 1 >> 2014-04-17 18 <callto:2014-04-17%2018>:54:24 BRT [2194]: [12-1] >> >> user=,db= LOG: terminating any other active server processes >> > > Servidor morreu de propósito por causa da falta de permissão. > Cheque as permissões novamente e lembre-se das tablespaces. > Irei verificar as permissões novamente, mas o script que fica encarregado disso, muito estranho. Master (virtualizado) com postgres 9.1.11, e a replica (maquina fisica) com postgres 9.1.12. As versões de release diferentes, poderia ser a causa? Desde já, agradeço a ajuda. []s > []s > Flavio Gurgel > _______________________________________________ > 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
