PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Logs de arquivo compactado do PostgreSQL no Windows

Muitos blogaram e ofereceram claramente sobre como compactar logs de arquivo no PostgreSQL, desejo compartilhar uma versão curta do meu lado, que está no Windows.

Se o armazenamento de arquivo é uma preocupação, você pode escolher o recurso de registro de arquivo compactado no PostgreSQL.

“archive_command(string)” em $PGDATA/postgresql.conf , é como um comando shell para executar o que é passado na seção string para copiar o arquivo fonte completo (segmento de arquivo WAL em $PGDATA/pg_xlog ) para o destino(LOCAL DO ARQUIVO ). “string” pode ser qualquer coisa como o próprio script de shell (lote no Windows), utilitários de compactação do SO e uma ferramenta especial pg_compresslog. No Windows, cmd.exe executará o comando passado em archive_command “string”.

Como estamos aplicando na plataforma Windows, os pré-requisitos são:
  1. O diretório de arquivos deve ter acesso completo ao usuário postgres. (“C:Program FilesPostgreSQL9.2archives” no meu caso)
  2. Utilitário GZIP da versão da janela. Embora existam vários bons utilitários de compactação de variantes do Windows, escolhi o gzip porque é compatível com Linux e Windows.
  3. Gzip.exe deve ter acesso ao usuário Postgres e também no PATH. (“C:Program FilesGnuWin32bin” no meu caso).

Supondo que todos os pré-requisitos estejam em vigor e a próxima etapa seja editar o arquivo $PGDATA/postgresql.conf e alterar os parâmetros relacionados ao arquivamento e reiniciar o cluster:
wal_level=archive
archive_mode=on
archive_command = '"C:\Program Files\GnuWin32\bin\gzip.exe -1 " < "%p" > "C:\Program Files\PostgreSQL\9.2\archives\%f.gz"'

c:Program FilesPostgreSQL9.2bin>pg_ctl.exe -D ..data start (You can also start from services.msc)

De acordo com a documentação do PG, as alterações foram feitas e reiniciado o cluster, antecipando a partir daqui meus arquivos serão compactados um. Vejamos os logs:
2013-07-26 16:07:22 IST LOG:comando de arquivamento falhou com o código de saída 1
2013-07-26 16:07:22 IST DETAIL:O comando de arquivamento com falha foi:"""C :Arquivos de ProgramasGnuWin32bingzip.exe" -1 <"pg_xlog