Entries Tagged 'servidores' ↓

Gerar e restaurar backup do PostgreSQL no Linux

Para efetuar backup e restore utilizamos o comando pg_dump em conjunto com o psql.

Obs.: O pg_dump não faz backup de objetos grandes (lo) por default. Caso desejemos também estes objetos no backup devemos utilizar uma saída no formato tar e utilizar a opção -b.
pg_dump -Ftb banco > banco.tar
Backup local de um único banco:

pg_dump -U usuario -d banco > banco.sql

pg_dump -Ft banco > banco.tar
O script normalmente leva a extensão .sql, por convenção, mas pode ser qualquer extensão e o script terá conteúdo texto puro.
Restore de um banco local:

psql -U usuario -d banco < banco.sql

pg_restore -d banco banco.sql

pg_restore -d banco banco.tar
Obs.: Cuidado ao restaurar um banco, especialmente se existirem tabelas sem integridade. Corre-se o risco de duplicar os registros.
Descompactar e fazer o restore em um só comando:

gunzip -c backup.tar.gz | pg_restore -d banco

ou

cat backup.tar.gz | gunzip | pg_restore -d banco

(o cat envia um stream do arquivo para o gunzip que passa para o pg_restore)
Backup local de apenas uma tabela de um banco:

pg_dump -U nomeusuario -d nomebanco -t nometabela > nomescript
Restaurar apenas uma tabela

Para conseguir restaurar apenas uma tabela uma forma é gerar o dump do tipo com tar:

pg_dump -Ft banco -f arquivo.sql.tar

pg_restore -d banco -t tabela banco.sql.tar
Backup local de todos os bancos:

pg_dumpall -U nomeusuario -d nomebanco > nomescript
Backup remoto de um banco:

pg_dump -h hostremoto -d nomebanco | psql -h hostlocal -d banco

Backup em multivolumes (volumes de 200MB):

pg_dump nomebanco | split -m 200 nomearquivo

m para 1Mega, k para 1K, b para 512bytes
Importando backup de versão anterior do PostgreSQL

Instala-se a nova versão com porta diferente (ex.: 5433) e conectar ambos

pg_dumpall -p 5432 | psql -d template1 -p 5433

IpCop - Conectividade Social com Proxy transparente

Adcionar as linhas abaixo no arquivo rc.firewall.local

#Regras para conectividade social

/sbin/iptables -t nat -I PREROUTING -p tcp -d 200.201.0.0/16 -j ACCEPT
/sbin/iptables -I FORWARD -p tcp -d 200.201.0.0/16 -j ACCEPT
/sbin/iptables -t nat -A PREROUTING -i eth1 -p tcp -d ! 200.201.174.207 --dport 80 -j REDIRECT --to-port 3128