backup e restore no PostgreSQL



Documentos relacionados
PROCEDIMENTOS DE BACKUP E RESTORE NO POSTGRES

MULTIACERVO - VERSÃO 17.*

Orientações para BACKUP do SPED

MULTIACERVO - VERSÃO 18.* MANUAL PARA CONVERSÃO DA VERSÃO 17.* PARA 18.*

Treinamento PostgreSQL - Aula 09

Revisão: Introdução. - Integração com o AutoManager; 1 Atualização de versão do banco de dados PostgreSQL

Manual de Atualização Versão

Procedimentos para Instalação do SISLOC

LINX POSTOS AUTOSYSTEM

Manual de backup do banco de dados PostgreSQL - Versão 2. Setembro-2011

Procedimentos para Instalação do Sisloc

Para a escolha de uma unidade para o backup de dados, deve-se levar em conta :

Aula 02. Introdução ao Linux

Procedimentos para Reinstalação do Sisloc

MULTIACERVO - VERSÃO 19.* MANUAL PARA CONVERSÃO DA VERSÃO 18.* PARA 19.*

ROTEIRO PARA INSTALAÇÃO DO BITVISE, CONFIGURAÇÃO DE CHAVES SSH, DEFINIÇÃO DAS PORTAS PARA OS TÚNEIS SSH E CONFIGURAÇÃO DO THUNDERBIRD

#20 Migração Servidor Curupira de Sarge para Etch

O sistema que completa sua empresa Roteiro de Instalação (rev ) Página 1

Ferramentas de Administração. PostgreSQL

Noções de. Microsoft SQL Server. Microsoft SQL Server

ADMINISTRAÇÃO DE SISTEMAS OPERACIONAIS SERVIÇO DE BACKUP. Professor Carlos Muniz

Fazer backup de arquivos em um arquivo ou fita

SSE 3.0 Guia Rápido Parametrizando o SISTEMA DE SECRETARIA Nesta Edição Configurando a Conexão com o Banco de Dados

MAN001 Atualização Protocolo e Ação Social Versão 2 Cliente: Duralex Sistemas

Windows Explorer. Prof. Valdir

GUIA INTEGRA SERVICES E STATUS MONITOR

Despachante Express - Software para o despachante documentalista veicular DESPACHANTE EXPRESS MANUAL DO USUÁRIO VERSÃO 1.1

MySQL Query Browser. Professor Victor Sotero SGD

2. INSTALAÇÃO E CONFIGURAÇÃO

TUTORIAL DE UTILIZAÇÃO. Rua Maestro Cardim, cj. 121 CEP São Paulo - SP (11)

Manual Captura S_Line

MDaemon GroupWare. Versão 1 Manual do Usuário. plugin para o Microsoft Outlook. Trabalhe em Equipe Usando o Outlook e o MDaemon

Manual do Visualizador NF e KEY BEST

LBC GAS versão 3.43 e LBCPDV versão 7.01 Belo Horizonte, 16/11/2010.

Cookies. Krishna Tateneni Jost Schenck Tradução: Lisiane Sztoltz

Sistemas Operacionais de Rede INTRODUÇÃO AO ACTIVE DIRECTORY

Menu Utilitários. Atualização do Banco de Dados Atualização e organização dos arquivos existentes

Aula 4 Comandos Básicos Linux. Prof.: Roberto Franciscatto

SCIM 1.0. Guia Rápido. Instalando, Parametrizando e Utilizando o Sistema de Controle Interno Municipal. Introdução

Satélite. Manual de instalação e configuração. CENPECT Informática cenpect@cenpect.com.br

Microsoft Access XP Módulo Um

RESTAURAÇÃO E BACKUP DE BANCO DE DADOS FIREBIRD

Conteúdo Programático

ADMINISTRAÇÃO DE SISTEMAS OPERACIONAIS SERVIÇOS IMPRESSÃO. Professor Carlos Muniz

SIMULADO Windows 7 Parte V

Manual de Utilização do TOTVS Restore

3UHSDUDQGRR64/([SUHVVSDUDWUDEDOKDUFRP&ODULRQ

Manual Técnico Instalação do Sistema Volpe Enterprise Resource Planning

LINX POSTOS AUTOSYSTEM

AULA USO DE FERRAMENTAS DE SUPORTE DO SISTEMA

2.0.0.X. Storage Client. TecnoSpeed. Tecnologia da Informação. Manual do Storage Client

2 de maio de Remote Scan

ÍNDICE 1.CONHECENDO OS APLICATIVOS NECESSÁRIOS PARA O FUNCIONAMENTO DO SISTEMA URANO INTEGRA...

SISTEMAS OPERACIONAIS LIVRES. Professor Carlos Muniz

Como atualizar os preços da ABCFarma.

JobScheduler Empresa: Assunto: Responsável: Dados de Contato: Suporte: Comercial: Financeiro:

Fox Gerenciador de Sistemas

Universidade Federal do Estado do Rio de Janeiro UNIRIO. Guia para criação do banco de dados de redes sociais

Restauração do Exchange Server.

NetEye Guia de Instalação

AULA 06 CRIAÇÃO DE USUÁRIOS

CONTEÚDOS PROGRAMÁTICOS DA ACADEMIA

LINEAR EQUIPAMENTOS RUA SÃO JORGE, TELEFONE: SÃO CAETANO DO SUL - SP - CEP

Manual de Instalação do Servidor Orion Phoenix Versão Novembro/2010

Instalando e Configurando o Oracle XE

CRIANDO BANCOS DE DADOS NO SQL SERVER 2008 R2 COM O SQL SERVER MANAGEMENT STUDIO

TRBOnet ENTERPRISE. Guia de Instalação. NEOCOM Ltd

ENDEREÇOS DE REDE PRIVADOS até até até Kernel

Marco A. M. de Melo e Fernando S. P. Gonçalves MANAGER

Manual de Instalação e OPERAÇÃO

Instruções para Instalação dos Utilitários Intel

02 - Usando o SiteMaster - Informações importantes

SIM Sistema de Informação Monitorada Ltda. Vise Pedidos

Configuração manual.ost Microsoft Office 365

FTIN Formação Técnica em Informática Módulo Sistema Proprietário Windows AULA 06. Prof. André Lucio

Manipulação de Dados em PHP (Visualizar, Inserir, Atualizar e Excluir) Parte 2

Agendamento para Importação de Notas Fiscais

SIMULADO DE INFORMÁTICA BÁSICA TÉCNICO DO MPU PROF. ALEXANDRE LÊNIN / PROF. JUNIOR MARTINS

Aplicativo da Manifestação do Destinatário. Manual

DIRETÓRIOS. Diretórios ZIM. Estabelecer um diretório de aplicativo. Campos do objeto Diretórios. Diretórios estrangeiros. Zim 8.

CAPÍTULO 8 Conexões de banco de dados para programadores ASP.NET

Considerações sobre o Disaster Recovery

IBM SPSS Modeler - Princípios Básicos do R: Instruções de Instalação

Manual AGENDA DE BACKUP

Introdução a listas - Windows SharePoint Services - Microsoft Office Online

PROCEDIMENTOS PARA ATUALIZAÇÃO DE VERSÃO DO APLICATIVO

NetEye Guia de Instalação

SISTEMAS OPERACIONAIS ABERTOS Prof. Ricardo Rodrigues Barcelar

Backup.

Concurso Público. Prova Prática - parte 2. Técnico Laboratório Informática. Técnico Administrativo em Educação 2014

FTIN Formação Técnica em Informática Módulo Sistema Proprietário Windows AULA 04. Prof. André Lucio

- Configuração de Ambiente para Aplicação de Patch

Manual de Instalação. Sistema de Gestão e Acompanhamento de Frotas SIGAFROTA. Versão 1.0 Francisco Edilson do Nascimento

AP_ Conta Aplicativo para digitação e envio de contas médicas no padrão TISS

Controle de Alocação de Carga no Planejamento Operacional

Perguntas frequentes do Samsung Drive Manager

CONTRA CONTROLE DE ACESSOS E MODULARIZADOR DE SISTEMAS

Transcrição:

BANCO DE DADOS WEB AULA 8 backup e restore no PostgreSQL professor Luciano Roberto Rocha www.lrocha.com

Procedimentos de backup/restore Como tudo que contém dados importantes, devem ser feitas cópias de segurança dos bancos de dados do PostgreSQL regularmente. Embora o procedimento seja essencialmente simples, é importante possuir uma compreensão básica das técnicas e princípios subjacentes. O PostgreSQL nos disponibiliza três ferramentas para realização de cópias de segurança: pg_dump, pg_dumpall e pg_restore. As ferramentas acima descritas são programas executáveis externos (não comandos) e podem ser encontrados na pasta bin dentro do diretório de instalação do PostgreSQL. 2

O utilitário pg_dump O pg_dump é um aplicativo para fazer cópia de segurança de um banco de dados do PostgreSQL. São feitas cópias de segurança consistentes, mesmo que o banco de dados esteja sendo utilizado ao mesmo tempo. O pg_dump não bloqueia os outros usuários que estão acessando o banco de dados (leitura ou escrita). A idéia por trás do Método SQL-dump é gerar um arquivo texto contendo comandos SQL que, ao serem processados pelo servidor, recriam o banco de dados no mesmo estado em que este se encontrava quando o arquivo foi gerado. A forma básica de utilização deste programa é: pg_dump nome_do_banco_de_dados > arquivo_de_saída 3

O utilitário pg_dump As cópias de segurança geradas pelo pg_dump podem ser feitas no formato de script, personalizado ou tar. As cópias de segurança no formato de script são arquivos de texto puro, contendo os comandos SQL necessários para reconstruir o banco de dados no estado em que este se encontrava quando foi salvo. Como estes scripts contém um conjunto de instruções SQL, para restaurar os dados a partir destes scripts, deve ser utilizado o terminal psql. Os arquivos de script podem ser utilizados para reconstruir o banco de dados até em outras máquinas com outras arquiteturas; com algumas modificações, até mesmo em outros produtos gerenciadores de banco de dados SQL. 4

Realizar cópias de segurança Exemplos: Para salvar um banco de dados: $ pg_dump -U nome_do_usuário meu_bd > db.out Para restaurar este banco de dados: $ psql -U nome_do_usuário -d banco_de_dados -f db.out Parâmetros: -d nome_do_banco_de_dados nome do banco de dados a se conectar. -f nome_do_arquivo o arquivo de backup que contém os comandos SQL (script) -U nome_do_usuário o usuário dono do banco a ser acessado ou um superusuário. 5

Utilizar formatos personalizados Os formatos personalizado e tar devem ser utilizados com o aplicativo pg_restore para reconstruir o banco de dados. Estes formatos permitem que o pg_restore selecione o que será restaurado, ou mesmo reordene os itens antes de restaurá-los, e também permitem salvar e restaurar os "objetos grandes", o que não é possível com a cópia de segurança em arquivo de script. O formato de arquivo de saída mais flexível é o "personalizado" (-Fc) permite a seleção e a reordenação de todos os itens da cópia de segurança, e é comprimido por padrão. O formato tar (-Ft) não é comprimido e não permite reordenar os dados ao restaurar, mas por outro lado pode ser manipulado pelas ferramentas padrão do Unix, como o tar ou mesmo o winrar. 6

Utilizar formatos personalizados O comando abaixo gera a cópia de segurança do banco de dados utilizando o formato personalizado (custom dump format): pg_dump -U usuário Fc nome_do_banco_de_dados > nome_do_arquivo Parâmetros: F formato Seleciona o formato da saída. O formato pode ser um dos seguintes: p Gera um arquivo de script SQL no formato texto-puro (o padrão) t Gera um arquivo tar adequado para servir de entrada para o pg_restore. A utilização deste formato de arquivo permite reordenar e/ou excluir objetos do banco de dados ao fazer a restauração. c Gera um arquivo personalizado adequado para servir de entrada para o pg_restore. Este é o formato mais flexível, porque permite a reordenação da restauração dos dados, assim como das definições dos objetos. Além disso, este formato é comprimido por padrão. 7

Utilizar formatos personalizados O formato de cópia de segurança personalizado não é um script para o psql, devendo ser restaurado pelo pg_restore. Para restaurar o backup do banco de dados criado anteriormente deve-se usar o seguinte comando: pg_restore -U usuário -d novo_banco_de_dados nome_do_arquivo Parâmetros: -d novo_banco_de_dados Seleciona o banco de dados no qual os dados serão restaurados. nome_do_arquivo O arquivo que contém a cópia de segurança personalizada. -U usuário O nome do usuário do PostgreSQL dono do novo banco de dados ou um superusuário. 8

Restauração seletiva de dados Para reordenar os itens do banco de dados, primeiro é necessário criar um arquivo contendo a lista de conteúdo (índice) da cópia de segurança: pg_restore -l backup.arquivo > backup.list O arquivo de listagem consiste de um cabeçalho e uma linha para cada item iniciado por um número que corresponde ao seu identificador interno de arquivamento: ; Archive created at Fri Jul 28 22:28:36 2000 ; dbname: birds ; TOC Entries: 74 ; Compression: 0 ; Dump Version: 1.4-0 ; Format: CUSTOM ; ; Selected TOC Entries: ; 2; 145344 TABLE species postgres 3; 145344 ACL species 6; 145402 TABLE species_records postgres 8; 145416 TABLE ss_old postgres 9; 145416 ACL ss_old 10; 145433 TABLE map_resolutions postgres 11; 145433 ACL map_resolutions 12; 145443 TABLE hs_old postgres 13; 145443 ACL hs_old 9

Restauração seletiva de dados Cada linha do arquivo pode ser transformada em comentário, excluída ou reordenadas. Por exemplo: 10; 145433 TABLE map_resolutions postgres ;2; 145344 TABLE species postgres ;4; 145359 TABLE nt_header postgres 6; 145402 TABLE species_records postgres ;8; 145416 TABLE ss_old postgres Se o arquivo backup.list for usado como entrada do pg_restore, somente serão restaurados os itens 10 e 6, nesta ordem: pg_restore -d banco -L backup.list backup.arquivo Onde: -L arquivo_da_listagem Restaura apenas os elementos presentes no arquivo_da_listagem, e na ordem que aparecem neste arquivo. 10

Backup de bancos grandes Como o PostgreSQL permite a existência de tabelas maiores do que o tamanho máximo de arquivo do sistema operacional, pode ser problemático fazer a cópia de segurança de uma tabela como esta em um arquivo, uma vez que o arquivo resultante provavelmente terá um tamanho maior que o máximo permitido pelo sistema operacional. Para superar esses possíveis problemas podemos realizar cópias de segurança comprimidas, usando qualquer programa de compressão disponível em modo texto. Uma boa opção é utilizar o programa de compressão padrão do sistema Unix chamado gzip que também está disponível para Windows. 11

Backup de bancos grandes Exemplo: Para realizar um backup comprimido passamos o nome do programa compactador como parâmetro por meio do operador (pipe): pg_dump -U postgres empresa gzip > c:\backup\empresa_bkp.gz Para restaurar utilizamos o utilitário gunzip: gunzip -U postgres -c c:\backup\empresa_bkp.gz psql empresa No Windows o aplicativo gunzip.exe nada mais é do que uma cópia de gzip.exe renomeada, para isso execute o seguinte comando no prompt: copy gzip.exe gunzip.exe 12

Salvar todos os bancos de dados O aplicativo pg_dumpall permite salvar todos os bancos de dados de um agrupamento do PostgreSQL em um arquivo de script. O pg_dumpall também salva os objetos globais, comuns a todos os bancos de dados (O pg_dump não salva estes objetos). Como o pg_dumpall lê tabelas de todos os bancos de dados, muito provavelmente será necessário se conectar como um superusuário para poder gerar uma cópia completa. Também será necessário o privilégio de superusuário para executar o script produzido, para poder criar usuários e grupos, e para poder criar os bancos de dados. 13

Salvar todos os bancos de dados O script SQL é escrito na saída padrão. Devem ser usados operadores de linha de comando para redirecionar para um arquivo: Exemplos: Para salvar todos bancos de dados: $ pg_dumpall > db.out Para recarregar este banco de dados deve ser utilizado, por exemplo: $ psql -f db.out template1 Neste caso o banco de dados a se conectar não tem importância, porque o arquivo de script criado pelo pg_dumpall contém os comandos apropriados para criar e conectar aos bancos de dados salvos. 14

Salvar todos os bancos de dados O pg_dumpall precisa conectar várias vezes ao servidor PostgreSQL (uma vez para cada banco de dados). Se for utilizada autenticação por senha, provavelmente será solicitada a senha cada uma destas vezes. Neste caso é conveniente criar o arquivo.pgpass (Unix) ou pgpass.conf (Windows) O arquivo.pgpass, armazenado na pasta base (home) do usuário, é um arquivo que contém senhas a serem utilizadas se a conexão requisitar uma senha (e a senha não tiver sido especificada de outra maneira). No Microsoft Windows o arquivo se chama %APPDATA%\postgresql\pgpass.conf (onde %APPDATA% se refere ao subdiretório de dados do aplicativo no perfil do usuário). Exemplo: C:\Users\Marcio\APPDATA\roaming\posgresql\pgpass.conf 15

Salvar todos os bancos de dados O arquivo pgpass deve conter linhas com o seguinte formato: nome_do_host:porta:nome_do_banco:nome_do_usuário:senha Os quatro primeiros valores podem ser um texto, ou * para corresponder a qualquer coisa. Ex.: localhost:5432:*:postgres:12345 As permissões de acesso ao arquivo.pgpass não devem permitir o acesso por todos os usuários ou para grupos; isto é conseguido pelo comando chmod 0600 ~/.pgpass. Se as permissões forem mais rígidas que esta, o arquivo será ignorado (Entretanto,atualmente as permissões não são verificadas no Microsoft Windows). 16