Re: [pgbr-geral] Backup via comando SQL

2009-11-19 Por tôpico Tiago Adami
2009/11/18 JotaComm jota.c...@gmail.com:

(corte)


 Uma questão que já foi levantada. O PostgreSQL não permite que acesso
 externo para um pg_dump remoto seja executado?

 --
 TIAGO J. ADAMI
 http://www.adamiworks.com
 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


 []s
 --
 JotaComm
 http://jotacomm.wordpress.com

Isso deveria depender mais de liberação no firewall e redirecionamento
da porta de conexão (usualmente 5432) para o servidor. Também seria
necessário conectar com o usuário dono do banco ou o usuário postgres.
Tenho um sistema na empresa que posso conectar pela internet, mas o
backup por esta rede *trava* antes de iniciar (deve ser a largura de
banda, realmente não sei).

-- 
TIAGO J. ADAMI
http://www.adamiworks.com
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Backup via comando SQL

2009-11-18 Por tôpico Andre Fernandes
Posso estar errado, mas não poderias ler as tabelas de sistema (simples
selects) e usar essas informações para fazer uma espécie de dump? Como
muitos programas que fazem engenharia reversa em um banco de dados
postgreSQL...
Ou mesmo poderias dar uma olhada no código fonte do pg_dump. Imagino que
seja em C.

Abraços,


 Tiago Adami escreveu:
  Desculpem se este assunto já foi abordado, mas tenho uma vaga lembrança
  de ter lido alguma coisa na internet sobre um script ou função em C para
  fazer backup do banco de dados com a estrutura completa (dados e
  metadados) via comando SQL, sem usar o pg_dump.
 
 Enquanto o pg_dump não for reescrito para ser uma biblioteca (já foi
 discutido
 no passado), acho pouco provável você ver outro programa que prometa fazer
 o
 que ele faz.

 Qual a dificuldade de agendar um pg_dump no cron? Se queres fazer via SQL
 você
 pode criar um função em PL/PerlU, por exemplo, que invoque o pg_dump.


 --
  Euler Taveira de Oliveira
  http://www.timbira.com/
 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




 --
 Rodrigo F. Lang
 Amd. de Redes em Telecom

 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

 2009/11/18 Euler Taveira de Oliveira eu...@timbira.com



-- 
André de Camargo Fernandes
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Backup via comando SQL

2009-11-18 Por tôpico JotaComm
Olá, Rodrigo

2009/11/18 Rodrigo Lang rodrigoferreiral...@gmail.com

 Boa noite, esse é meu primeiro post aqui na lista! :)

 Bom, me corrijam se eu falar bobagem (trabalho à pouco com PostgreSQL).
 Teoricamente você poderia criar uma função com o PL/pgsql, onde dentro desta
 função você iniciaria uma transação fazendo a cópia das tabelas no formato
 que você quiser ( Utilizando o comando COPY para txt ou cvs). Porém, não
 saberia lhe dizer se isso afetaria a integridade dos dados já que seria
 online... Ainda acho o pg_dump a forma mais segura de fazer um backup. E que
 nem disse o JoaComm, as tabelas do sistema acredito que não aja necessidade,
 já que pode criá-las fazendo outro banco.


Apenas um comentário. Você não pode criar uma transação dentro de uma função
PL/pgSQL, ao chamar a função uma transação é criada para a sua execução.




 Ats,
 Rodrigo Lang.



 2009/11/18 Euler Taveira de Oliveira eu...@timbira.com

 Tiago Adami escreveu:
  Desculpem se este assunto já foi abordado, mas tenho uma vaga lembrança
  de ter lido alguma coisa na internet sobre um script ou função em C para
  fazer backup do banco de dados com a estrutura completa (dados e
  metadados) via comando SQL, sem usar o pg_dump.
 
 Enquanto o pg_dump não for reescrito para ser uma biblioteca (já foi
 discutido
 no passado), acho pouco provável você ver outro programa que prometa fazer
 o
 que ele faz.

 Qual a dificuldade de agendar um pg_dump no cron? Se queres fazer via SQL
 você
 pode criar um função em PL/PerlU, por exemplo, que invoque o pg_dump.


 --
  Euler Taveira de Oliveira
  http://www.timbira.com/
 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




 --
 Rodrigo F. Lang
 Amd. de Redes em Telecom

 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral



[]s
-- 
JotaComm
http://jotacomm.wordpress.com
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Backup via comando SQL

2009-11-18 Por tôpico Tiago Adami
2009/11/18 Euler Taveira de Oliveira eu...@timbira.com

 Tiago Adami escreveu:
  Desculpem se este assunto já foi abordado, mas tenho uma vaga lembrança
  de ter lido alguma coisa na internet sobre um script ou função em C para
  fazer backup do banco de dados com a estrutura completa (dados e
  metadados) via comando SQL, sem usar o pg_dump.
 
 Enquanto o pg_dump não for reescrito para ser uma biblioteca (já foi discutido
 no passado), acho pouco provável você ver outro programa que prometa fazer o
 que ele faz.

 Qual a dificuldade de agendar um pg_dump no cron? Se queres fazer via SQL você
 pode criar um função em PL/PerlU, por exemplo, que invoque o pg_dump.


 --
  Euler Taveira de Oliveira
  http://www.timbira.com/


A minha maior dificuldade é que na maior parte dos clientes que
atendemos os servidores rodam Microsoft Windows, e nas máquinas em que
podemos conectar remotamente não temos acesso ao disco - ou ao
ambiente - do servidor onde está instalado o banco. Nestes casos temos
que instalar o pgAdmin ou copiar a pasta bin de uma outra instalação
para fazer o backup por uma estação.

Sendo assim, no universo dos clientes existem servidores Linux,
Windows e até Unix (alguns poucos casos). As rotinas de backup são
feitas especificamente para cada cliente (cron ou agendador de
tarefas). A minha intenção seria padronizar as rotinas de backup até
mesmo para facilitar a vida do nosso suporte técnico.

Caso eu consiga criar a função em PL/PerlU, ela serviria. Só preciso
de uma ajuda inicial, pois Perl foge das minhas especialidades. Isso
resolveria meu problema, pois poderia fazer a própria aplicação
executar o backup sem a necessidade de manter os executáveis do
PostgreSQL nas estações de trabalho.

--
TIAGO J. ADAMI
http://www.adamiworks.com
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Backup via comando SQL

2009-11-18 Por tôpico JotaComm
Olá, André

2009/11/18 Andre Fernandes fernandes.an...@gmail.com

 Posso estar errado, mas não poderias ler as tabelas de sistema (simples
 selects) e usar essas informações para fazer uma espécie de dump? Como
 muitos programas que fazem engenharia reversa em um banco de dados
 postgreSQL...
 Ou mesmo poderias dar uma olhada no código fonte do pg_dump. Imagino que
 seja em C.


Ler as tabelas de sistema é possível sim através de selects, a complicação
que vejo é como montar toda a estrutura das tabelas. Além disso, não podemos
esquecer das definições das visões, índices, sequences, domínios, tipos de
dados, esquemas e etc.

Além disso, tem que ser um processo muito bem estruturado pois se for
necessário restaurar o backup tem que executar em uma certa ordem devido a
existências das FKs.

Desculpem se esqueci de alguma coisa.




 Abraços,



 Tiago Adami escreveu:
  Desculpem se este assunto já foi abordado, mas tenho uma vaga lembrança
  de ter lido alguma coisa na internet sobre um script ou função em C
 para
  fazer backup do banco de dados com a estrutura completa (dados e
  metadados) via comando SQL, sem usar o pg_dump.
 
 Enquanto o pg_dump não for reescrito para ser uma biblioteca (já foi
 discutido
 no passado), acho pouco provável você ver outro programa que prometa
 fazer o
 que ele faz.

 Qual a dificuldade de agendar um pg_dump no cron? Se queres fazer via SQL
 você
 pode criar um função em PL/PerlU, por exemplo, que invoque o pg_dump.


 --
  Euler Taveira de Oliveira
  http://www.timbira.com/
 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




 --
 Rodrigo F. Lang
 Amd. de Redes em Telecom

 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

 2009/11/18 Euler Taveira de Oliveira eu...@timbira.com



 --
 André de Camargo Fernandes



 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral



[]s
-- 
JotaComm
http://jotacomm.wordpress.com
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Backup via comando SQL

2009-11-18 Por tôpico Andre Fernandes

 Além disso, tem que ser um processo muito bem estruturado pois se for
 necessário restaurar o backup tem que executar em uma certa ordem devido a
 existências das FKs.

 Sim, isso é verdade, teria de ser muito bem estruturado. Pelo menos foi uma
idéia de como fazer, acho se eu precisasse disso, tentaria por ai.

Abraços,
-- 
André de Camargo Fernandes
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Backup via comando SQL

2009-11-18 Por tôpico Fabrízio de Royes Mello
2009/11/18 Tiago Adami adam...@gmail.com


 A minha maior dificuldade é que na maior parte dos clientes que
 atendemos os servidores rodam Microsoft Windows, e nas máquinas em que
 podemos conectar remotamente não temos acesso ao disco - ou ao
 ambiente - do servidor onde está instalado o banco. Nestes casos temos
 que instalar o pgAdmin ou copiar a pasta bin de uma outra instalação
 para fazer o backup por uma estação.


Desculpe chegar assim por último, mas essa thread me interessou...

Se vc não tem acesso ao disco do Servidor PostgreSQL em alguns casos, então
um SQL que *emule* o pg_dump não iria resolver pois o backup iria ficar no
servidor... se estás acessando o servidor de uma estação cliente, então o
pg_dump é a sua alternativa... claro que essa minha afirmativa será válida
se você *tem* necessidade de acessar o arquivo de backup, caso contrário sem
problema.



 Sendo assim, no universo dos clientes existem servidores Linux,
 Windows e até Unix (alguns poucos casos). As rotinas de backup são
 feitas especificamente para cada cliente (cron ou agendador de
 tarefas). A minha intenção seria padronizar as rotinas de backup até
 mesmo para facilitar a vida do nosso suporte técnico.


Já olhou o PaGoDump [1] da MicroOLAP??? Essa ferramenta é free... com
certeza essa interface gráfica para o pg_dump facilitaria a vida do teu
suporte técnico... sei que o pgAdmin possui uma interface gráfica para o
pg_dump, mas essa ferramenta é mais simplificada e como o foco no dump, sem
contar que pode ser usada pela linha de comando e com isso agendada para
execução. Uma restrição: é para Win32... não sei se conseguiria rodar num
Linux via Wine (teria de testar)...


Caso eu consiga criar a função em PL/PerlU, ela serviria. Só preciso
 de uma ajuda inicial, pois Perl foge das minhas especialidades. Isso
 resolveria meu problema, pois poderia fazer a própria aplicação
 executar o backup sem a necessidade de manter os executáveis do
 PostgreSQL nas estações de trabalho.


É uma solução... conheço pouco de Perl mas nos envie suas dúvidas, pois
certamente alguém da lista tem mais conhecimento da mesma e poderá
auxiliá-lo.

O Jota já mencionou sobre a questão de ler o catálogo do PostgreSQL e gerar
um DUMP de uma base, ou parte dela, mas verificando o pg_dump (olhando
fontes) não será uma tarefa trivial... não é impossível, mas não será
simples...


[1] http://www.microolap.com/products/database/pagodump/


Cordialmente,

-- 
Fabrízio de Royes Mello
 Blog sobre TI: http://fabriziomello.blogspot.com
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Backup via comando SQL

2009-11-18 Por tôpico Tarcísio Sassara
2009/11/18 Tiago Adami adam...@gmail.com:
 2009/11/18 Euler Taveira de Oliveira eu...@timbira.com

 Tiago Adami escreveu:
  Desculpem se este assunto já foi abordado, mas tenho uma vaga lembrança
  de ter lido alguma coisa na internet sobre um script ou função em C para
  fazer backup do banco de dados com a estrutura completa (dados e
  metadados) via comando SQL, sem usar o pg_dump.
 
 Enquanto o pg_dump não for reescrito para ser uma biblioteca (já foi 
 discutido
 no passado), acho pouco provável você ver outro programa que prometa fazer o
 que ele faz.

 Qual a dificuldade de agendar um pg_dump no cron? Se queres fazer via SQL 
 você
 pode criar um função em PL/PerlU, por exemplo, que invoque o pg_dump.


 --
  Euler Taveira de Oliveira
  http://www.timbira.com/


 A minha maior dificuldade é que na maior parte dos clientes que
 atendemos os servidores rodam Microsoft Windows, e nas máquinas em que
 podemos conectar remotamente não temos acesso ao disco - ou ao
 ambiente - do servidor onde está instalado o banco. Nestes casos temos
 que instalar o pgAdmin ou copiar a pasta bin de uma outra instalação
 para fazer o backup por uma estação.

O pg_dump pode fazer o backup de um banco em outro host, basta o pg_dump
ter acesso ao servidor. Se você consegue conectar o PgAdmin em um
servidor remoto,
você conseguirá fazer um dump do banco.
Ou seja: Não precisa se conectar remotamente.
Se você consegue criar uma conexão remota com a maquina do cliente,
teoricamente conseguirá
liberar o acesso para o pg_dump.

A solução que você propõem não é segura.


-- 
Tarcisio F. Sassara
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Backup via comando SQL

2009-11-18 Por tôpico Tiago Adami
2009/11/18 Tarcísio Sassara sassara.tarci...@gmail.com:
 2009/11/18 Tiago Adami adam...@gmail.com:
 2009/11/18 Euler Taveira de Oliveira eu...@timbira.com

 Tiago Adami escreveu:
  Desculpem se este assunto já foi abordado, mas tenho uma vaga lembrança
  de ter lido alguma coisa na internet sobre um script ou função em C para
  fazer backup do banco de dados com a estrutura completa (dados e
  metadados) via comando SQL, sem usar o pg_dump.
 
 Enquanto o pg_dump não for reescrito para ser uma biblioteca (já foi 
 discutido
 no passado), acho pouco provável você ver outro programa que prometa fazer o
 que ele faz.

 Qual a dificuldade de agendar um pg_dump no cron? Se queres fazer via SQL 
 você
 pode criar um função em PL/PerlU, por exemplo, que invoque o pg_dump.


 --
  Euler Taveira de Oliveira
  http://www.timbira.com/


 A minha maior dificuldade é que na maior parte dos clientes que
 atendemos os servidores rodam Microsoft Windows, e nas máquinas em que
 podemos conectar remotamente não temos acesso ao disco - ou ao
 ambiente - do servidor onde está instalado o banco. Nestes casos temos
 que instalar o pgAdmin ou copiar a pasta bin de uma outra instalação
 para fazer o backup por uma estação.

 O pg_dump pode fazer o backup de um banco em outro host, basta o pg_dump
 ter acesso ao servidor. Se você consegue conectar o PgAdmin em um
 servidor remoto,
 você conseguirá fazer um dump do banco.
 Ou seja: Não precisa se conectar remotamente.
 Se você consegue criar uma conexão remota com a maquina do cliente,
 teoricamente conseguirá
 liberar o acesso para o pg_dump.

 A solução que você propõem não é segura.

Conheço o funcionamento do pg_dump e não *propus* nenhuma solução.
Queria saber se existia alguma coisa que pudesse fazer o backup via
SQL, sem precisar do pg_dump no cliente (entenda-se aqui a máquina que
conecta ao servidor), nada mais.

-- 
TIAGO J. ADAMI
http://www.adamiworks.com
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Backup via comando SQL

2009-11-18 Por tôpico Leandro DUTRA
2009/11/18 Tiago Adami adam...@gmail.com:
 Conheço o funcionamento do pg_dump e não *propus* nenhuma solução.
 Queria saber se existia alguma coisa que pudesse fazer o backup via
 SQL, sem precisar do pg_dump no cliente (entenda-se aqui a máquina que
 conecta ao servidor), nada mais.

Desculpa se eu falar besteira, mas me parece muito mais simples,
rápido e seguro instalar o pg_dump no cliente que fazer cópia do banco
via SQL — até porque o SQL não foi feito para essas coisas.


-- 
skype:leandro.gfc.dutra?chat  Yahoo!: ymsgr:sendIM?lgcdutra
+55 (11) 3854 7191  gTalk: xmpp:leand...@jabber.org
+55 (11) 9406 7191ICQ/AIM: aim:GoIM?screenname=61287803
BRAZIL GMT-3  MSN: msnim:chat?contact=lean...@dutra.fastmail.fm
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Backup via comando SQL

2009-11-18 Por tôpico Tiago Adami
2009/11/18 Leandro DUTRA leandro.gfc.du...@gmail.com:
 2009/11/18 Tiago Adami adam...@gmail.com:
 Conheço o funcionamento do pg_dump e não *propus* nenhuma solução.
 Queria saber se existia alguma coisa que pudesse fazer o backup via
 SQL, sem precisar do pg_dump no cliente (entenda-se aqui a máquina que
 conecta ao servidor), nada mais.

 Desculpa se eu falar besteira, mas me parece muito mais simples,
 rápido e seguro instalar o pg_dump no cliente que fazer cópia do banco
 via SQL — até porque o SQL não foi feito para essas coisas.


 --
 skype:leandro.gfc.dutra?chat      Yahoo!: ymsgr:sendIM?lgcdutra
 +55 (11) 3854 7191              gTalk: xmpp:leand...@jabber.org
 +55 (11) 9406 7191        ICQ/AIM: aim:GoIM?screenname=61287803
 BRAZIL GMT-3  MSN: msnim:chat?contact=lean...@dutra.fastmail.fm

Tranquilo, sem stress. O cenário é assim: existem alguns clientes que
liberam apenas um acesso via TS (terminal service, Windows) para
permitir conectar e dar suporte no sistema. Quando você entra, tem
acesso apenas ao aplicativo enjaulado, ou seja, não abre explorer,
nem internet explorer, nem nada. E muitas vezes não tenho acesso ao
pg_dump. Sendo assim, antes de rodar algum comando SQL sobre o banco,
gostaria de fazer um backup.

Acho que por fim, a solução vai ser distribuir a pasta bin junto com
o aplicativo, assim eu posso rodar o pg_dump pela aplicação.

Obrigado a todos pelas respostas.


-- 
TIAGO J. ADAMI
http://www.adamiworks.com
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Backup via comando SQL

2009-11-18 Por tôpico JotaComm
Olá,

2009/11/18 Tiago Adami adam...@gmail.com

 2009/11/18 Leandro DUTRA leandro.gfc.du...@gmail.com:
  2009/11/18 Tiago Adami adam...@gmail.com:
  Conheço o funcionamento do pg_dump e não *propus* nenhuma solução.
  Queria saber se existia alguma coisa que pudesse fazer o backup via
  SQL, sem precisar do pg_dump no cliente (entenda-se aqui a máquina que
  conecta ao servidor), nada mais.
 
  Desculpa se eu falar besteira, mas me parece muito mais simples,
  rápido e seguro instalar o pg_dump no cliente que fazer cópia do banco
  via SQL — até porque o SQL não foi feito para essas coisas.
 
 
  --
  skype:leandro.gfc.dutra?chat  Yahoo!: ymsgr:sendIM?lgcdutra
  +55 (11) 3854 7191  gTalk: 
  xmpp:leand...@jabber.orgxmpp%3aleand...@jabber.org
  +55 (11) 9406 7191ICQ/AIM: aim:GoIM?screenname=61287803
  BRAZIL GMT-3  MSN: msnim:chat?contact=lean...@dutra.fastmail.fm

 Tranquilo, sem stress. O cenário é assim: existem alguns clientes que
 liberam apenas um acesso via TS (terminal service, Windows) para
 permitir conectar e dar suporte no sistema. Quando você entra, tem
 acesso apenas ao aplicativo enjaulado, ou seja, não abre explorer,
 nem internet explorer, nem nada. E muitas vezes não tenho acesso ao
 pg_dump. Sendo assim, antes de rodar algum comando SQL sobre o banco,
 gostaria de fazer um backup.

 Acho que por fim, a solução vai ser distribuir a pasta bin junto com
 o aplicativo, assim eu posso rodar o pg_dump pela aplicação.

 Obrigado a todos pelas respostas.


Uma questão que já foi levantada. O PostgreSQL não permite que acesso
externo para um pg_dump remoto seja executado?


 --
 TIAGO J. ADAMI
 http://www.adamiworks.com
 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral



[]s
-- 
JotaComm
http://jotacomm.wordpress.com
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


[pgbr-geral] Backup via comando SQL

2009-11-17 Por tôpico Tiago Adami
Desculpem se este assunto já foi abordado, mas tenho uma vaga lembrança de
ter lido alguma coisa na internet sobre um script ou função em C para fazer
backup do banco de dados com a estrutura completa (dados e metadados) via
comando SQL, sem usar o pg_dump. Isto foi a muito tempo, e não encontrei
nada mais a respeito (fora alguns outros softwares que prometem fazer o
backup para PostgreSQL). Mesmo que não exista algo pronto, existiria meios
para fazer isso?

-- 
TIAGO J. ADAMI
http://www.adamiworks.com
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Backup via comando SQL

2009-11-17 Por tôpico JotaComm
Olá, Tiago

2009/11/17 Tiago Adami adam...@gmail.com

 Desculpem se este assunto já foi abordado, mas tenho uma vaga lembrança de
 ter lido alguma coisa na internet sobre um script ou função em C para fazer
 backup do banco de dados com a estrutura completa (dados e metadados) via
 comando SQL, sem usar o pg_dump. Isto foi a muito tempo, e não encontrei
 nada mais a respeito (fora alguns outros softwares que prometem fazer o
 backup para PostgreSQL). Mesmo que não exista algo pronto, existiria meios
 para fazer isso?


Que tipo de informação dos metadados você gostaria? Você quer fazer um dump
da estrutura e dados das tabelas pg_catalog.*? É isso? Poderia dar um
exemplo?




 --
 TIAGO J. ADAMI
 http://www.adamiworks.com

 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral



[]s
-- 
JotaComm
http://jotacomm.wordpress.com
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Backup via comando SQL

2009-11-17 Por tôpico Tiago Adami
2009/11/17 JotaComm jota.c...@gmail.com

 Olá, Tiago

 2009/11/17 Tiago Adami adam...@gmail.com

 Desculpem se este assunto já foi abordado, mas tenho uma vaga lembrança de
 ter lido alguma coisa na internet sobre um script ou função em C para fazer
 backup do banco de dados com a estrutura completa (dados e metadados) via
 comando SQL, sem usar o pg_dump. Isto foi a muito tempo, e não encontrei
 nada mais a respeito (fora alguns outros softwares que prometem fazer o
 backup para PostgreSQL). Mesmo que não exista algo pronto, existiria meios
 para fazer isso?


 Que tipo de informação dos metadados você gostaria? Você quer fazer um dump
 da estrutura e dados das tabelas pg_catalog.*? É isso? Poderia dar um
 exemplo?


Pra ser mais exato a intenção seria realizar um backup completo, assim como
o pg_dump faz. Não importa se em formato texto ou binário compactado.
Imagine algo como BACKUP DATABASE foo TO '/home/backup/foo.backup'. No
banco Sybase existe um comando parecido com este, que grava o backup no
disco do servidor de banco de dados (o caminho é relativo ao servidor).

-- 
TIAGO J. ADAMI
http://www.adamiworks.com
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Backup via comando SQL

2009-11-17 Por tôpico JotaComm
Opa,
2009/11/17 Tiago Adami adam...@gmail.com



 2009/11/17 JotaComm jota.c...@gmail.com

 Olá, Tiago

 2009/11/17 Tiago Adami adam...@gmail.com

 Desculpem se este assunto já foi abordado, mas tenho uma vaga lembrança de
 ter lido alguma coisa na internet sobre um script ou função em C para fazer
 backup do banco de dados com a estrutura completa (dados e metadados) via
 comando SQL, sem usar o pg_dump. Isto foi a muito tempo, e não encontrei
 nada mais a respeito (fora alguns outros softwares que prometem fazer o
 backup para PostgreSQL). Mesmo que não exista algo pronto, existiria meios
 para fazer isso?


 Que tipo de informação dos metadados você gostaria? Você quer fazer um
 dump da estrutura e dados das tabelas pg_catalog.*? É isso? Poderia dar um
 exemplo?


 Pra ser mais exato a intenção seria realizar um backup completo, assim como
 o pg_dump faz. Não importa se em formato texto ou binário compactado.
 Imagine algo como BACKUP DATABASE foo TO '/home/backup/foo.backup'. No
 banco Sybase existe um comando parecido com este, que grava o backup no
 disco do servidor de banco de dados (o caminho é relativo ao servidor).


Hum.. Você queria alguma coisa como a cópia física do $PGDATA porém de um
banco específico?

Eu apenas não vejo a necessidade de fazer a cópia das tabelas e dados das
tabelas de sistema, pois a estrutura do pg_catalog é criada quando você cria
um banco novo, salvo as estruturas que são globais. E quando você carrega o
dump estas tabelas de sistemas são populadas.

E quanto ao Sybase e PostgreSQL eles são diferentes, já trabalhei durante 1
semana com Sybase e vi isso ná pratica.



 --
 TIAGO J. ADAMI
 http://www.adamiworks.com

 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral



[]s
-- 
JotaComm
http://jotacomm.wordpress.com
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Backup via comando SQL

2009-11-17 Por tôpico Tiago Adami
 Hum.. Você queria alguma coisa como a cópia física do $PGDATA porém de um
 banco específico?

 Eu apenas não vejo a necessidade de fazer a cópia das tabelas e dados das
 tabelas de sistema, pois a estrutura do pg_catalog é criada quando você cria
 um banco novo, salvo as estruturas que são globais. E quando você carrega o
 dump estas tabelas de sistemas são populadas.

 E quanto ao Sybase e PostgreSQL eles são diferentes, já trabalhei durante 1
 semana com Sybase e vi isso ná pratica.


 []s
 --
 JotaComm
 http://jotacomm.wordpress.com


Sem questionar. Sybase e PostgreSQL são muito diferentes, já trabalhei 5
anos desenvolvendo aplicativos para Sybase ASA.

Os dados do catálogo não são necessários, gostaria de verificar se existe a
possibilidade de simular o pg_dump criando uma função. Algo para
substituí-lo.

Eu consigo criar algumas rotinas hoje em Java para fazer o backup somente
dos dados, mas gostaria de ter toda a estrutura: tabelas (de todos os
esquemas do banco exceto pg_catalog e information_schema), índices,
comentários, foreign keys, primary keys, etc. Ou seja, uma função que simule
perfeitamente o pg_dump.

-- 
TIAGO J. ADAMI
http://www.adamiworks.com
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Backup via comando SQL

2009-11-17 Por tôpico Euler Taveira de Oliveira
Tiago Adami escreveu:
 Desculpem se este assunto já foi abordado, mas tenho uma vaga lembrança
 de ter lido alguma coisa na internet sobre um script ou função em C para
 fazer backup do banco de dados com a estrutura completa (dados e
 metadados) via comando SQL, sem usar o pg_dump.
 
Enquanto o pg_dump não for reescrito para ser uma biblioteca (já foi discutido
no passado), acho pouco provável você ver outro programa que prometa fazer o
que ele faz.

Qual a dificuldade de agendar um pg_dump no cron? Se queres fazer via SQL você
pode criar um função em PL/PerlU, por exemplo, que invoque o pg_dump.


-- 
  Euler Taveira de Oliveira
  http://www.timbira.com/
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Backup via comando SQL

2009-11-17 Por tôpico Rodrigo Lang
Boa noite, esse é meu primeiro post aqui na lista! :)

Bom, me corrijam se eu falar bobagem (trabalho à pouco com PostgreSQL).
Teoricamente você poderia criar uma função com o PL/pgsql, onde dentro desta
função você iniciaria uma transação fazendo a cópia das tabelas no formato
que você quiser ( Utilizando o comando COPY para txt ou cvs). Porém, não
saberia lhe dizer se isso afetaria a integridade dos dados já que seria
online... Ainda acho o pg_dump a forma mais segura de fazer um backup. E que
nem disse o JoaComm, as tabelas do sistema acredito que não aja necessidade,
já que pode criá-las fazendo outro banco.


Ats,
Rodrigo Lang.



2009/11/18 Euler Taveira de Oliveira eu...@timbira.com

 Tiago Adami escreveu:
  Desculpem se este assunto já foi abordado, mas tenho uma vaga lembrança
  de ter lido alguma coisa na internet sobre um script ou função em C para
  fazer backup do banco de dados com a estrutura completa (dados e
  metadados) via comando SQL, sem usar o pg_dump.
 
 Enquanto o pg_dump não for reescrito para ser uma biblioteca (já foi
 discutido
 no passado), acho pouco provável você ver outro programa que prometa fazer
 o
 que ele faz.

 Qual a dificuldade de agendar um pg_dump no cron? Se queres fazer via SQL
 você
 pode criar um função em PL/PerlU, por exemplo, que invoque o pg_dump.


 --
  Euler Taveira de Oliveira
  http://www.timbira.com/
 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




-- 
Rodrigo F. Lang
Amd. de Redes em Telecom
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral