Fernando Ike escreveu:
> Em Thu, 20 Dec 2007 03:23:14 -0800 (PST)
> mateusgra <[EMAIL PROTECTED]> escreveu:
>
>> Executei o comando SELECT pg_start_backup('bk') e depois SELECT
>> pg_stop_backup();
>>
>> No servidor backup configurei o arquivo restore.conf e inicei o
>> postgres, o BD começou a fazer o restore até aqui tudo OK. So que
>> nesse intervalo do restore, dei uma carga grande no BD principal e
>> ele começou a copiar outros arquivo do WAL para o servidor copia
>> porque os arquivos WAL estavam sendo renomeados.
>>
>> Pelo que percebi, no log o BD começou a restaurar os arquivos copiados
>> depois do pg_stop_backup(), que são os arquivos que o servidor
>> começou a copiar depois dessa carga de dados. Apos o termino do
>> restore executei outro pg_start_backup('bk'); e pg_stop_backup();
>>
>> Qdo fui restaurar novamente ocorreu o erro:
>>
>> 2007-12-17 09:50:11 LOG: database system was shut down at 2007-12-17
>> 09:50:07 Hora padrão Atlântico Central
>> 2007-12-17 09:50:11 LOG: starting archive recovery
>> 2007-12-17 09:50:11 LOG: restore_command = "cp c:\mnt\%f %p"
>> cp: c:\mnt\00000001.history: No such file or directory
>> 2007-12-17 09:50:11 LOG: restored log file "0000000100000002000000A2"
>> from archive
>> 2007-12-17 09:50:11 LOG: record with zero length at 2/A20004D0
>> 2007-12-17 09:50:11 LOG: invalid primary checkpoint record
>> 2007-12-17 09:50:11 LOG: restored log file "0000000100000002000000A2"
>> from archive
>> 2007-12-17 09:50:11 LOG: record with zero length at 2/A2000480
>> 2007-12-17 09:50:11 LOG: invalid secondary checkpoint record
>> 2007-12-17 09:50:11 PANIC: could not locate a valid checkpoint record
>> This application has requested the Runtime to terminate it in an
>> unusual way.
>> Please contact the application's support team for more information.
>> 2007-12-17 09:50:11 LOG: startup process (PID 4012) exited with exit
>> code 3 2007-12-17 09:50:11 LOG: aborting startup due to startup
>> process failure 2007-12-17 09:50:12 LOG: logger shutting down
>>
>> So que esse arquivo "0000000100000002000000A2" foi o ultimo arquivo
>> que ele gerou no pg_start_backup('bk'); e pg_stop_backup(); ele
>> consta na pasta mnt depois disso não consigo restaurar copias
>> posteriores a essa ele sempre pede esse arquivo, o arquivo ja consta
>> no pg_xlog do servidor copia ? Ja limpei a pasta mnt com os antigos e
>> nada se alguem puder ajudar ?
>
> Eu não entendi o procedimento que você fez mas o fluxo é assim.
>
>
> master -> wal -> dir_archives -> dir-standby ->
>
> -> recovery -> standby.
>
> Você precisa passar o argumento correto para o pg_ctl do standby os
> processos filhos dele, inclusive a rotina do recovery.conf. Se não
> fizer isso o pg_ctl somente fecha os processos do PostgreSQL.
>
> Exemplo.
>
> pg_ctl -w -D standby -m fast stop
>
>
> O Simmon Riggs criou o pg_standby que está no contrib do PostgreSQL
> 8.3 mas o pg_standby funciona bem com a versão 8.2. Vale a pena usá-lo
> pois o pg_standby facilita bastante a automação. ;)
>
>
> dois centavos,
Eu segui o manual
http://www.postgresql.org/docs/8.2/interactive/continuous-archiving.html
A unica coisa que fiz diferente é que no momento do restore no servidor
copia eu executei uma carga grande de dados no servidor master, então
como os id dos arquivos WAL começaram a ser renomeados sem precisar dar
o pg_start_backup('bk'); e pg_stop_backup(); ele automaticamente copia
os arquivos para pasta onde eu determinei, mas como o restore estava em
andamento ele restaurou esse novos arquivos tb até aqui deu tudo certo.
O problema é qdo eu fui gerar um novo pg_start_backup('bk'); e
pg_stop_backup(); para restaurar outros dados que inseri depois e etc ai
ocorreu o erro acima. Pelo que percebi o arquivo
0000000100000002000000A2 ja existia na copia so que ele foi gerado
depois no servidor porque no servidor não existia.
Pode ser porque eu não executei o comando desse jeito pg_ctl -w -D
standby -m fast stop. Eu levantei o banco com os comando padrão pode ser
que apos ele restaurar os dados como o BD copia entrou no ar criou o
seu proprio WAL não sei se foi isso!
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral