Buscar

Aula 4 - Administração de Banco de Dados Oracle

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 20 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 20 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 20 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

/
Administração de Banco de Dados III
Aula 4: Administração de Banco de Dados Oracle
Apresentação
Esta quarta aula da disciplina Administração de Bancos de Dados III trata da administração básica de um banco de dados
Oracle, incluindo a criação de data�les e objetos no banco de dados.
Ao �nal desta aula você compreenderá como o Oracle é capaz de armazenar dados utilizando blocos físicos, compondo
estruturas lógicas até chegar ao tablespace, um dos conceitos mais importantes para um administrador de bancos de
dados Oracle. Será capaz também de realizar backups e restaurações do banco de dados e de tablespaces a partir do
RMAN (Recovery Manager).
Objetivo
Identi�car os componentes lógicos e físicos do armazenamento de um banco de dados Oracle;
Estruturar a criação e a manipulação de objetos de banco de dados;
Aplicar o backup e a restauração de tablespaces.
Introdução
Como vimos na aula anterior, os parâmetros de inicialização do Oracle estão registrados nos arquivos PFILE e SPFILE. Além
desses dois arquivos, temos o CONTROL FILE, que armazena os metadados da estrutura física do banco de dados.
Comentário
Quando o banco de dados é inicializado, todas as informações necessárias para que esse processo seja executado com sucesso
estão nesse arquivo. Portanto, é imprescindível para o administrador do banco de dados Oracle manter cópias seguras deles.
O armazenamento de um banco de dados Oracle é baseado em data�les e tablespaces. Ao longo da sua vida útil, e de acordo
com as novas necessidades que vão surgindo, os administradores precisam manipular arquivos de dados, redo logs,
tablespaces, e realizar uma série de operações para atender às necessidades de armazenamento e atendimento aos novos
requisitos.
/
Vamos iniciar a aula conhecendo
os conceitos relevantes para o
entendimento dessa estrutura de
armazenamento do Oracle.
Em seguida, vamos usar esses
conceitos para criar um
tablespace e objetos de bancos
de dados nesse tablespace.
Na última parte da aula vamos
utilizar o RMAN, uma das
ferramentas mais consagradas
do mundo Oracle, para realizar
backup e restauração do banco
de dados.
Data�les
Os data�les são os arquivos físicos que armazenam os dados do banco de dados. Note, na imagem a seguir, a separação entre
as camadas físicas, onde estão os data�les, e a lógica. A camada lógica existe para que os administradores possam manipular
os arranjos de alocação com nenhum ou pouco impacto na organização física.
 Fonte: Oracle (2020).
Camadas Lógica e Física do armazenamento Oracle
No Oracle, esses data�les são organizados no sistema de arquivos do próprio sistema operacional, ou pode ser gerenciado pelo
próprio Oracle por meio do ASM (Automatic Storage Management). Com o ASM é possível gerenciar grandes volumes de dados
que expandem a capacidade de um disco, além de prover cópias redundantes dos blocos de disco, oferecendo redundância em
caso de falha. Veja a imagem adiante.
 Fonte: Oracle (2020).
Disk Groups do ASM
É possível utilizar o ASM para um Single Instance Server, entretanto é bem mais utilizado quando instalado sobre RAC (Real
Application Cluster). Em ambos os casos o ASM pode ser administrado pelo Enterprise Manager.
Tablespaces
/
Os disk groups do ASM manipulam os arquivos �sicamente no disco. Existem, sem prejuízo para a administração das
alocações do espaço em disco, as estruturas lógicas. Na medida em que o sistema operacional oferece blocos físicos de disco,
o Oracle gerencia blocos de dados que são coleções lógicas desses blocos oferecidos pelo sistema operacional. Nós vimos na
aula anterior a função do parâmetro de con�guração DB_BLOCK_SIZE. É exatamente esse o tamanho do bloco lógico de dados
do Oracle.
 Fonte: Oracle (2020).
Segmentos
Comentário
Conforme podemos ver no exemplo anterior, os data blocks possuem tamanho de 2 KBytes e são manipulados em conjuntos
chamados extents, que é uma quantidade contínua de blocos lógicos, lembrando que esses blocos lógicos devem ter o mesmo
tamanho dos blocos físicos ou seus múltiplos. Esses extents são reunidos logicamente em segments, que formam a base para o
armazenamento de um objeto do banco de dados. Uma tabela, por exemplo, é armazenada logicamente nos segmentos que
representam o conjunto de extents necessários.
Um conjunto de segmentos forma um tablespace. Como você sabe, um banco de dados pode conter esquemas distintos. Cada
esquema é associado a um usuário e seus dados podem estar distribuídos por vários tablespaces.
Os disk groups do ASM manipulam os arquivos �sicamente no disco. Existem, sem prejuízo para a administração das
alocações do espaço em disco, as estruturas lógicas. Na medida em que o sistema operacional oferece blocos físicos de disco,
o Oracle gerencia blocos de dados que são coleções lógicas desses blocos oferecidos pelo sistema operacional. Nós vimos na
aula anterior a função do parâmetro de con�guração DB_BLOCK_SIZE. É exatamente esse o tamanho do bloco lógico de dados
do Oracle.
 Fonte: Oracle (2020).
Tablespaces
Con�ra, na imagem, que os tablespaces armazenam
logicamente os objetos do banco de dados, como tabelas e
índices, sendo que o tablespace pode conter �sicamente
mais de um data�le e uma tabela não precisa estar restrita a
um único data�le. É uma característica que confere grande
�exibilidade ao administrador Oracle, na medida em que ele
pode adicionar data�les aos tablespaces, sempre que
houver necessidade.
/
Veja a seguir uma imagem que resume a organização lógica e física que vimos até aqui. Pela imagem podemos ver que:
 Fonte: Oracle (2020).
Componentes do armazenamento Oracle
Criação de Data�les e Tablespaces
Tendo os conceitos de data�les e tablespaces em mente, podemos iniciar o uso do banco de dados instalado. Você já sabe que,
ao criar uma tabela e inserir dados nela, os dados são armazenados em blocos dentro de um ou mais data�les, que compõem
o tablespace associado ao objeto. Vamos, nesta seção, criar um tablespace de trabalho, o CRM, além dos objetos do esquema
propriamente ditos.
A seguir você pode ver os data�les correspondentes aos tablespaces da instância XE, instalada na aula anterior.
 Fonte: O autor.
Data�les
Um esquema é uma coleção lógica de objetos, como tabelas, visões, stored procedures, funções, entre outros. Todo esquema
pertence a um usuário do Oracle e você pode usar os dois conceitos como um só. De fato, toda vez que um objeto é criado, ele
é catalogado sob o esquema corrente, que possui o mesmo nome do usuário correspondente. Veremos isso em detalhes na
aula de Segurança e Auditoria.
Até a versão 12c, todos os tablespaces pertencem a um único banco de dados. A partir dessa versão, com a introdução do
conceito de multitenancy, o container database (CDB) contém seu próprio conjunto de tablespaces e cada pluggable database
(PDB) também possui seu próprio conjunto de tablespaces. Nessa arquitetura, é possível que tablespaces de diferentes PDBs
tenham o mesmo nome. Por exemplo, no Oracle 12c, dois PDBs distintos podem conter, cada um deles, um tablespace CRM.
A seguir você pode ver os data�les associados aos tablespaces do pluggable database XEPDB1, instalado na aula anterior.
/
 Fonte: O autor.
Data�les de XEPDB1
Note que ele possui os tablespaces SYSTEM e SYSAUX, assim como os tablespaces TEMP, UNDO e USERS, todos eles criados
por padrão em bancos de dados Oracle. Conectando-se a essa instância a partir do Enterprise Manager e selecionando a opção
de Parâmetros de Inicialização no menu Con�guração, podemos acessar a janela de con�guração de parâmetros.
Do lado direito da janela, �ltre os parâmetros por “�le_dest”. A listagem é recarregada para conter somente os parâmetros cujos
nomes contém a string.
 Fonte: O autor.
Parâmetros de inicialização
1
Os primeiros parâmetros referem-se ao caminho e ao
tamanho da Flash Recovery Area (FRA). São eles o
db_recovery_�le_dest e db_recovery_�le_dest_size.
2
Logo abaixo, o parâmetro recovery_remote_�le_dest pode
ser aplicado quando é necessário utilizar uma área distintado padrão para leitura de archive logs, por exemplo.
3
Na sequência, o caminho default para data�les. É esse o
caminho que será utilizado para a criação dos arquivos
*.dbf, correspondentes aos data�les do banco de dados.
Com a opção “De�nir”, você pode alterar o parâmetro e con�gurar o caminho padrão da sua instalação, conforme a seguir. Daí
para a frente, todos os arquivos *.dbf, correspondentes aos data�les, serão criados nessa pasta.
/
 Fonte: O autor.
Caminho default para a criação de data�les
Dica
Toda vez que você estiver trabalhando com o Enterprise Manager, lembre-se de veri�car, no canto superior esquerdo, o nome da
instância à qual está conectado. No exemplo anterior estamos conectados à instância XE (18.4.0.0) e essa conexão foi
estabelecida na porta 5500. Adicionalmente, quando estamos conectados a uma versão com suporte a multitenancy, precisamos
checar a qual database estamos conectados, se ao container database ou a um pluggable database.
Ao conectar-se à instância XE, por padrão você se conecta ao container database. Para se conectar-se ao pluggable database,
inicialmente é preciso alterar a porta do Enterprise Manager do PDB à qual queremos nos conectar. Vamos usar uma sessão do
sqlplus para realizar essa manobra. Conecte-se à instância padrão e mostre o nome da conexão por meio de con_name,
conforme a seguir.
 
C:\>sqlplus / as sysdba
SQL*Plus: Release 18.0.0.0.0 - Production on Sex Set 11 19:10:52 2020
Version 18.4.0.0.0
Copyright (c) 1982, 2018, Oracle. All rights reserved.
Conectado a:
Oracle Database 18c Express Edition Release 18.0.0.0.0 - Production
Version 18.4.0.0.0
SQL> SHOW con_name;
Ao conectar-se à instância XE, por padrão você se conecta ao container database. Para se conectar-se ao pluggable database,
inicialmente é preciso alterar a porta do Enterprise Manager do PDB à qual queremos nos conectar. Vamos usar uma sessão do
sqlplus para realizar essa manobra. Conecte-se à instância padrão e mostre o nome da conexão por meio de con_name,
conforme a seguir.
/
 
C:\>sqlplus / as sysdba
SQL*Plus: Release 18.0.0.0.0 - Production on Sex Set 11 19:10:52 2020
Version 18.4.0.0.0
Copyright (c) 1982, 2018, Oracle. All rights reserved.
Conectado a:
Oracle Database 18c Express Edition Release 18.0.0.0.0 - Production
Version 18.4.0.0.0
SQL> SHOW con_name;
O nome da conexão mostrada é CDB$ROOT, isto é, o container raiz da instância XE. Para veri�car a porta padrão do Enterprise
Manager nesse container, utilize o comando a seguir.
 
CSQL> SELECT dbms_xdb_config.gethttpsport FROM dual;
Logo a seguir você já pode acessar o Enterprise Manager na porta 5501, conforme adiante. Não é necessário reiniciar a
instância.
/
 Fonte: Oracle (2020).
Conecte-se normalmente com a conta sys. A primeira janela exibida pelo Enterprise Manager mostra
informações do banco de dados e grá�cos sobre o uso dos recursos de CPU, memória e
armazenamento, além das sessões ativas. No exemplo, trata-se de uma instância ainda sem atividade.
 Fonte: Oracle (2020).
Note, no canto superior esquerdo, o nome da instância e o do pluggable database ao qual estamos
conectados, XE / XEPDB1 (18.4.0.0). Selecionando a opção Tablespaces no menu Armazenamento, você
pode visualizar a lista de tablespaces do pluggable database, conforme a seguir, con�rmando o que já
tínhamos visto diretamente no �lesystem no começo da aula.
 Fonte: Oracle (2020).
Vamos proceder à criação do tablespace CRM. Clicando sobre o botão Criar, a janela correspondente é
aberta.
Comentário
/
Em seguida a janela apresentada exibirá cinco seções distintas: Geral, Adicionar arquivos de dados, Espaço, Registrando e
Segmentos.
A seguir, veja cada uma das seções.
Geral
A primeira seção, denominada Geral, permite que você indique o nome do tablespace e outras opções, como o tipo do
tablespace, pequeno (small) ou grande (big).
 Fonte: O autor.
Criação do tablespace CRM
Por que o Oracle faz essa diferença entre um small�le e um big�le?
1
Tradicionalmente, os administradores criam seus tablespaces e vão adicionando data�les, quando necessário. São áreas
de armazenamento que crescem ao longo do seu tempo de vida, muitas vezes com taxas e sazonalidades distintas.
Como são �sicamente independentes uns dos outros, os data�les vão sendo alocados em regiões de armazenamento
distintas. Esses são os tablespaces pequenos
2
Entretanto, existe outro tipo de armazenamento que possui requisitos adicionais de alocação e desempenho. Com
tablespaces do tipo big�le, somente um data�le é associado ao tablespace e ele pode chegar a 128 TBytes, quando
utiliza blocos de 32 KBytes.
Saiba mais
Veja os limites de tamanho dos diversos componentes do armazenamento Oracle em:
https://docs.oracle.com/cd/B28359_01/server.111/b28320/limits002.htm
Adicionar arquivos de dados
A seção seguinte na sequência da criação do tablespace CRM é a de�nição do nome do data�le. No exemplo a seguir estamos
de�nindo um único arquivo de dados, denominado CRM.DBF. Com tamanho inicial de 100 MBytes e incrementos automáticos
de 100 MBytes, possui tamanho máximo ilimitado, isto é, ele sofrerá aumentos de 100 MBytes sempre que for necessário.
Naturalmente, a despeito de ser o padrão do Oracle, pode não ser o seu padrão. Usualmente, administradores impõem limites
para seus bancos de dados e con�guram monitorações ativas e alertas quando um determinado percentual de uso do
tamanho máximo é atingido.
javascript:void(0);
/
 Fonte: O autor.
Arquivos de dados do tablespace CRM
Espaço
O passo seguinte é especi�car o tamanho do bloco de dados, sendo o padrão 8 KBytes e o máximo, dependendo do que é
oferecido pelo sistema operacional, limitado a 32 KBytes.
 Fonte: O autor.
Tamanho do bloco do tablespace CRM
Atenção
Além do tamanho do bloco é importante determinar o tamanho dos extents que, conforme vimos no início da aula, são os
conjuntos de blocos que vão formar os segmentos e que, por sua vez, compõem os tablespaces. A con�guração Automático
permite que o Oracle decida qual será o tamanho desses extents; por exemplo, em bancos de dados com tamanho de bloco de 8
KBytes, os extents possuem o mínimo de 8 blocos, somando 64 KBytes. Para um tamanho de bloco de 16 KBytes os extents
possuem o tamanho mínimo de 1 MByte.
Registrando
A próxima seção é a de�nição do modo de registro dos objetos do tablespace, que pode ser logging ou nologging, conforme a
seguir. O padrão é que toda criação e alteração de tabelas, índices e visões materializadas sejam registradas no arquivo de redo
log. É uma con�guração geral para o tablespace, que pode ser alterada especi�camente para um objeto.
/
 Fonte: O autor.
Registro de objetos do tablespace
Segmentos
Na última parte da con�guração tem-se a de�nição do modo de gerenciamento do tamanho dos segmentos, os conjuntos de
extents que vão formar os tablespaces. O modo Automático representa a cláusula SEGMENT SPACE MANAGEMENT AUTO, a
partir da qual o Oracle gerencia o percentual de espaço livre no segmento, em oposição ao gerenciamento manual baseado em
free lists.
 Fonte: O autor.
Segmento e compactação do tablespace CRM
Abaixo da opção de gerenciamento do espaço do segmento tem-se a con�guração da compactação do tablespace, um tópico
sempre muito importante para administradores de bancos de dados. De acordo com sua infraestrutura de armazenamento,
caso seu storage não ofereça compactação nativa, pode ser interessante ativar a compactação básica ou OLTP.
Con�guração básica
Na con�guração básica, disponível no
Oracle Database, somente os dados
inseridos em cargas bulk load são
comprimidos com uso de um algoritmo
padrão e, portanto, é mais indicado para
data warehouses.

Compactação OLTP
Já na compressão do tipo OLTP, disponível
através da option Advanced Compression,
o Oracle utiliza um algoritmo
especialmente desenvolvido para bancos
de dados transacionais, com foco nos
valores frequentemente duplicados em
colunas de tabelas dos bancos OLTP.
Um recurso muito útil para DBAs Oracle é a caixa MostrarSQL. Clicando sobre o botão na parte inferior da janela, a instrução
SQL correspondente à ação composta pelo wizard é mostrada. Veja a seguir como é a instrução completa, já executada com
sucesso, para criação do tablespace.
/
 Fonte: O autor.
Execução da instrução SQL para criação do tablespace
CRM
A listagem atualizada de tablespaces já mostra CRM com tamanho de 100 MBytes, associado ao único data�le CRM.DBF.
 Fonte: O autor.
Listagem atualizada contendo o tablespace CRM
Dica
É muito importante que, nesta fase da aula, você acesse sua instalação e crie o tablespace conforme �zemos até aqui. Os
próximos passos desta aula, e também da disciplina, dependerão desse passo. Você pode fazer isso pelo Enterprise Manager ou
pelo sqlplus, utilizando a instrução CREATE TABLESPACE que vimos antes.
Criação de Objetos
Dado que temos um tablespace criado para acomodar os objetos, podemos dar início a essa construção. Para tanto,
utilizaremos o SQL Developer, ferramenta indispensável a todo administrador de bancos de dados Oracle, instalada também na
aula anterior.
Conexão ao PDB
Para con�gurar uma conexão ao PDB por essa ferramenta utilize o nome de serviço XEPDB1 no localhost, porta 1521,
conforme a seguir.
/
 Fonte: Oracle (2020).
Conexão do SQL Developer ao Pluggable Database XEPDB
Execução de comando SQL
Uma vez que você tenha se conectado com sucesso ao XEPDB1, uma janela para execução de comando SQL é aberta. Veja
adiante um SELECT na tabela dba_tablespaces. Ele retorna os tablespaces existentes na instância XE, banco de dados XEPDB1.
 Fonte: Oracle (2020).
Listagem de tablespaces usando o SQL Developer
Tablespaces e espaços
A seguir, duas construções importantes. A primeira faz um join de dba_data_�les com dba_free_space para mostrar todos os
tablespaces e os espaços total e livre nos data�les correspondentes a cada tablespace.
/
 Fonte: Oracle (2020).
Tablespaces e espaço total e livre
A segunda construção acrescenta dba_tablespaces no join para mostrar os espaços total e livre, e o caminho do arquivo dbf,
por data�le. Note que a diferença da construção está no SUM do SELECT anterior, que faz o valor apresentado ser o somatório
dos espaços em todos os data�les associados ao tablespace. Nesta próxima construção os data�les são apresentados
separadamente, de forma que o administrador possa ter uma visão mais detalhada do consumo do espaço em disco de cada
data�le e do espaço livre remanescente em cada um deles.
 Fonte: Oracle (2020).
Tablespaces, data�les e espaço total e livre
No dia a dia do administrador há muito trabalho utilizando-se manobras com tablespaces. Não são raras as solicitações para
aumento de espaço alocado a data�les, movimentação de tablespaces entre bancos de dados, restaurações de esquemas etc.
Uma técnica especialmente importante para lidar com essas solicitações é ser capaz de induzir a alteração do estado de um
tablespace para que certas manobras possam ser realizadas, como um transporte ou um backup, muito embora esse não seja
um requisito. Os comandos a seguir permitem que você transite para o modo read only (somente consultas ao banco de
dados) e para o modo read write (atualizações permitidas).
/
 
ALTER TABLESPACE CRM READ ONLY;
ALTER TABLESPACE CRM READ WRITE;
Com o tablespace CRM no estado padrão read write, vamos criar os objetos dentro do tablespace. Inicialmente, conforme os
comandos selecionados na janela do SQL Developer mostrados a seguir, criamos a tabela Usuarios com as colunas id_usuario
como chave primária e a coluna nome do tipo varchar2. Na sequência, cria-se a tabela Usuarios_Historico, com as colunas
id_usuario, também chave primária, data do tipo date e hist do tipo varchar2.
 Fonte: Oracle (2020).
Criação de objetos no tablespace CRM
Note a cláusula TABLESPACE no comando CREATE TABLE. É essa a cláusula que faz o objeto tabela ser criado no tablespace
CRM. Veja também que a janela de Saída do Script vai mostrando o resultado dos comandos. É o que ocorre para os dois
INSERTs e o commit associado, que con�rma as duas alterações provocadas pelos INSERTs anteriores.
Por �m, é criada a visão vw_usuarios, que faz um join entre as tabelas Usuarios e Usuarios_Historico e mostra as linhas
correspondentes. O resultado do SELECT na visão é mostrado na janela Resultado da Consulta, conforme a seguir.
/
 Fonte: Oracle (2020).
SELECT na visão
Atenção! Aqui existe uma videoaula, acesso pelo conteúdo online
Backup e Restore
Oracle oferece um sistema completo para administração de backups de banco de dados, dos tablespaces e de seus arquivos
de controle, como control �les e sp�les. É tarefa fundamental de um administrador Oracle con�gurar o RMAN (Recovery
Manager), tão logo sua instância esteja operacional. É o que vamos fazer nesta seção.
Inicialmente, conecte-se ao seu banco de dados padrão com sqlplus e veja o modo de archive log atual.
 
SQL> SELECT name, log_mode FROM v$database;
XE NOARCHIVELOG
SQL> ARCHIVE LOG LIST;
Modo log de banco de dados Modo Sem Arquivamento
Arquivamento automático Desativado
Destino de arquivamento C:\Oracle\product\18.0.0\dbhomeXE\RDBMS
A sequência de log on-line mais antiga 11
Sequência de log atual 13
É o padrão da instalação con�gurar o banco de dados em
NOARCHIVELOG. Isso signi�ca que o banco de dados não está
gerando archive logs, os registros de log de transações, o que faz com
que o Oracle reutilize os redo logs e não seja possível realizar backups
incrementais do banco de dados. Portanto, se quiser realizar backups
incrementais dos seus bancos, você deve ativar os archive logs.
Backup de banco de dados
Veja os passos a serem realizados por um administrador Oracle em relação ao backup de seu banco de dados.
/
Backup do control �les
Como vimos anteriormente, a primeira manobra é gerar uma cópia de segurança dos control �les:
1
Acesse o RMAN pela linha de comando e conecte-se ao
banco de dados principal, conforme a seguir.
2
Após a conexão, execute o comando de backup do control
�le corrente.
 
C:\>rman
RMAN> connect target sys@xe
Senha do banco de dados de destino: *****
conectado ao banco de dados de destino: XE (DBID=2931257664)
RMAN> backup current controlfile;
Iniciando backup em 12/09/20
usar o arquivo de controle do banco de dados de destino em vez do catálogo de recuperação
canal alocado: ORA_DISK_1
canal ORA_DISK_1: SID=255 tipo de dispositivo=DISK
canal ORA_DISK_1: iniciando conjunto de backup completo de arquivo de dados
canal ORA_DISK_1: especificando arquivo(s) de dados no conjunto de backups
incluindo arquivo de controle atual no conjunto de backups
canal ORA_DISK_1: iniciando a parte 1 em 12/09/20
canal ORA_DISK_1: parte finalizada 1 em 12/09/20
handle=C:\ORACLE\PRODUCT\18.0.0\DBHOMEXE\DATABASE\06VA8478_1_1 tag=TAG20200912T1
54024 comentário=NONE da parte
canal ORA_DISK_1: conjunto de backup concluído, tempo decorrido: 00:00:01
Finalizado backup em 12/09/20
Iniciando Control File and SPFILE Autobackup em 12/09/20
handle de parte=C:\ORACLE\PRODUCT\18.0.0\DBHOMEXE\DATABASE\C-2931257664-20200912-01 comentario=NONE
Finalizado Control File and SPFILE Autobackup em 12/09/20
Backup do banco de dados e dos tablespaces
O próximo passo é o backup do banco de dados e dos tablespaces que o compõem. Note que, quando entramos no RMAN,
estabelecemos uma conexão com o banco de dados destino e �zemos um backup dos seus control �les. Com o RMAN, você
pode ter um catálogo dos seus backups e utilizar esse catálogo para administrá-los.
Para fazer o backup do database, vamos utilizar uma técnica clássica: parar o banco de dados e fazer a cópia. Abra um prompt
de comando, conecte-se ao banco com sqlplus e execute os comandos a seguir:
 
SQL> shutdown immediate;
Banco de dados fechado.
Banco de dados desmontado.
Instância ORACLE desativada.
SQL> startup force mount;
Instância ORACLE iniciada.
Banco de dados montado.
No estado montado, o RMAN permite que o backup do banco de dados sejarealizado, mesmo no modo NOARCHIVELOG. Para
isso, vamos criar um canal para a pasta de backup e utilizar uma formatação para nomear os arquivos. Veja que a construção a
seguir realiza a cópia completa de todos os data�les do banco de dados, os control �les e os sp�les. É o backup completo do
banco de dados.
/
 
RMAN> RUN
2> {
3> allocate channel t1 type disk format 'C:\Oracle\backup\BKP_%d_%t_%s.RMAN';
4> backup database include current controlfile;
5> backup spfile;
6> }
Ao �m da execução do backup, você pode visualizar as cópias na pasta correspondente ao canal t1, conforme a seguir. Note
que há um arquivo de backup para cada data�le, correspondente a cada um dos cinco tablespaces do banco XE.
 Fonte: O autor.
Arquivos de backup RMAN
O backup de um tablespace especí�co pode ser realizado com a mesma técnica utilizando-se a instrução BACKUP
TABLESPACE. A restauração, seja do banco de dados ou de apenas um tablespace, pode ser feita com a instrução FLASHBACK
DATABASE, RESTORE e RECOVER DATABASE e RESTORE e RECOVER TABLESPACE, passando como parâmetro um point-in-
time, que especi�ca a data e o horário do backup a ser restaurado. Veja um exemplo a seguir.
 
restore tablespace CRM until time "to_date('2020-08-31 18:00:00’, ‘YYYY-MM-DD HH24:MI:SS’)";
Após o restore, é preciso emitir um recover, de forma que os archive logs sejam aplicados. RMAN é uma ferramenta completa e
robusta para administração de backups. É fundamental que você pratique essas manobras. Vale investir seu tempo para
experimentar as técnicas e estratégias disponíveis pois, com o DBA Oracle, você certamente vai precisar implementar
estratégias de backup.
Saiba mais
Acesse o endereço https://docs.oracle.com/cd/E11882_01/backup.112/e10642/toc.htm  para ter um guia completo sobre como
usar o RMAN.
Atenção! Aqui existe uma videoaula, acesso pelo conteúdo online
Conclusão
A administração dos bancos de dados Oracle passa necessariamente pelo conhecimento de suas estruturas físicas e
componentes lógicos que desempenham as funções de organização e implementação dos arquivos de dados, tablespaces,
redo log �les e �ash recovery area. Na medida em que a vida útil dos bancos de dados avança, a monitoração e a manutenção
dos espaços usado e livre desses componentes são tarefas permanentes de um DBA Oracle.
Além da administração dos componentes citados, o uso do RMAN para realização de cópias de segurança e restaurações de
databases e tablespaces é prática frequente de um administrador Oracle. Com o RMAN, temos uma ferramenta completa e
segura para a manipulação e a implementação das mais variadas estratégias de backup.
javascript:void(0);
/
Atenção! Aqui existe uma videoaula, acesso pelo conteúdo online
Atividade
1. Assinale a alternativa incorreta sobre os data�les e tablespaces do Oracle.
a) Tablespaces são compostos por um ou mais segmentos.
b) Tablespaces são representados fisicamente por um ou mais datafiles.
c) Datafiles são compostos por blocos físicos de dados.
d) Blocos lógicos do Oracle podem conter um ou mais blocos físicos do disco, sendo sempre do mesmo tamanho que esses blocos físicos.
e) Extents contém um ou mais blocos lógicos.
2. Qual dos comandos abaixo executa com sucesso a criação da visão materializada Usuarios_Historico no tablespace CRM?
Considere que codigo_sql refere-se ao SELECT correto para recuperar os dados necessários à visão.
a) CREATE MATERIALIZED VIEW CRM.Usuarios_Historico AS codigo_sql.
b) CREATE MATERIALIZED VIEW Usuarios_Historico AS codigo_sql TABLESPACE CRM.
c) CREATE MATERIALIZED VIEW Usuarios_Historico ON TABLESPACE CRM AS codigo_sql.
d) CREATE VIEW CRM.Usuarios_Historico AS codigo_sql MATERIALIZED.
e) CREATE VIEW Usuarios_Historico AS codigo_sql MATERIALIZED TABLESPACE CRM.
3. Qual das alternativas a seguir representa uma instrução RMAN para restauração do tablespace CRM?
a) RESTORE CONTROLFILE; RESTORE TABLESPACE CRM FROM T1.
b) RESTORE DATABASE FROM T1 TABLESPACE CRM.
c) RESTORE TABLESPACE CRM UNTIL TIME “TO_DATE(‘2020-08-31’, ‘YYY-MM-DD’).
d) RESTORE DATABASE VALIDATE CRM.
e) RESTORE TABLESPACE CRM VALIDATE ALL.
Notas
Referências
CREATE tablespace. Oracle Help Center. Disponível em:
https://docs.oracle.com/cd/B19306_01/server.102/b14200/statements_7003.htm. Acesso em: 10 set. 2020.
CREATING Tables. Oracle Help Center. Disponível em:
https://docs.oracle.com/cd/B28359_01/server.111/b28310/tables003.htm. Acesso em: 10 set. 2020.
DATABASE Backup and Recovery User's Guide. Oracle Help Center. Disponível em:
https://docs.oracle.com/cd/E11882_01/backup.112/e10642/toc.htm. Acesso em: 15 set. 2020. 
DATA BLOCKS, Extents, and Segments. Oracle Help Center. Disponível em:
https://docs.oracle.com/cd/B19306_01/server.102/b14220/logical.htm. Acesso em¨5 set. 2020.
GETTING Started with RMAN. Oracle Help Center. Disponível em:
https://docs.oracle.com/cd/E11882_01/backup.112/e10642/rcmquick.htm. Acesso em: 15 set. 2020.
MANAGE Tablespaces Using EM Express. Oracle Help Center. Disponível em:
https://docs.oracle.com/en/database/oracle/oracle-database/tutorial-manage-tablespace/index.html?opt-release-19c?
learningpath=true&appuser=nobody&appsession=8453470138914&contentid=26500&activityname=Manage%20Tablespaces%20Using%20EM%20Express&eventid=6362
. Acesso em: 15 set. 2020.
PHYSICAL Database Limits. Oracle Help Center. Disponível em:
https://docs.oracle.com/cd/B28359_01/server.111/b28320/limits002.htm. Acesso em: 10 set. 2020.
PUGA, S.; FRANÇA, E.; GOYA, M., 2013. Banco de Dados: implementação em SQL, PL/SQL e Oracle 11g. São Paulo: Pearson. 332
p.
RAMAKHRISHNAN, R.; GEHRKE, J. Database Management Systems. 3rd. edition. New York: McGraw-Hill, 2002. 1098 p.
TABLESPACE Data Dictionary Views. Oracle Help Center. Disponível em:
https://docs.oracle.com/cd/B28359_01/server.111/b28310/tspaces014.htm. Acesso em: 5 set. 2020.
TABLESPACES, Data�les, and Control Files. Oracle Help Center. Disponível em:
https://docs.oracle.com/cd/B19306_01/server.102/b14220/physical.htm. Acesso em: 5 set. 2020.
javascript:void(0);
javascript:void(0);
javascript:void(0);
javascript:void(0);
javascript:void(0);
javascript:void(0);
javascript:void(0);
javascript:void(0);
javascript:void(0);
/
Próxima aula
Criação de usuários e esquemas;
Associação de esquemas a tablespaces;
Veri�cações frequentes em auditorias.
Explore mais
RMAN é uma das principais ferramentas dos administradores de bancos de dados Oracle. Nesta aula, utilizamos o RMAN por
linha de comando, mas é possível utilizá-lo também por meio do Enterprise Manager. 
No endereço https://blogs.oracle.com/oracle-brasil/ você vai encontrar os blogs da Oracle Brasil. Pesquise neste endereço por
RMAN e selecione o artigo RMAN Backups using Cloud Control. Explore esse artigo. Ele mostra detalhadamente como utilizar o
Enterprise Manager Cloud Control para con�gurar e utilizar o RMAN a partir do portal de administração.
javascript:void(0);

Continue navegando