Вы находитесь на странице: 1из 25

[Oracle] OCA 11g Arquitetura de instncia nica

Posted by Milton Bastos on mar 7, 2012 in 1Z0-052 | 0 comments

Um servidor Oracle uma instncia conectada a um banco de dados;

Uma instncia um bloco de memria compartilhada e um conjunto de processos em segundo


plano (background processes);

Um banco de dados um conjunto de arquivos no disco;

Uma sesso de usurio um processo de usurio conectado a um processo de servidor.

Resumo: estruturas de armazenamento

So 3 os tipos de arquivos obrigatrios em um banco de dados Oracle: controlfile, redo log


files e datafiles;

O controlfile armazena informaes de integridade e os ponteiros para o restante do banco de


dados;

Os redo logs registram todas as alteraes recentes aplicadas ao banco de dados;

Os datafiles armazenam os dados em disco;

So arquivos externos: parameter file, archivelogs, trace files e log files;

O armazenamento de dados lgicos (segments) abstrado do armazenamento de dados fsicos


(datafiles) por tablespaces;

Um tablespace pode ser composto de vrios datafiles;

Segments so compostos de vrias extents, que so compostas por vrios blocos do Oracle,
que so compostos por vrios blocos do sistema operacional;

Um segment pode ter extents em vrios datafiles.

Estruturas de memria

SGA system global area a memria compartilhada da instncia;

PGA program global area a memria privada de uma sesso;

Subestruturas obrigatrias da SGA: database buffer cache, log buffer, shared pool;

Subestruturas opcionais da SGA: large pool, Java pool, Streams pool;

As estruturas da SGA podem ser redimensionadas dinamicamente e gerenciadas


automaticamente com excesso do log buffer.

Estruturas de processos

Os server processes so iniciados sob demanda quando os usurios se conectam;

Os background processes so iniciados durante o startup da instncia e persistem at


o shutdown;

Os server processes leem o banco de dados;

Os background processes gravam no banco de dados;

Alguns background processes sempre estaro presentes (SMON, PMON, DBWn, LGWR, CKPT
e MMON). Outros executaro dependendo de quais funes foram ativadas.

[Oracle] OCA 11g Ambiente do Banco de Dados


Posted by Milton Bastos on mar 7, 2012 in 1Z0-052 | 0 comments
Um dos captulos do contedo deste exame sobre as ferramentas disponveis para administrar um
banco de dados Oracle. Vou citar abaixo as principais, e importante saber as funes de cada uma e

talvez at se aprofundar em cada uma delas alguns detalhes podem ser muito importantes,e as vezes
exigidos em algumas questes.

Oracle Universal Installer (OUI) software para gerenciar a instalao dos produtos Oracle. Seu
componente central o inventory (inventrio). O inventory deve ficar fora de qualquer Oracle Home.
Ele armazena detalhes de todos os produtos Oracle instalados na mquina, incluindo a verso exata,
o local, patches instalados, etc. Tambm faz testes de pr-requisitos antes de iniciar instalaes;

Database Configuration Assistant (DBCA) ferramenta grfica para criao de banco de dados;

Database Upgrade Assistant (DBUA) ferramenta grfica para atualizao de banco de dados;

Tanto o DBCA quanto o DBUA so escritos em Java e exigem um terminal grfico para exibio;

SQL*Plus ferramenta para se conectar a um banco de dados e executar comandos SQL.


Trabalha em modo line command, e por isso no exige um terminal grfico;

SQL Developer mesma funo do SQL*Plus. Oferece mais funes e tambm interface grfica
muito mais amigvel, porm mais exigente em relao necessidade de um terminal grfico: ele
desenvolvido em Java;

Oracle Enterprise Manager (OEM)- duas verses, descritas abaixo;

OEM Database Control ferramenta para gerenciar um banco de dados (podendo ser inclusive
um banco de dados RAC). instalado no Oracle Home. Oferece muitos recursos e deve ser estudada
com ateno especial para quem pretende certificaes OCA e OCP;

OEM Grid Control pode gerenciar muitos bancos de dados (alm de outras funes);

Oracle Net Manager e Oracle Net Configuration Assistant ferramentas grficas para
configurao do ambiente de rede do Oracle.;

Export, Import, Data Pump e SQL*Loader utilitrios de extrao e carga de dados;

Recovery Manager (RMAN) utilitrio para backup e recovery de banco de dados;

Criando um Banco de Dados Oracle

O nico parmetro de instncia para o qual no h um valor default o DB_NAME. Sem este
parmetro no possvel criar uma instncia. Ele pode ser configurado com at 8 caracteres, sendo
permitido apenas letras e dgitos, e deve comear necessariamente com uma letra;

O comando CREATE DATABASE pode ser muito longo (com muitos parmetros) e complicado,
mas h valores default para tudo. possvel criar um banco de dados usando o SQL*Plus com
apenas duas palavras: CREATE DATABASE;

Um banco de dados pode ser criado usando o DBCA ou a partir da linha de comando do SQL*Plus. Na
verdade, o DBCA pode gerar scripts para serem executados na linha de comando do SQL*Plus. A criao
tem trs etapas distintas: criar a instncia, criar o banco de dados e criar o dicionrio de dados. Se usar o
DBCA, um listener de banco de dados pode ser necessrio. O DBCA no usa o listener, mas, se a opo
for usada para configurar o Database Control, o DBCA verificar se h um listener disponvel.
Para criar uma instncia, tudo que necessrio um arquivo de parmetros. Os parmetros crticos so
o nome do banco de dados e o local dos controlfiles. Depois, para criar um database, use o comando
CREATE DATABASE. Isso ir gerar no mnimo um controlfile, dois grupos de redo log, os tablespaces
SYSTEM e SYSAUX e um dicionrio de dados. Para tornar o banco de dados utilizvel, execute um
conjunto de scripts que cria as vises do dicionrio de dados e os pacotes PL/SQL fornecidos e, em
seguida, instale todas as opes necessrias.
(trecho extrado do livro OCA Oracle Database 11g Administrao I, de John Watson)

[Oracle] OCA 11g Gerenciamento de instncia Oracle

Posted by Milton Bastos on mar 26, 2012 in 1Z0-052 | 0 comments

Gerenciando a instncia Oracle


A instncia abre um banco de dados, mas os dois so separados e precisam de arquivos diferentes. A
instncia l apenas o arquivo de parmetro para se construir na memria. Ela, ento, monta o banco de
dados lendo o controlfile, cuja localizao especificada por um parmetro. O controlfile tem ponteiros
para o restante do banco de dados. Portanto, a inicializao de um banco de dados feita em etapas:
modos NOMOUNT, MOUNT e OPEN.
A instncia e o controlfile podem ser consultadas por meio de views de desempenho dinmico no modo
NOMOUNT ou MOUNT. Uma vez que o banco de dados esteja em modo OPEN, o dicionrio de dados
tambm pode ser consultado, por meio das views de dicionrio de dados.

SYSDBA e SYSOPER no so usurios muitas vezes alguns iniciantes cometem este engano.
Na verdade eles so privilgios que podem ser concedidos aos usurios. Por padro, somente o
usurio SYS possui esses privilgios.

init.ora arquivo de parmetro esttico, pfile. S lido uma vez, na inicializao da instncia.

spfile arquivo de parmetro dinmico. Enquanto a instncia est em execuo, este arquivo
lido e atualizado constantemente.

Para que uma instncia seja colocada em funcionamento obrigatria a presena de um dos
dois arquivos acima, pois h um parmetro que no possui valor padro: DB_NAME.

Uma tentativa de alterar um parmetro esttico falhar a menos que o SCOPE seja especificado
como SPFILE. O SCOPE padro BOTH: a instncia em execuo e o SPFILE. Se a instncia foi
iniciada com um pfile, ento SCOPE=SPFILE falhar.

A view ALL_TABLES no mostra todas as tabelas do banco de dados! A view correta para isso
a DBA_TABLES.

As views de desempenho dinmico so preenchidas a partir da instncia ou do controlfile. As


views DBA_*, ALL_* e USER_* so preenchidas a partir do dicionrio de dados. Essa diferena
determina quais views podem ser consultadas nos vrios estgios da inicializao.

Estgios de inicializao

NOMOUNT: requer um arquivo de parmetro (pfile ou spfile);

MOUNT: requer o controlfile;

OPEN: requer os datafiles e os redo log files.

Configurao de parmetros de inicializao

Os parmetros estticos no podem ser alterados sem um shutdown/startup;

Outros parmetros podem ser alterados dinamicamente, para a instncia ou para uma sesso;

Os parmetros podem ser vistos nas views de desempenho dinmico V$PARAMETER e


V$SPPARAMETER.

Alert log e trace files

O alert log um fluxo contnuo de mensagens relativas s operaes crticas;

Os trace files so gerados por processos em segundo plano, normalmente quando encontram
erros.

Dicionrio de dados e views de desempenho


dinmico

As views de desempenho dinmico so preenchidas a partir da instncia ou do controlfile;

As views do dicionrio de dados sao preenchidas a partir do dicionrio de dados;

As views de desempenho dinmico acumulam valores durante o tempo de vida da instncia e


so reinicializadas no startup do banco de dados;

As views do dicionrio de dados mostram informaes que persistem alm do shutdown e


do startup;

Ambas as views do dicionrio de dados e de desempenho dinmico so publicadas por meio de


sinnimos.

[Oracle] OCA 11g Ambiente de rede Oracle


Posted by Milton Bastos on mar 26, 2012 in 1Z0-052 | 0 comments

Configurando o ambiente de rede do Oracle


O Oracle Net configurado com um conjunto de arquivos texto: listener.ora, sqlnet.ora e (se estiver
usando a nomeao local, como a maioria das instalaes) o tnsnames.ora. Mas h valores padro pra
tudo: no lado do servidor, o listener pode executar com os valores padro e usando o mtodo de conexo
fcil (Easy Connect), o lado do cliente tambm no precisa de nenhuma configurao.
As ferramentas fornecidas para editar esses arquivos so o Net Manager, o Net Configuration Assistant e
o Enterprise Manager. Experimente as trs para tornar-se familiarizado com sua navegao e com o que
elas podem fazer, e sempre verifique o contedo dos arquivos de texto para obter um entendimento
completo do que foi feito.
O ambiente de servidor dedicado comumente usado, mas lembre-se da alternativa de servidor
compartilhado. Ele pode no ser amplamente usado, mas sempre ser testado nos exames de OCP.

Se o listener de banco de dados no estiver executando, nenhum novo server processes pode
ser iniciado. Isso no afetar nenhuma das sesses existentes j estabelecidas;

O listener e a instncia devem estar executando no mesmo computador, a menos que voc
esteja usando o RAC. Em um ambiente RAC, qualquer listener em qualquer computador no cluster
pode conectar voc a qualquer instncia em qualquer computador;

4 mtodos de resoluo de nome: easy connect, nomeao local, nomeao de diretrio e


nomeao externa;

Easy Connect no precisa de resoluo de nome;

A resoluo de nome pode ser local (tnsnames.ora) ou central (com um diretrio LDAP);

Um listener pode atender diversos bancos de dados;

Diversos listeners podem se conectar a um mesmo banco de dados;

O registro da instncia nos listeners pode ser esttico (por meio da codificao de detalhes no
arquivo listener.ora) ou dinmico (com o processo PMON atualizando o listener);

Cada processo de usurio tem uma conexo persistente ao seu processo de servidor dedicado.

Existem 3 arquivos crticos envolvidos na configurao do Oracle Net:

listener.ora arquivo do lado do servidor que define os listeners de banco de dados. Inclui
protocolos, endereos e portas na qual eles escutaro as solicitaes de conexo de entrada e
(opcionalmente) uma lista esttica de instncias nas quais eles iniciaro as sesses;

tnsnames.ora arquivo do lado do cliente usado para resoluo de nome. usado pelos
processos de usurios para localizar os listeners de banco de dados. Ele tambm pode ser usado
pela prpria instncia para localizar um listener no qual se registrar;

sqlnet.ora opcional e pode existir no lado do servidor, no lado do cliente, ou em ambos. Ele
contm configuraes que se aplicam a todas as conexes e listeners, como regras de segurana e
criptografia.

Os 3 arquivos acima existem por padro no diretrio $ORACLE_HOME/network/admin.


possvel usar outro diretrio, definindo-o com a varivel de ambienteTNS_ADMIN

Shared Server

Uma conexo da sesso a um dispatcher persiste durante a sesso, ao contrrio da conexo ao


listener, que temporria;

H uma fila de entrada comum compartilhada por todos os dispatchers, mas cada dispatcher tem
sua prpria fila de respostas;

No servidor compartilhado, toda a estrutura de memria PGA entra na SGA com exceo
do Stack Space;

Todos os dispatchers colocam as solicitaes em uma fila comum;

Os processos de shared server retiram as solicitaes da fila comum;

Os shared server processes colocam os resultados na fila de respostas


do dispatcher apropriado;

Os dispatchers retornam os resultados para o processo de usurios apropriado;

O shared server configurado com no mnimo dois parmetros de


instncia: dispatchers e shared_servers.

Resumo
O Oracle Net um protocolo de rede proprietrio da Oracle Corporation, que executa em camadas em
cima dos protocolos padro da indstria. Ao usar a arquitetura de servidor dedicado, o listener de banco
de dados do Oracle Net ir gerar um processo de servidor para cada sesso; quando usar a arquitetura
de servidor compartilhado; muitas sesses compartilharo um pool de processos de servidor, via
dispatchers que usam filas para passar solicitaes e resultados entre servidores.
O Oracle Net pode ser configurado manualmente, editando arquivos de texto ou com ferramentas
grficas. o servidor compartilhado implementado somente do lado do servidor, configurando os
parmetros de instncia.

[Oracle] OCA 11g Estruturas de Armazenamento


Posted by Milton Bastos on mar 26, 2012 in 1Z0-052 | 4 comments

Tablespaces e Datafiles

Um tablespace pode ter muitos datafiles;

Um tablespace pode ter muitos segmentos;

Um segmento composto por uma ou mais extenses;

Uma extenso composta de muitos blocos consecutivos em um datafile;

Um bloco do Oracle deve ser composto de um ou mais blocos do sistema operacional;

O bloco do Oracle a granulidade de I/O do banco de dados;

Gerenciamento de Tablespaces

Tablespace SMALLFILE pode ter muitos datafiles, mas um tablespace BIGFILE pode ter apenas
um;

Os tablespaces tm como padro o gerenciamento local de extenses, o gerenciamento


automtico de espao de segmento, mas no um tamanho de extenso uniforme;

Os datafiles OMF so automaticamente nomeados, iniciam com 100MB e podem estender sem
limite, de forma automtica;

Um tablespace que contm segmentos no pode ser descartado, a menos que uma clusula
INCLUDING DATAFILES seja especificada;

Tablespaces podem ser online ou offline, leitura e gravao ou somente leitura;

Tablespaces podem armazenar trs tipos de objetos: objetos permanentes, objetos temporrios
ou segmentos de undo.

Gerenciamento de espao nos tablespaces

O gerenciamento local de extenses controla a alocao de extenses em cada datafile com


bitmaps;

A clusula UNIFORM SIZE durante a criao de um tablespace obriga todas as extenses a


terem o mesmo tamanho;

A clusula AUTOALLOCATE permite que o Oracle determine o tamanho da prxima extenso,


que baseado na quantidade de extenses que esto sendo alocadas para um segmento;

O gerencimanto automtico de espao de segmento controla o espao livre em cada bloco de


uma extenso usando bitmaps;

possvel converter um tablespace do gerencimanto de extenses por dicionrio para


gerenciamento local de extenses, mas no de um gerenciamento de segmento por freelist para um
gerenciamento automtico.

ASM

O ASM pode armazenar somente datafiles, no os binrios. O Oracle Home sempre deve estar
em um sistema de arquivos convencional;

O ASM faz striping de arquivos, no de volumes. O espelhamento opcional, o striping no.

Gerenciando estruturas de armazenamento de


banco de dados
essencial estar absolutamente claro o modelo de armazenamento do Oracle: a abstrao do
armazenamento lgico para o fsico, o que significa que no h relacionamento direto entre uma tabela
(ou qualquer outro tipo de segmento) e um datafile. O gerenciamento de espao muito mais simples na
verso atual do que nas verses anteriores e pode ser, de fato, completamente automatizado usando o
OMF. Tudo o que sempre necessrio, uma vez que os parmetros foram configurados, o simples
comando:
CREATE TABLESPACE tablespacename;
e, em seguida, permitir que o Oracle faa o resto. O uso de bitmaps par ao gerenciamento de extenses e
para gerenciamento de espao dentro de segmentos possibilita uma grande melhoria de desempenho
sobre as verses anteriores. As tcnicas anteriores s so suportadas para manter a compatibilidade com
verses anteriores. possvel converter as estruturas de armazenamento existentes para os mtodos
mais recentes.
O Database Control inclui excelentes ferramentas grficas para gerenciar tablespaces e datafiles, mas,
para fins de informaes, normalmente ser necessrio consultar as views de dicionrio de dados e de
desempenho dinmico.

[Oracle] OCA 11g Segurana do Usurio


Posted by Milton Bastos on mar 26, 2012 in 1Z0-052 | 0 comments

Criar e gerenciar contas de usurios de bancos de


dados

Os usurios se conectam a uma conta de usurio, que conectada a um schema;

Todos os usurios devem ser autenticados antes que possam se conectar;

Um usurio deve ter uma cota em um tablespace antes que possa criar algum objeto;

Um user proprietrio de objetos no pode ser apagado, a menos que a palavra-chave CASCADE
seja usada.

Conceder e revogar privilgios

Por padro, um user pode no fazer nada, nem mesmo logon;

Os privilgios diretos so sempre ativados;

Uma revogao de um privilgio de sistema no pode ser em cascata; uma revogao de um


privilgio de objeto pode.

Criar e gerenciar roles

As roles no so objetos de schema;

As roles podem conter grants de sistema e grants de objeto, alm de outras roles;

Uma role pode ser ativada ou desativada para uma sesso.

Criar e gerenciar profiles

Os profiles podem gerenciar limites de recursos e senhas;

Os limites de senhas so sempre impostos; os limites de recursos dependem de um parmetro


de instncia;

Todo user sempre tem um profile, por padro o profile DEFAULT.

Administrando a segurana do usurio


A segurana padro em um banco de dados Oracle de 100%. Voc no pode sequer fazer logon sem
uma permisso concedida para isso. No h como se conectar anonimamente, embora existam vrias
maneiras de voc se autenticar.
Uma vez conectado a uma conta de usurio, voc restringido por grants e roles que lhe foram
concedidos e por sua cota nos tablespaces. Uma role apenas um pacote de grants de objeto e sistema,
mas, ao contrrio de um grant concedido diretamente, uma role pode ser ativada ou desativada dentro de
uma sesso.
Conceder grants de sistema, grants de objeto e roles um procedimento similar no conceito, mas requer
uma sintaxe ligeiramente diferente. A sintaxe para um REVOKE idntica. A revogao de um grant de
objeto ser em cascata, mas a revogao de um grant de sistema ou role, no.
Os profiles podem ser usados para impor regras sobre senhas e controlar os recursos que os users tm
permisso para usar dentro do banco de dados.

RESUMO
As contas de users definem os users que podem se conectar ao banco de dados e esto associadas a
um schema que armazenou os objetos pertencentes conta. Os grants devem ser concedidos a uma
conta (diretamente ou via roles) antes que a conta possa ser utilizada.

Os grants tm dois formatos: grants de sistema, que controlam certas aes no banco de dados
(tipicamente, aes que envolvem alteraesfeitas ao dicionrio de dados), e grants de objeto, que
controlam o acesso aos dados. Uma role um pacote de grants. Ao contrrio de um grant (que est
sempre ativado uma vez que concedido), uma role pode ser ativada ou desativada em uma sesso.
Os profiles fornecem controle sobre as senhas das contas e uso dos recursos. Todas as contas de users
tm um profile, por padro, chamado DEFAULT. O profile DEFAULT pode ser ajustado, e a alterao ser
imediatamente aplicada a todos os users com o perfil DEFAULT. Profiles adicionais podem ser criados e
atribudos explicitamente a certos users.

Dicas

Antes que possa criar uma tabela, voc deve ter permisso para executar CREATE TABLE e
uma cota em um tablespace no qual ir cri-la;

Os users no precisam de uma cotaem seus tablespaces temporrios;

A revogao de um grant de objeto ser em cascata, ao contrrio de uma revogao de um grant


de sistema;

Os grants ANY, que concedem permisses em objetos em todas as contas de user no banco de
dados, no so grants de objeto so grants de sistema;

[Oracle] OCA 11g Gerenciando Objetos de Schema


(parte 1)
Posted by Milton Bastos on mar 26, 2012 in 1Z0-052 | 0 comments

Tabelas

As tabelas existem dentro de schemas e devem estar de acordo com as regras de nomeao de
objetos de schema;

As colunas de uma tabela so definidas como sendo de um certo tipo de dados.

Users, contas, schemas e objetos

Um usurio uma pessoa que faz logon em um banco de dados e se conecta a uma conta de
usurio;

Quando uma conta de usurio criada, um schema tambm criado;

Um schema consiste em objetos pertencentes conta. Inicialmente ele est vazio, mas ele pode
conter tabelas, views, cdigos e outros objetos do banco de dados;

Os objetos de schema so objetos com um owner (proprietrio). O identificador nico para um


objeto de um tipo especfico no apenas o seu nome: seu nome com um prefixo do nome
do schema ao qual ele pertence;

Exemplo: a tabela SCOTT.DEPT uma tabela chamada DEPT que pertence ao usurio SCOTT.
possvel existir uma tabela HR.DEPT, completamente diferente, sem nenhuma relao com a
SCOTT.DEPT;

Diversos usurios so criados automaticamente durante a criao de um banco de dados;

Os principais so: SYS e SYSTEM;

SYS: owner do dicionrio de dados, de centenas de pacotes PL/SQL, etc;

Os objetos do schema SYS nunca devem ser alterados com comandos DDL. E comandos DML
podem corromper o dicionrio de dados, causando um grande estrago no banco de dados;

SYSTEM: armazena vrios objetos adicionais usados para aministrao e monitoramento.

Regras para nomear objetos de schema

De 1 a 30 caracteres de comprimento, com exceo dos nomes de links, que podem ter at 128
caracteres;

Palavras reservadas (como SELECT, CREATE, UPDATE, TABLE, etc) no podem ser usadas
como nomes de objetos;

Todos os nomes devem comear com uma letra de A a Z;

Os nomes podem conter letras, nmeros, sublinhado (_), cifro ($) ou o smbolo de hash (#);

Letras minsculas so convertidas para letras maisculas automaticamente durante a criao do


objeto;

Colocando o nome entre aspas ( ), todas as regras acima (com exceo do comprimento)
podem ser quebradas. Porm, para referenciar estes objetos aps a criao ele deve ser sempre
especificado entre aspas. As mesmas restries se aplicam aos nomes de colunas.

Namespace de objeto
Um namespace define um grupo de tipos de objeto, no qual os nomes devem ser identificados com
exclusividade por schema e nome. Os objetos em diferentesnamespaces podem compartilhar o mesmo
nome.
Todos estes tipos de objeto compartilham o mesmo namespace:

Tabelas

Views

Sequences

Sinnimos privados

Procedures

Functions

Packages

Views materializadas

Tipos definidos pelo usurio

Portanto, impossvel criar uma view com o mesmo nome de uma tabela.
J os tipos abaixo tem seu prprio namespace:

ndices

Constraints

Clusters

Triggers

Database Links

Dimenses

Portanto, possvel existir um ndice com o mesmo nome de uma view, por exemplo. Mesmo assim, esta
prtica no nada recomendada.

[Oracle] OCA 11g Gerenciando Objetos de Schema


(parte 2) Tipos de Dados
Posted by Milton Bastos on mar 26, 2012 in 1Z0-052 | 0 comments

Tipos de dados
Um resumo sobre os tipos de dados suportados pelo Oracle.

Alfanumricos:

VARCHAR2 caracteres, comprimento varivel, de 1 byte at 4 KB;

NVARCHAR2 semelhante ao VARCHAR2, mas armazenados no conjunto de caracteres


nacional alternativo;

CHAR caracteres, comprimento fixo, de 1 byte at 2 KB. Se os dados no forem do tamanho


da coluna, esta preenchida com espaos;

RAW dados binrios de comprimento varivel, de 1 byte a 2 KB. No so convertidos pelo


Oracle Net do conjunto de caracteres de banco de dados para o conjunto de caracteres do processo
de usurio na seleo ou na insero.

Numricos

NUMBER pode ser especificado a preciso e escala. Preciso de 1 a 38, escala de -84 a 127;

FLOAT tipo de dado ANSI, nmero de ponto flutuante com preciso de 126 binrios (ou 38
decimais). Alternativas: BINARY_FLOAT e BINARY_DOUBLE;

INTEGER equivalente ao NUMBER, com escala zero.

Data e Hora

DATE pode ser de comprimento zero (coluna vazia), ou 7 bytes. Incluem sculo, ano, ms, dia,
hora, minuto e segundo. O intervalo vlido de 1o. de janeiro de 4712 A.C. at 31 de dezembro de
9999 D.C;

TIMESTAMP comprimento zero at 11 bytes. Similar a DATE, mas com preciso de at nove
casas decimais para segundos (seis casas por padro);

TIMESTAMP WITH TIMEZONE similar ao timestamp, mas os dados so armazenados com um


registro mantido do fuso horrio ao qual ele se refere. Comprimento de at 13 bytes, dependendo da
preciso. Permite que o Oracle determine a diferena entre duas horas normalizado-as para UTC,
mesmo estando em fuso horrios diferentes;

TIMESTAMP WITH LOCAL TIMEZONE igual ao timestamp, mas os dados so normalizados


para o fuso horrio do banco de dados no salvamento. Quando recuperado, normalizado para o fuso
horrio do processo do usurio;

INTERVAL YEAR TO MONTH registra um perodo em anos e meses entre duas DATEs ou
TIMESTAMPs;

INTERVAL DAY TO SECOND registra um perodo em dias e segundos entre duas DATEs ou
TIMESTAMPs.

Large Objects

CLOB dados de caracteres armazenados no conjunto de caracteres do banco de dados.


Tamanho suportado: 4 GB multiplicado pelo tamanho do bloco de banco de dados;

NCLOB similar ao CLOB, porm armazenados no conjunto de caracteres de idioma nacional


alternativo;

BLOB similar ao CLOB, exceto os dados binrios que no sofrem converso de conjunto de
caracteres pelo Oracle Net;

BFILE localizador que aponta para um arquivo armazenado no sistema operacional do servidor
do banco de dados. Tamanho dos arquivos limitado a 4 GB;

LONG caracteres, at 2 GB. Precursor do CLOB. LONGs no devem ser usados em um banco
de dados moderno, pois toda a sua funcionalidade (e outras mais) fornecida pelo CLOB;

LONG RAW similar ao LONG, exceto que os dados binrios no so convertidos pelo Oracle
Net. Colunas LONG RAW devem ser convertidas para BLOBs.

[Oracle] OCA 11g Gerenciando Dados de Undo


Posted by Milton Bastos on mar 29, 2012 in 1Z0-052 | 0 comments
Os dados de undo so gerados para permitir transaes atmicas, consistncia de leitura e isolamento
da transao. o banco de dados Oracle garante totalmente a integridade transacional, mas no
necessariamente a consistncia de leitura. Se o sistema de undo no estiver configurado
apropriadamente, as consultas podero falhar devido a falta de dados de undo mas se uma consulta
for be-sucedida, ela ser consistente. Esse comportamento pode ser modificado pela ativao do
RETENTION GUARANTEE, embora isso possa significar que a transao falhou.
Os dados de undo so armazenados em um tablespace de undo que no pode conter nada alm dos
segmentos de undo gerados e gerenciados automaticamente. Pode haver mais de um tablespace de
undo em um banco de dados, mas apenas um estar em uso em um determinado momento; isso
controlado por um parmetro de instncia dinmico, o UNDO_TABLESPACE.

Finalidade do UNDO

Todas as instrues DML geram dados de undo;

Os dados de undo so usados para rollback e isolamento de transaes, para fornecer


consistncia de leitura e para consultas de flashback;

O gerenciamento automtico de undo usando segmentos de undo o padro com a verso 11g.

Como as transaes geram undo

Os dados de undo sempre sero mantidos at que a transao que os gerou seja concluda com
um commit ou um rollback. Esse o undo ativo;

Os dados de undo sero mantidos por um perodo aps terem se tornado inativos para satisfazer
os requisitos de consistncia de leitura das consultas de longa durao. Esse o undo no expirado;

O undo expirado so dados que no so mais necessrios para a consistncia de leitura e


podem ser sobrescritos a qualquer momento medida que o espao nos segmentos de undo
reutilizado.

Gerenciar undo

Uma instncia usar segmenos de undo em um tablespace de undo designado;

Podem existir mais tablespaces de undo, mas somente um de cada vez ser usado;

O tablespace de undo deve ser suficientemente grande para armazenar os dados de undo,
levando em conta a taxa mxima de gerao de undo e a consulta mais demorada;

Os datafiles do tablespace de undo so datafiles iguais a quaisquer outros.

Dicas para o exame

O uso dos segmentos de undo incompatvel com o uso de segmentos de rollback: ou um ou


o outro, dependendo da configurao do parmetroUNDO_MANAGEMENT;

Nenhuma transao pode usar vrios segmentos de undo, mas um segmento de undo pode
suportar vrias transaes;

O undo ativo nunca pode ser sobrescrito. O undo expirado pode ser sobrescrito a qualquer
momento. O undo no expirado pode ser sobrescrito, mas somente se houver uma falta de espao
de undo;

Se uma transao for executada sem espao de undo, ela falhar com o erro ORA-30036,
unable to extend segment in undo tablespace. A instruo que causou o problema sofrer rollback,
mas o restante da transao permanece intacta e sem sofrer commit;

O erro acima s surgir se o tablespace de undo estiver absolutamente cheio de dados


de undo ativos;

A menos que seja especificado na hora da criao na clusula datafile, os arquivos de dados de
um tablespace de undo no sero configurados como autoextensveis. Mas se seu banco de dados
for criado com o DBCA, ele permitir a extenso automtica para
os datafiles do tablespace de undo com um tamanho mximo ilimitado. A extenso automtica pode
ser ativada ou desativada a qualquer momento, como acontece em qualquer datafile;

Aps a criao de um tablespace de undo, inicialmente haver um pool de 10 segmentos


de undo criados. Outros novos segmentos sero criados se houver mais de 10 transaes
concorrentes;

Se o tablespace de undo for alterado por meio da alterao do parmetro UNDO_TABLESPACE,


quaisquer segmentos no tablespace designado anteriormente que estavam suportando uma
transao na hora da alterao permanecero online at que a transao seja concluda.

[Oracle] OCA 11g Auditoria de Banco de Dados (parte 1)


Posted by Milton Bastos on mar 30, 2012 in 1Z0-052 | 0 comments

Tcnicas de auditoria

Auditoria do SYSDBA: Qualquer pessoa com privilgio SYSDBA pode fazer absolutamente
qualquer coisa dentro do banco de dados. Para seus colegas terem confiana que voc no est
abusando desse poder, necessrio auditar todas as atividades do SYSDBA;

Auditoria de banco de dados: pode rastrear o uso de certos privilgios, a execuo de certos
comandos, o acesso a certas tabelas ou tentativas de logon;

Auditoria baseada em valor: usa triggers de banco de dados. Sempre que uma linha inserida,
atualizada ou excluda, um cdigo PL/SQL ser executado para registrar os detalhes da operao;

Auditoria refinada (FGA): permite controlar o acesso a tabelas de acordo com quais linhas (ou
quais colunas) foram acessadas. mais precisa que as auditorias de banco de dados ou baseada em
valor. Pode limitar o nmero de registros de auditoria gerados para somente aqueles que interessam.

Auditoria do SYSDBA
O parmetro AUDIT_SYS_OPERATIONS define se a auditoria do SYSDBA como ativada ou no. Caso
seja TRUE, cada instruo emitida por um usurio conectado como SYSDBA ou SYSOPER gravada na
trilha de auditoria do sistema operacional.
Separao de tarefas: a trilha de auditoria deve ser protegida, ou seja, os arquivos criados para registrar
as atividades do DBA no podem ser acessados pelo prprio s devem ser acessveis para o
administrador do servidor. Se o DBA tambm for o administrador do sistema, a auditoria torna-se intil.
Por essa razo, um auditor decente sempre afirmar que o DBA no deve ter a senha de root no Unix,
ou a senha de Administrador do Windows.

Destino dos registros de auditoria: especfico para cada plataforma. No Windows o Windows
Application Log. No Unix controlado pelo parmetro AUDIT_FILE_DEST, que deve apontar para um
diretrio no qual o owner do Oracle tenha permisso de gravao, mas que o usurio do sistema
operacional usado pelo DBA no tenha permisso, pelas razes j citadas acima.

Auditoria de banco de dados


Valores possveis para o parmetro de instncia AUDIT_TRAIL:

NONE (ou FALSE): Auditoria desativada;

OS: os registros de auditoria so gravados na trilha de auditoria do sistema operacional;

DB: os registros de auditoria so gravados em uma tabela do dicionrio de dados, SYS.AUD$.


Existem views que permitem ver o contedo dessa tabela;

DB_EXTENDED: como o parmetro DB, mas incluindo as instrues SQL com variveis bind
que geraram os registros de auditoria;

XML: como o parmetro OS, mas formatado com tags XML;

XML_EXTENDED: como o parmetro XML, mas com instrues SQL e variveis bind.

Tendo configurado o AUDIT_TRAIL, voc pode usar a auditoria de banco de dados para capturar
tentativas de login, uso dos privilgios de sistema e objetos, e tambm a execuo de comandos SQL.
Voc pode especificar se far auditoria destes eventos quando eles forem bem-sucedidos, quando
falharem por falta de permisses, ou ambos.
A auditoria de banco de dados configurada atravs do comando AUDIT. Exemplos:
SQL> audit create any trigger;
SQL> audit select any table by session;
Por padro, a auditoria ir gerar um registro de auditoria para cada sesso que violar uma condio de
auditoria, sem considerar o nmero de vezes que ela viola a restrio. Isso equivalente a anexar BY
SESSION ao comando AUDIT. Anexar BY ACCESS gerar um registro para cada violao.
A auditoria tambm pode ser orientada a objetos, como nos exemplos:
SQL> audit insert on scott.emp whenever successful;
SQL> audit all on scott.dept;
O primeiro comando ir gerar registros de auditoria se uma sesso inserir uma ou mais linhas na tabela
scott.emp. As palavras-chave WHENEVER SUCCESSFUL restringem os registros de auditoria queles
nos quais a operao foi bem-sucedida. Para registrar apenas as operaes que no foram bemsucedidas, a sintaxe WHENEVER NOT SUCCESSFUL. Por padro, todas as operaes so auditadas,
basta omitir a clusula WHENEVER.
O segundo comando auditar cada sesso executar instrues DDL na tabela scott.dept.
Os logons so auditados com AUDIT SESSION. Exemplo:
SQL> audit session whenever not successful;
O AUDIT SESSION registra cada conexo ao banco de dados. NOT SUCCESSFUL restringe a sada,
fazendo com que somente as tentativas falhas sejam registradas. Isso pode ajudar a indicar se esto
sendo feitas tentativas para invadir o banco de dados.
Se a auditoria foi direcionada para o banco de dados (AUDIT_TRAIL=DB ou DB_EXTENDED), os
registros vo para a tabela SYS.AUD$, pertencente ao dicionrio de dados. possvel consultar estes
registros pela view DBA_AUDIT_TRAIL.
Outras views auxiliares: DBA_AUDIT_OBJECT, DBA_AUDIT_STATEMENT e DBA_AUDIT_SESSION.
No prximo artigos veremos a auditoria baseada em valor e a auditoria refinada.

[Oracle] OCA 11g Auditoria de Banco de Dados (parte 2)


Posted by Milton Bastos on mar 30, 2012 in 1Z0-052 | 0 comments

Auditoria baseada em valor com triggers


Abaixo, um exemplo bem simples de como utilizar uma trigger para realizar auditoria baseada em valor.
SQL> CREATE OR REPLACE TRIGGER system.trg_salario_audit
AFTER UPDATE OF sal
ON scott.emp
REFERENCING NEW AS NEW OLD AS OLD
FOR EACH ROW
BEGIN
IF :old.sal != :new.sal
THEN
INSERT INTO system.salario_audit
VALUES (sys_context('userenv', 'os_user'),
sys_context('userenv', 'ip_address'),
'O funcionrio '||empno||' teve o seu salrio alterado
de '||:old.sal||' para '||:new.sal);
END IF;
END;
/
Neste exemplo, monitorada a tabela EMP do schema SCOTT. Provavelmente voc leitor j conhece esta
tabela e este schema, usados h mais de uma dcada como exemplo em treinamentos. Esta tabela
armazena dados de funcionrios (employees), incluindo o valor do seu salrio (na coluna SAL).
A trigger acima registra numa tabela chamada salario_audit, no schema system, sempre que algum
registro da tabela EMP sofrer update na coluna SAL. Ou seja, se algum fizer uma atualizao no salrio
de um ou mais funcionrios, esta operao ser registrada na tabela system.salario_audit. O exemplo
bem simples, e usa a funo SYS_CONTEXT para retornar o usurio logado no sistema operacional da
mquina onde foi disparado o update, e tambm o endereo de IP desta mquina. Alm disso, armazena
em uma coluna um pequeno texto descrevendo qual o cdigo do funcionrio que teve o salrio alterado,
alm dos valores do salrio antes e depois do update.
A auditoria por meio de triggers um processo mais lento do que a auditoria de banco de dados, mas ela
fornece mais informaes e permite que voc implemente regras de negcio sofisticadas.

Fine-Grained Audit (FGA)

A FGA pode ser configurada para gerar registros de auditoria somente quando certas linhas so
acessadas ou quando determinadas colunas de certas linhas so acessadas. Ela tambm pode executar
um bloco de cdigo PL/SQL quando a condio de auditoria quebrada.
A FGA configurada com o pacote DBMS_FGA. Para criar uma diretiva de auditoria FGA, use a
procedure ADD_POLICY, que recebe os seguintes argumentos:

OBJECT_SCHEMA nome do owner do objeto a ser auditado;

OBJECT_NAME nome da tabela a ser auditada;

POLICY_NAME cada diretiva FGA criada deve receber um nome exclusivo para identificao;

AUDIT_CONDITION expresso para determinar quais linhas vo gerar um registro de


auditoria. Se deixado como NULL, todas as linhas sero auditadas;

AUDIT_COLUMN lista das colunas a serem auditadas. NULL audita todas as colunas;

HANDLER_SCHEMA nome do usurio que owner da procedure a ser executada quando as


condies de auditoria forem atendidas;

ENABLE por padro, seu valor TRUE. Indica que a diretiva est ativa;

As procedures ENABLE_POLICY e DISABLE_POLICY ativam e desativam


respectivamente a diretiva.

STATEMENT_TYPES define quais comandos devem ser auditados: SELECT, INSERT,


UPDATE ou DELETE. Por padro, somente SELECT;

AUDIT_TRAIL controla se a instruo SQL efetiva e suas variveis de bind devem ou no ser
gravadas na trilha de auditoria da FGA. O padro gravar;

AUDIT_COLUMN_OPTS determina se uma auditoria deve ou no ser feita caso uma


instruo trate de alguma ou todas as colunas listadas no argumento AUDIT_COLUMN. As opes
so DBMS_FGA.ANY_COLUMNS (padro) ou DBMS_FGA_ALL_COLUMNS.

Para ver os resultados da FGA, consulte a viso DBA_FGA_AUDIT_TRAIL.

Exemplo
SQL> execute dbms_fga.add_policy(
object_schema=>'SCOTT',
object_name=>'EMP',
policy_name=>'pol_emp_teste',
audit_condition=>'deptno=20',
audit_column=>'SAL');
Este exemplo cria uma diretiva chamada POL_EMP_TESTE, que ir capturar todas as
instrues SELECT que ler a coluna SAL da tabela SCOTT.EMP se ao menos uma das linhas
recuperadas for do departamento 20.
A DBA_AUDIT_TRAIL mostra a auditoria de banco de dados padro; DBA_FGA_AUDIT_TRAIL mostra a
FGA; DBA_COMMON_AUDIT_TRAIL mostra ambos. Para ver os resultados da auditoria com triggers
voc deve criar suas prprias views que tratam das suas prprias tabelas.

[Oracle] OCA 11g Manuteno de Banco de Dados


Posted by Milton Bastos on abr 3, 2012 in 1Z0-052 | 0 comments

Estatsticas precisas sobre os objetos no banco de dados so essenciais para que o otimizador possa
gerar planos de execuo SQL eficientes. A coleta dessas estatsticas do otimizador pode ser
completamente automtica e assim por padro. O AWR armazena outra classe de estatsticas:
atividade da instncia e do banco de dados e estatsticas de desempenho. A coleta dessas estatsticas
tambm automtica.
A estrutura de um supervisor criada em cima dos dados do AWR: os assistentes que analisaro a
atividade e recomendaro aes que iro melhorar o desempenho. O primeiro entre os supervisores o
ADDM. Tambm contando com o AWR est o sistema de alerta. Ele consiste em limites para centenas de
mtricas, que quando atingidas faro com que o processo MMON gere uma mensagem de alerta.

Estatsticas do otimizador

As estatsticas dos objetos so coletadas automaticamente, a menos


que STATISTICS_LEVEL esteja como BASIC;

As estatsticas de objeto no so atualizadas em tempo real, elas so estticas at serem


atualizadas por uma nova anlise. Se isso no for feito com frequncia suficiente, elas ficaro
seriamente desatualizadas e o otimizador desenvolver planos de execuo inadequados;

O AWR armazena um histrico das estatsticas de objeto; as estatsticas atuais so


armazenadas no dicionrio de dados.

DBA_TABLES: estatsticas de tabelas;

DBA_INDEXES: estatsticas de ndices;

DBA_TAB_COLUMNS: estatsticas de colunas;

INDEX_STATS: anlise de ndices.

AWR (Automatic Workload Repository)

Por padro, os snapshots so coletados a cada hora e armazenados durante oito dias;

Snapshots adicionais podem ser coletados por demanda;

Os snapshots podem ser preservados indefinidamente se designados para uma linha de base;

O MMON responsvel por criar os snapshots e iniciar o ADDM;

O AWR consiste em tabelas (e objetos relacionados) no schema SYSMAN, no tablespace SYSAUX.

Advisory Framework

O ADDM executado automaticamente sempre que um snapshot coletado e executado


manualmente sob demanda;

Por padro, so armazenados por 30 dias;

Os relatrios do ADDM fornecero advertncias diretamente e podem recomendar a execuo de


outros supervisores;

Por padro, o supervisor de SQL e o supervisor de Segmento executaro automaticamente nas


janelas de manuteno;

Configurar STATISTICS_LEVEL como BASIC desativar a coleta de snapshots e a execuo


de supervisores;

So 3 as tarefas de manuteno automtica: coleta de estatsticas do otimizador, o Supervisor


de Segmento e o Supervisor de Tuning SQL;

Os supervisores executam automaticamente, mas as recomendaes devem ser aceitas (ou


ignoradas) manualmente;

As tarefas executam na janela de manutneo, que por default abrem durante quatro horas toda
noite dos dias teis s 22h, e dutante 20 horas nos sbados e domingos, abrindo s 6h.

Alertas e Limites

Os alertas stateful devem ser configurados com limites;

Se um alerta stateful for emitido, ele permanecer at que a situao seja resolvida; os
alertas stateless so reportados e no precisam ser removidos;

Os limites so armazenados no AWR;

o MMON que emite um alerta e o Enterprise Manager (geralmente) que o reporta.

[Oracle] OCA 11g Gerenciamento de Desempenho


Posted by Milton Bastos on abr 12, 2012 in 1Z0-052 | 0 comments
Em um banco de dados 11g, o gerenciamento de memria pode ser completamente automtico. O DBA
configura um total de memria e o Oracle constri suas estruturas de memria dentro desse total,
redimensionando-as conforme o necessrio para um desempenho ideal. Existem supervisores que fazem
recomendaes relativas a tamanhos das estruturas de memria.
Os objetos procedurais podem se tornar invlidos. isso normalmente ocorre devido ao DDL aplicado a
tabelas das quais eles dependem. Os objetos invlidos sero recompilados automaticamente quando
forem usados novamente, mas essa recompilao s pode ser bem-sucedida se o problema subjacente
tiver sido corrigido. Os ndices podem se tornar inutilizveis. Isso geralmente acontece quando suas
tabelas so realocadas. Os ndices inutilizveis devem ser reconstrudos, o que no acontece
automaticamente. As reconstrues de ndices exigem lock na tabela e geram redo mas isto pode ser
alterado.

Gerenciamento Automtico de Memria

O Automatic Shared Memory Management (gerenciamento automtico de memria


compartilhada) pode ser ativado com o parmetro SGA_TARGET;

O Automatic PGA Management pode ser ativado com o


parmetro PGA_AGGREGATE_TARGET;

O Automatic Memory Management pode ser ativado com o parmetro MEMORY_TARGET;

Supervisores de memria

Existem supervisores para o uso da PGA, SGA e da memria total;

Os supervisores podem ser acessados consultando views de desempenho dinmico ou por meio
do Enterprise Manager;

Objetos invlidos e inutilizveis

Os objetos procedurais se tornaro invlidos se os objetos dos quais eles dependem forem
alterados;

Os ndices se tornaro inutilizveis se suas tabelas forem movidas;

O Oracle tentar recompilar o objeto procedural invlido automaticamente;

Os ndicesinutilizveis devem ser reconstrudos manualmente;

O Oracle no tentar usa rum ndice inutilizvel, portanto no haver erros.

[Oracle] OCA 11g Criando um Banco de Dados


Posted by Milton Bastos on jun 21, 2012 in 1Z0-052 | 2 comments

Um banco de dados pode ser criado usando apenas o DBCA (Database Configuration Assistant) ou a
partir da linha de comando do SQL*Plus. Na verdade, o DBCA pode gerar scripts para serem executados
na linha de comando do SQL*Plus. A criao tem trs etapas distintas: criar a instncia, criar o banco
de dados e criar o dicionrio de dados. Se usar o DBCA, um listener do banco de dados pode ser
necessrio. O DBCA no usa o listener, mas, se a opo for usada para configurar oDatabase Control, o
DBCA verificar se h um listener disponvel.
Para criar uma instncia, tudo o que necessrio um arquivo de parmetros (parameter file). Os
parmetros crticos so o nome do banco de dados e o local doscontrolfiles. Depois, para criar um banco
de dados, use o comando CREATE DATABASE. Isso ir gerar no mnimo um controlfile, dois grupos
de redo log file, os tablespaces SYSTEM e SYSAUX e um dicionrio de dados. Para tornar o banco de
dados utilizvel, execute um conjunto de scripts que cria as views do dicionrio de dados e os pacotes
PL/SQL fornecidos e, em seguida, instale todas as opes necessrias.

Usando o DBCA para criar um banco de dados

Um banco de dados pode ser criado com o DBCA ou a partir da linha de comando do SQL*Plus;

O DBCA pode criar um banco de dados a partir do zero ou a partir de um template salvo;

O DBCA e o SQL*Plus podem excluir um banco de dados;

Uma instncia deve ser criada antes que um banco de dados possa ser criado;

Todas as opes no selecionadas na hora da criao podem ser adicionadas posteriormente.

[Oracle] OCA 11g Gerenciando Dados e Concorrncia


Posted by Milton Bastos on jun 22, 2012 in 1Z0-052 | 0 comments

Os comandos DML alteram os dados. medida


que eles gravam blocos de dados no database buffer cache, os vetores de alterao aplicados so
gravados no fluxo deredo log. Eventualmente, o DBWn gravar os buffers alterados de volta no disco,
sobrescrevendo as verses anteriores dos blocos, mas isso no acontece em tempo real. Por outro lado,
os vetores de alterao vo para o disco quase que imediatamente. O mtodo de processamento
do COMMIT garante que os dados nunca sero perdidos, gravando os vetores de alterao em tempo
real quando um COMMIT emitido. Um comando ROLLBACK implementado pela construo de outra
instruo (ou instrues) que reverter o efeito de todo o trabalho feito pela transao at aqui. Os

princpios de atomicidade, consistncia e isolamento so impostos pelo uso de segmentos de undo, que
armazenam os dados necessrios para construir essas instrues de inverso. As alteraes feitas aos
segmentos de undo so protegidas pelo mecanismo de redo.
Os blocos PL/SQL podem ser submetidos para execuo dentro da instncia como blocos annimos
enviados de processos de usurio ou recuperados de blocos armazenados no dicionrio de dados. Esses
blocos geralmente so compostos de cdigo procedural com um cdigo SQL embutido nele.
O bloqueio de registro completamente automtico. O mecanismo padro garante o nvel mais alto
possvel de concorrncia: bloqueio em nvel de linha e nenhum bloqueio para consultas.

Gerenciar dados usando DML

Todos os comandos DML geram undo e redo.

O redo protege todas as alteraes feitas aos segmentos segmentos de undo, bem como
segmentos de dados.

Os processos de servidor leem os datafiles; o DBWn grava nos datafiles.

Identificar e administrar objetos PL/SQL

O PL/SQL annimo armazenado no cliente, o PL/SQL armazenado armazenado no dicionrio


de dados.

As procedures e funes podem ser empacotadas; os triggers no podem ser empacotados.

O cdigo PL/SQL pode executar cdigo SQL.

Monitorar e resolver disputas por bloqueio

O nvel padro de bloqueio o nvel de linha.

Os bloqueios so requeridos para todos os comandos DML e so opcionais para SELECT.

Uma instruo DML requer bloqueios compartilhados nos objetos envolvidos e bloqueios
exclusivos nas linhas envolvidas.

Um bloqueio DDL requer um bloqueio exclusivo sobre o objeto que ele afeta.

Os deadlocks so resolvidos automaticamente.

[Oracle] OCA 11g Conceitos de Backup e Recovery


Posted by Milton Bastos on jun 26, 2012 in 1Z0-052 | 0 comments

Existem muitos tipos de falhas que podem


ocorrer. Algumas delas sero reparadas automaticamente (como as falhas de instncia ou de sesso);
outras no so falhas relacionadas ao banco de dados (como os erros de usurio). Existem tcnicas para
reparar os erros do usurio que podem precisar de interveno do DBA. Onde o envolvimento do DBA
sempre necessrio na configurao do banco de dados para recuperabilidade no caso de falha de
mdia. Isso requer a ativao do modo archivelog e estabelecer rotinas para backup. A rea de
recuperao flash pode simplificar o gerenciamento de todos os arquivos relacionados recuperao; ela
um local de armazenamento nico, com capacidades de autogerenciamento para uso de espao.

Identificar os tipos de falha que podem ocorrer em um banco de


dados Oracle

A falha de instncia resulta em uma recuperao automtica de instncia na prxima


inicializao.

As falhas de sesso so gerenciadas automaticamente pelo processo PMON.

Os erros de usurio podem ser revertidos usando vrias tcnicas.

A recuperao de falha de mdia requer o uso de backups e archivelogs.

Descrever as maneiras de ajustar a recuperao da instncia

A recuperao de instncia automtica e irreverssvel.

A recuperao de instncia aplica os vetores de alterao a partir dos redo log files, desde a
ltima posio do checkpoint incremental.

O tempo gasto pela recuperao de instncia depende da quantidade de redo a ser aplicada e a
quantidade de I/O nos datafiles necessrios para aplic-la.

O parmetro FAST_START_MTTR_TARGET configura um tempo mximo para recuperao,


usando um mecanismo de autoajuste.

Se o parmetro FAST_START_MTTR_TARGET for configurado, ele tambm ativar o processo


de autoajuste do checkpoint para reduzir ainda mais o tempo de recuperao.

Identificar a importncia dos checkpoints, redo log files e


archivelogs

Os checkpoints completos ocorrem somente no shutdown ordenado ou por demanda.

Os checkpoints parciais ocorrem automaticamente quando necessrio.

Os checkpoints incrementais avanam o ponto no fluxo de redo a partir do qual a recuperao


dever comear aps uma falha de instncia.

O redo log consiste em estruturas de disco para armazenar os vetores de alterao. O log online
essencial para a recuperao de instncia.

O archivelog consiste em cpias dos membros do redo log file, criadas medida que eles foram
preenchidos. Ele essencial para a recuperao do datafile aps uma falha de mdia.

Viso geral da rea de recuperao flash

A rea de recuperao flash configurada com os parmetros de


instncia DB_RECOVERY_FILE_DEST e DB_RECOVERY_FILE_DEST_SIZE.

A rea de recuperao flash um destino padro para todos os arquivos relativos


recuperao.

Configurar o modo ARCHIVELOG

No modo archivelog, um redo log file online no pode ser sobrescrito at que ele tenha sido
arquivado.

Os processos de arquivamento iniciam automaticamente quando o modo archivelog est ativado.

O modo s pode ser alterado quando o banco de dados montado.

[Oracle] OCA 11g Executando Backups


Posted by Milton Bastos on jun 28, 2012 in 1Z0-052 | 0 comments

Um backup gerenciado pelo usurio composto de comandos do sistema operacional e de comandos do


SQL*Plus. Os backups gerenciados pelo servidor so criados com o Recovery Manager, controlados por
meio do executvel RMAN ou do Enterprise Manager.
Os backups podem ser abertos ou fechados, integrais ou parciais, totais ou incrementais. Mas a faixa
completa de opes s estara disponvel se o banco de dados estiver em modo archivelog e voc estiver
usando o RMAN.

Criar backups consistentes de banco de dados

Um backup consistente aquele criado depois que o banco de dados sofre shutdown.

Um backup consistente gerenciado pelo usuriotem trs etapas:

Copiar os redo log files;

Copiar os controlfiles;

Copiar os datafiles.

Um backup consistente gerenciado pelo servidortambm tem trs etapas:

Montar o banco de dados;

Fazer backup do controlfile;

Fazer backup dos datafiles.

O RMAN nunca far backup de redo log files ou tempfiles.

Fazer backup do seu banco de dados sem fazer shutdown

Um backup aberto gerenciado pelo usurio tem trs etapas:

Arquivar os redo log files

ALTER DATABASE BACKUP CONTROLFILE TO ...

Copiar os datafiles, enquanto seus tablespaces esto no modo backup

Um backup aberto gerenciado pelo servidor tambm tem trs etapas:

Arquivar os redo log files

Fazer backup do controlfile

Fazer backup dos datafiles, sem a necessidade de ativar o modo backup.

Criar backups incrementais

Backups gerenciados pelo usurio no podem ser incrementais, mas os backups gerenciados
pelo servidor podem.

O ponto de partida para uma estratgia incremental deve ser um backup nvel 0 incremental. Um
backup full no pode ser usado.

Os nveis incrementais so 0, 1 ou cumulativos.

Backups incrementais podem ser criados no modo archivelog ou no modo noarchivelog.

Automatizar backups de bancos de dados

Os servios de backup gerenciados pelo usurio ou pelo servidor podem ser agendados com o
agendador do sistema operacional.

O sistema de jobs do Enterprise Manager pode agendar backups gerenciados pelo servidor de
todos os tipos.

Gerenciar backups, visualizar relatrios de backup e monitorar a


rea de recuperao flash

Os backups gerenciados pelo servidor so registrados em um repositrio, no controlfile do banco


de dados de destino.

O repositrio pode ser comparado com o ambiente real com o comando CROSSCHECK e
modificado conforme necessrio.

Os backups gerenciados pelo usurio podem ser registrados no repositrio e, assim, colocados
sob o controle do RMAN usando o comando CATALOG.

Se o backup for feito para a rea de recuperao flash, seu uso deve ser monitorado.

[Oracle] OCA 11g Movendo Dados


Posted by Milton Bastos on jul 26, 2012 in 1Z0-052 | 0 comments

Um diretrio Oracle um ponteiro para um


diretrio do sistema operacional. Os usurios podem receber permisses para ler ou gravar em diferentes
diretrios Oracle. O SQL*Loader uma ferramenta client-server para inserir grandes quantidades de
dados. As inseres de carga direta no geram undo e o redo pode ser desativado. Se possvel, o Data
Pump sempre faz carga direta (Direct Load) mas os objetos complexos talvez precisem ser lidos ou
gravados via database buffer cache, como external tables. As sesses do servidor so usadas apenas
para controlar os jobs do Data Pump, no para fazer o trabalho.

Mtodos para mover dados (objetos de diretrio, SQL*Loader,


tabelas externas)

Os objetos de diretrio mapeiam um diretrio Oracle para um diretrio do sistema operacional.

Os objetos de diretrio pertencem a SYS e as permisses de leitura e gravao podem ser


concedidas aos usurios.

O SQL*Loader uma ferramenta client-server que trabalha sobre sesses de banco de dados
normais.

O arquivo de controle do SQL*Loader pode ler uma grande variedade de formatos, se


configurado corretamente.

As external tables no formato ORACLE_LOADER podem ser consultadas no banco de dados


como se fossem tabelas heap normais.

No possvel executar DML nas external tables, mas elas podem ser criadas e preenchidas
pelo formato Data Pump usando CREATE TABLE AS SELECT

Arquitetura geral do Data Pump

O Data Pump usa os processos do lado do servidor; as ferramentas do client gerenciam os jobs,
no os executam.

O Data Pump sempre usa Direct Path, a menos que a complexidade dos objetos o impea.

Exportao e importao do Data Pump para mover dados


entre bancos Oracle

Um dump file do Data Pump s pode ser lido pelo Data Pump.

O modo de rede do Data Pump copia dados entre os bancos de dados sem armazen-los no
disco.

O Data Pump sempre l e grava em diretrios Oracle; ele no percebe a estrutura de diretrios
do sistema operacional.

[Oracle] OCA 11g Recuperao de Banco de Dados


DRA
Posted by Milton Bastos on ago 9, 2012 in 1Z0-052 | 1 comment

O DRA (Data Recovery Advisor) um recurso


para diagnosicar e reparar problemas com o database. Existem duas interfaces: o executvel RMAN e o
Enterprise Manager. O DRA capaz de gerar scripts para reparar danos aos datafiles e ao controlfile. Ele
no informa sobre problemas com o spfile e com os redo log files. Ele depende do ADR (Automatic
Diagnostic Repository) e do Health Monitor. As informaes que o Health Monitor rene e as sugestes
que o DRA fornece seguem os mesmos mtodos de diagnstico e reparao que o DBA seguiria sem
eles mas eles tornam o processo mais rpido e menos propenso a erro.
A perda de arquivos do banco de dados no motivo para perder dados desde que as precaues
apropriadas tenham sido tomadas:

Multiplexar o controlfile;

Multiplexar os redo log files;

Fazer backup do controlfile e dos datafiles;

Executar o banco de dados no modo archivelog.

Dependendo do tipo de arquivo que foi perdido, existem diferentes tcnicas de recuperao.

Dicas para a prova

Qualquer dano causado a qualquer controlfile abortar a instncia imediatamente. No ser


possvel montar o banco de dados at que o problema tenha sido resolvido.

Qualquer dano aos membros do redo log online no far com que a instncia aborte nem
impedir a abertura do banco de dados, desde que haja ao menos um membro de cada grupo
funcionando.

No modo noarchivelog, a nica restaurao possvel do banco de dados inteiro. No pode


haver nenhuma recuperao.

A recuperao com o banco de dados aberto possvel para danos ocorridos a quaisquer
datafiles que no pertenam aos tablespaces SYSTEM ou UNDO.

O DRA s funcionar para um banco de dados de instncia nica. Ele no pode trabalhar com
um banco de dados clusterizado em RAC, nem com um banco de dados Data Guard.

O DRA no gerar nenhuma recomendao se voc no tiver primeiro pedido a ele para listar as
falhas. Nenhuma falha ocorrida desde a ltima listagem receber recomendao.

Resumo
O Health Monitor um conjunto de verificaes executado automaticamente quando surgem condies
de erro. Os resultados so gravados no ADR, armazenados no diretrio DIAGNOSTIC_DEST. O DRA usa
essas informaes para identificar falhas e construir scripts do RMAN para repar-las.

Viso Geral do DRA

O ADR um conjunto de arquivos no diretrio DIAGNOSTIC_DEST

O DRA pode reparar danos causados aos datafiles e ao controlfile e substituir grupos de
arquivos de log em falta

A restaurao e a recuperao do controlfile ou um datafile crtico somente podem ser feitas no


modo mount

A restaurao e recuperao de um datafile no crtico podem ser feitas enquanto o banco


estiver aberto.

Usar o DRA para executar recuperao (controlfile, redo log file


e datafile)

As falhas devem ser listadas antes que possam receber recomendaes

O DRA pode ser acessado por meio do executvel RMAN ou com o Enterprise Manager

O DRA est disponvel em todos os modos: em nomount ele pode reparar o controlfile,
em mount ou open ele pode reparar datafiles.

[Oracle] OCA 11g Melhorias na Infraestrutura Inteligente


Posted by Milton Bastos on abr 24, 2013 in 1Z0-052 | 3 comments

O Support Workbench uma interface entre voc, o banco de dados e o MetaLink. Usando o Support
Workbench, voc pode identificar problemas, reunir todas as informaes relevantes em um pacote e criar
uma SR com o Oracle Support Services. Algumas vezes, os problemas exigiro a instalao de patches.
Eles so instalados com o utilitrio Opatch, a partir da linha de comando ou por meio da interface
Database Control.

Usar o Enterprise Manager Support Workbench

O Database Control pode conectar-se ao MetaLink e identificar listas de patches recomendados.

O Support Workbench pode classificar erros em problemas nomeados, cada um composto de


um ou mais incidentes.

As informaes de diagnstico so armazenadas em arquivos no ADR, localizado no


ORACLE_BASE por padro.

Todas as informaes de diagnstico no ADR relevantes para um problema podem ser


empacotadas para transmitir para o Oracle Support Services.

Gerenciar patches

Os patches intermedirios corrigem um problema.

As CPUs so patches empacotados, frequentemente incluindo correes de segurana.

Os conjuntos de patches (patch sets) atualizam a verso do produto.

O utilitrio Opatch instala os patches e atualiza o inventrio.

Вам также может понравиться