Shell -Script para executar pg_dump parametrizado por data

1. Shell -Script para executar pg_dump parametrizado por data

Newton Teixeira
NewtonJr.

(usa CentOS)

Enviado em 03/05/2010 - 14:22h

Olá comunidade, peço ajuda pra quem trabalha com Postgres em ambiente Linux e que também escreve Shell-scripts.


Preciso fazer uma rotina de backup de uma base em Postgresql 8.2.4.

Existem centenas de tabelas na base; todas as tabelas estão no formato bhXXX_h_YYYY_MM_DD,
onde XXX é o rótulo de um tipo de tabela e YYYY_MM_DD refere-se à data de criação da tabela.

Eis exemplos: bheqp_h_2009_01_09, bhmul_h_2009_01_09 , bhpas_h_2009_01_09, bhpds_h_2009_01_09, etc.

Fiz uma cópia de dados de uma tabela do servidor através do pgAdmin e obtive o seguinte comando:


pg_dump.exe --host 10.98.0.83 --port 5432 --username sage
--format plain --data-only --file "/tmp/sage/arqs/bheqp_h_2009_01_09.sql" -t "\"public ".\"bheqp_h_2009_01_09\"" bhcolsl_ems_sage


Preciso fazer um programa/script para rodar , que o usuário entre com a data inicial e final e execute o comando acima
de acordo com os parâmetros das datas; O arquivo gerado tem que ter o mesmo nome da tabela copiada.

Seria algo assim como o pseudo-codigo abaixo:

---------------------------------------
./copy_tabelas 2010-01-01 2010-01-31
---------------------------------------


tipos_tabelas[] = { ‘mul’, ‘eqp’, ‘pas’, ‘pds’, ‘lia’ };

For (i=0; i < tipos_tabelas.lenght; i++) {

data_aux = data_inicial;
While (data_aux <= data_final) {
Nome_arquivo = data_aux || ‘.dados’;

EXCUTAR pg_dump.exe --host 10.98.0.83 --port 5432 --username sage
--format plain --data-only --file "<<Nome_arquivo>>.sql" -t "\"public\".\"bh<<tipos_tabelas[i]>>_h_<<data_aux>>\"" bhcolsl_ems_sage

data_aux = data_aux + 1;
}
}


Eu gostaria de saber como fazer isso em Shell-script. Se alguém puder dar um help.

Desde já agradeço. Att.


NEWTON TEIXEIRA DO N. JR.




  






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts