ITnerante

Estudos de TI para Concursos Públicos

Conhecendo um pouco a arquitetura básica do Oracle - Parte 2 ( Processos de Background )

E aí pessoal! Segue a segunda parte do estudo da arquitetura do servidor Oracle. Espero que vocês gostem.

 

Toda a instância de um banco de dados Oracle possui processos de background (segundo plano) executando para manter o banco de dados em funcionamento. Cada processo é um programa que auxilia o SGBD nas tarefas de recover, arquivamento dos archivelog's, escrita de log e etc.

Os principais processos de uma instância do Oracle são:

 

  • Database Writer (DBWn): registra alterações em blocos de undo e de dados no cache de buffer do banco de dados e grava os buffers sujos nesse cache nos arquivos de dados.
  • Log Writer (LGWR): grava o conteúdo dos buffers de log nos arquivos de log do disco.
  • System Monitor (SMON): entre suas tarefas está a de montar o banco de dados, localizando e validando o arquivo de controle do banco, e a tarefa de abrir o banco de dados localizando e validando os arquivos de dados.
  • Process Monitor (PMON): monitora todos os processos do servidor e detecta os possíveis problemas com as sessões.
  • Checkpoint Process (CKPT): responsável por sinalizar o DBWN em checkpoints, além de atualizar as informações de checkpoint nos cabeçalhos dos arquivos de dados e nos arquivos de controle.
  • Distributed Transaction Recovery (RECO): encontra transações distribuídas pendentes e tenta resolvê-las. Transações distribuídas envolvem normalmente múltiplas bases de dados. Por exemplo, se existir um erro de rede e a transação ficar pending, é tarefa do RECO resolver este problema, sendo que isso resulte num rollback ou num commit da transação.
  • Archiver Process (ARCH): Copia o online redo log escrito pelo LGWR para outra diretorio quando o arquivo (ou arquivos de log) estão cheios. Os archive logs são usados para backups em caso de falha nos discos. De notar que este processo só existe se a BD estiver em archivelog mode. o LGWR é o responsável pelo arranque de um ou mais processos ARCH.

Além dos processos acima temos os processos Dnnn, LCKn, MMAN, CJQ0, Snnn, LMS e o LMON.

 

O conhecimento passado acima ajuda a responder questões relativas aos processos de background de uma instância Oracle, como as questões abaixo:

 

(Eletrobrás - NCE - UFRJ - 2007) Um usuário de um banco de dados Oracle está mantendo diversas tabelas em estado de ‘LOCK’ impossibilitando que os demais usuários façam seu trabalho. O DBA da instalação descontinua (Kill) a sessão deste usuário. Neste cenário, o processo de background responsável pela recuperação da transação descontinuada e liberação dos recursos é:

 

(A) SMON

(B) RECO

(C) PMON

(D) CKPT

(E) LGWR

 

A resposta da questão acima é a letra “C”, pois como vimos o processo PMON é responsável pela  monitoração de todos os processos do servidor e detecta os possíveis problemas com as sessões.

 

(Eletrobrás - NCE - UFRJ - 2007) Em uma instância Oracle, SÃO processos de background:

(A) SMON, PMON, LGWG, CKPT, DBWn

(B) USRMON, PMON, CKPT, TSKMON, DBWn

(C) DBWn, PMON, SMON, CKPT, USRMON

(D) LGWR, CKPT, MEMMON, SMON,TSKMON

(E) PMON, USRMON, TSKMON, CKPT, USRMON

 

A resposta da questão acima é a letra “A”, pois como vimos não existem processos de background com os nomes  USRMON,  USRMON, TSKMON e  MEMMON.

 

(TJMG - FUMARC - 2012) Uma instância operacional de um SGBD Oracle consiste de processos em background, estruturas de memória e arquivos físicos em disco. Tais processos são responsáveis por tarefas específicas. Correlacione as colunas a seguir de acordo com os objetivos das tarefas dos processos Oracle em background:

 

Sigla do Processo

Objetivo

I. LGWR

( ) Executa a recuperação de uma instância, iniciada após uma falha.

II. SMON

( ) Libera recursos e limpa memória de processos de usuários que falharam.

III. PMON

( ) Escreve em disco todos os buffers atualizados em memória.

IV. DBWn

( ) Escreve em disco todas as entradas de log mantidas em memória.

Está CORRETA a seguinte sequência de respostas:

a) II, IV, III, I.          

b) III, II, I, IV.          

c) III, I, IV, II.          

d) II, III, IV, I.          

 

A resposta correta para a questão acima é a “D”, pois conforme descrito no artigo acima o processo LGWR escreve em disco todas as entradas de log mantidas em memória, o processo SMON executa a recuperação de uma instância, iniciada após uma falha, o processo PMON libera recursos e limpa memória de processos de usuários que falharam e o processo DBWn escreve em disco todos os buffers atualizados em memória.

 

(CREMESP - VUNESP - 2011) O processo do sistema gerenciador de bancos de dados Oracle 10g, executado em background e responsável por escrever o conteúdo dos buffers nos datafiles, é o :

(A)      Job Queue.

(B)       Checkpoint.

(C)       System Monitor.

(D)      Database Writer.

(E)       Process Monitor.

 

A resposta da questão acima é a letra “D”, pois como sabemos que o processo responsável por escrever o conteúdo dos buffers nos datafiles (arquivos de dados) é o  Database Writer (DBWn).

 

Parte anterior:

Conhecendo um pouco a arquitetura básica do Oracle - Parte 1 ( SGA ...

Mais informações sobre os processos de background:

http://www.linhadecodigo.com.br/artigo/99/a-arquitetura-do-oracle.aspx

http://profissionaloracle.com.br/blogs/antoniodba/category/arquitet...

http://certificacaobd.com.br/2012/03/09/ocp-11g-arquitetura-do-banc...

Exibições: 4121

Comentar

Você precisa ser um membro de ITnerante para adicionar comentários!

Entrar em ITnerante

Comentário de Carla Rodrigues em 25 novembro 2013 às 20:28

Show!

Comentário de Martony Demes da Silva em 17 setembro 2012 às 16:13

Bom mesmo! Aguardar as proximas aulas!!

Comentário de Jorge Góes em 17 setembro 2012 às 14:21

Excelente.
Bem sintetizado. 

Comentário de David Cid em 15 setembro 2012 às 10:25

Bom demais.

Comentário de Emerson da Silva Reis em 12 setembro 2012 às 17:37

Perfeito.

Comentário de rafael de carvalho moreira em 10 setembro 2012 às 1:36

boa.

Comentário de Vinicius em 9 setembro 2012 às 19:47
Boa...
Comentário de Everley Linhares em 7 setembro 2012 às 18:29

Valeu.

Comentário de Marcus Pereira em 7 setembro 2012 às 0:53

mandou bem

Comentário de Rafael Diego Gomes em 6 setembro 2012 às 8:13

Valeu!!!

Badge

Carregando...

© 2017   Criado por Walter Cunha.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço