94434076 curso oracle 11g emerson

Upload: pablo-verly

Post on 10-Feb-2018

221 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    1/129

    Faculdade de Cincias e Tecnologia de Birigui

    ADMINISTRAO DEBANCO DE DADOS ORACLE

    Autor:

    Emerson Nascimento Colchesqui

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    2/129

    1.) Introduo

    Objetivo do Curso

    Conceito de Banco de Dados Banco de Dados Oracle

    Tarefas Comuns de Administrao de Banco de dados Ferramentas de Administrao do Banco de Dados

    2.) Instalao do Banco de Dados Oracle

    Overview da Instalao Instalando o Software de Banco de Dados Oracle Usando o DBCA para Criar e Configurar o Banco de Dados

    3.) Gerenciando a Instncia Oracle

    Overview da Instncia Oracle Shutting Down and Startup da Instncia Oracle Shutdown / Startup manual ou em ambiente UNIX

    4.) Configurando a Camada de Rede

    Entendendo a Configurao de Rede Ferramentas para a Configurao de Rede Visualizando e alterando a Configurao do LISTENER Starting and Shutting Down do LISTENER Configurando Estaes Clientes

    5.) Overview do Oracle Enterprise Manager

    Introduo do Oracle Enterprise Manager Acessando o Oracle Enterprise Manager

    6.) Gerenciando as Estruturas de Armazenamento

    Estruturas de Armazenamento do Banco de Dados

    Executando Tarefas Comuns de Armazenamento do Banco de Dados Gerenciando as Estruturas de Undo do Banco de Dados Efetuando Mudanas nas Estruturas de Armazenamento do Banco de Dados

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    3/129

    7.) Administrando Usurios e Privilgios

    Overview de Usurios e Privilgios Administrando Roles Administrando Profiles

    Administrando Usurios

    8.) Gerenciando Objetos

    Overview dos Objetos de Banco de Dados Gerenciando Tabelas Gerenciando ndices Gerenciando Views Gerenciando Programas

    9.) Backup e Restore do Banco de Dados

    Overview do Backup e Restore do Banco de Dados Configurando o Banco de Dados para Backup e Restore Backup do Banco de Dados Restore e Recover do Banco de Dados

    10.) Monitorando e Ajustando o Banco de Dados

    Monitorao Pr-Ativa do Banco de Dados Diagnosticando Problemas de Performance

    11.) Gerenciando o Software Oracle

    Gerenciando Arquivos e Logs Aplicao de Patches

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    4/129

    1.) IntroduoObjetivo do Curso

    Este curso visa oferecer um conceito bsico sobre banco de dados e maisfocado especificamente na soluo Oracle para Banco de Dados.

    O curso dar ao aluno uma viso bsica sobre as disciplinas existentes naadministrao de banco de dados Oracle, fornecendo conhecimentos sobre ofuncionamento do software e sua principal ferramenta de administrao OracleEnterprise Manager.

    Com o curso o aluno ter um alicerce formado para ir mais longe, buscando

    uma especializao, certificao ou aptido para trabalhar como DBA Jr. emplataforma Oracle.

    Conceito de Banco de DadosAntes de iniciarmos o conceito de Banco de Dados importante saber o conceito dodado, dado neste contexto um sinnimo de informao, seja esta relevante ouno.

    Bancos de dados (ou bases de dados), so conjuntos de registros dispostos emestrutura regular que possibilita a reorganizao dos mesmos e produo deinformao.Um banco de dados normalmente agrupa registros utilizveis para um mesmo fim.

    Vamos exemplificar o conceito de banco de dados:- Lembremos do nosso velho arquivo fichario:- O mesmo um banco de dados manual.

    - Pois um local que guardamos nossas informaes/dados

    - Onde as informaes (dados) so guardadas em fichas e/ou documentos

    - e organizadas de alguma forma para pesquisa

    - e armazenadas para algum objetivo.

    Este tipo de banco de dados alm de ocupar um grande espao fisico em nossassalas para armazenar poucas informaes, sua pesquisa era extremamente lenta secompararmos aos padres de hoje.

    Umbanco de dados informatizado usualmente mantido e acessado por meio de umsoftware conhecido comoSistema Gerenciador de Banco de Dados(SGBD). Normalmente umSGBD adota ummodelo de dados,de forma pura, reduzida ou estendida. Muitas vezes otermo banco de dados usado como sinnimo deSGDB

    http://pt.wikipedia.org/wiki/Informa%C3%A7%C3%A3ohttp://pt.wikipedia.org/wiki/Informa%C3%A7%C3%A3ohttp://pt.wikipedia.org/wiki/Informa%C3%A7%C3%A3ohttp://pt.wikipedia.org/wiki/Sistema_Gerenciador_de_Banco_de_Dadoshttp://pt.wikipedia.org/wiki/Sistema_Gerenciador_de_Banco_de_Dadoshttp://pt.wikipedia.org/wiki/Sistema_Gerenciador_de_Banco_de_Dadoshttp://pt.wikipedia.org/wiki/Modelo_de_dadoshttp://pt.wikipedia.org/wiki/Modelo_de_dadoshttp://pt.wikipedia.org/wiki/Modelo_de_dadoshttp://pt.wikipedia.org/wiki/SGDBhttp://pt.wikipedia.org/wiki/SGDBhttp://pt.wikipedia.org/wiki/SGDBhttp://pt.wikipedia.org/wiki/SGDBhttp://pt.wikipedia.org/wiki/Modelo_de_dadoshttp://pt.wikipedia.org/wiki/Sistema_Gerenciador_de_Banco_de_Dadoshttp://pt.wikipedia.org/wiki/Informa%C3%A7%C3%A3o
  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    5/129

    Vantagens que ganhmos com a informatizao dos bancos de dados

    - Maior capacidade de armazenamento de informaes- Menor espao fisico ocupado para armazenar as informaes

    - Maior velocidade no acesso a dados- Controle da Redundncia de informaes- Compartilhamento de informaes- Independncia dos dados

    Esquema bsico de funcionamento de um SGBD

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    6/129

    Banco de Dados OracleHistria

    O Oracle um SGBD (sistema gerenciador de banco de dados)que surgiu nofim dos anos 70, quando Larry Ellison vislumbrou uma oportunidade que outrascompanhias no haviam percebido, quando encontrou uma descrio de um prottipofuncional de um banco de dados relacional e descobriu que nenhuma empresa tinha seempenhado em comercializar essa tecnologia.

    O SGBD da Oracle lder de mercado. O Oracle 9i foi pioneiro no suporte aomodelo web. O Oracle 10g, mais recente, se baseia na tecnologia de grid.Recentemente fora lanado o Oracle 11g que veio com melhorias em relao ao Oracle10g.

    Edies

    Alm das diferentes verses do software de gerenciamento de banco de dados Oracle, aOracle Corporation subdivide seu produto em "edies" variveis - aparentemente porrazes de marketing e controle de licenas.

    Enterprise Edition (EE)inclue mais funcionalidades que a 'Standard Edition', especialmente nasreas de performance e segurana. A Oracle Corporation licencia este produto na base deusurios ou de ncleos de processamento, normalmente para servidores com 4 ou mais UCPs.EE no tem limite de memria e pode utilizar clusterizao usando o softwareOracle RAC.

    Standard Edition (SE) contem a a funcionalidade bsica de banco de dados. A OracleCorporation licensia este produto na base de usurios ou de sockets, normalmente paraservidores com um quatro UCPs. Se o nmero de UCPs exceder 4, o usurio deve migrar paraa licensa Enterprise. SE no possui limite de memria e pode utilizar clusterizao com o OracleRAC sem custo adicional.

    Standard Edition One, introduziado com o Oracle 10g, possui algumas restries defuncionalidades adicionais. A Oracle Corporation comercializa-o para uso em sistemas com umaou duas UCPs. Ela no possui limitaes de memria.

    Express Edition('Oracle Database XE'), introduziada em 2005, oferece o Oracle 10g livre paradistribuio nas plataformasWindowseLinux(com uma limitao de apenas 150 MB e restritaao uso de apenas uma UCP, um mximo de 4 GB de dados de usurio e 1 GB de memria). Osuporte para esta verso feito exclusivamente atravs de fruns on-line, sem o suporte daOracle.

    Oracle Personal Edition fornece a funcionalidade de "alto fim" da Enterprise Edition mas comercializada (e licenciada) para desenvolvedores especficos que trabalham emestaes detrabalhopessoais.

    Oracle Database Lite,destinada para rodar emdispositivos mveis.O banco de dados,localizado parcialmente no dispositivo mvel, pode sincronizar com uma instalao baseada em

    servidor

    http://pt.wikipedia.org/wiki/SGBDhttp://pt.wikipedia.org/wiki/SGBDhttp://pt.wikipedia.org/wiki/SGBDhttp://pt.wikipedia.org/wiki/Banco_de_dadoshttp://pt.wikipedia.org/wiki/Banco_de_dadoshttp://pt.wikipedia.org/wiki/Banco_de_dadoshttp://pt.wikipedia.org/wiki/D%C3%A9cada_de_1970http://pt.wikipedia.org/wiki/D%C3%A9cada_de_1970http://pt.wikipedia.org/wiki/Larry_Ellisonhttp://pt.wikipedia.org/wiki/Larry_Ellisonhttp://pt.wikipedia.org/wiki/Webhttp://pt.wikipedia.org/wiki/Webhttp://pt.wikipedia.org/wiki/Computa%C3%A7%C3%A3o_em_gradehttp://pt.wikipedia.org/wiki/Computa%C3%A7%C3%A3o_em_gradehttp://pt.wikipedia.org/wiki/UCPhttp://pt.wikipedia.org/wiki/UCPhttp://pt.wikipedia.org/wiki/UCPhttp://pt.wikipedia.org/w/index.php?title=Oracle_RAC&action=edit&redlink=1http://pt.wikipedia.org/w/index.php?title=Oracle_RAC&action=edit&redlink=1http://pt.wikipedia.org/w/index.php?title=Oracle_RAC&action=edit&redlink=1http://pt.wikipedia.org/wiki/Windowshttp://pt.wikipedia.org/wiki/Windowshttp://pt.wikipedia.org/wiki/Windowshttp://pt.wikipedia.org/wiki/Linuxhttp://pt.wikipedia.org/wiki/Linuxhttp://pt.wikipedia.org/wiki/Linuxhttp://pt.wikipedia.org/wiki/On-linehttp://pt.wikipedia.org/wiki/On-linehttp://pt.wikipedia.org/wiki/On-linehttp://pt.wikipedia.org/wiki/Esta%C3%A7%C3%A3o_de_trabalhohttp://pt.wikipedia.org/wiki/Esta%C3%A7%C3%A3o_de_trabalhohttp://pt.wikipedia.org/wiki/Esta%C3%A7%C3%A3o_de_trabalhohttp://pt.wikipedia.org/wiki/Esta%C3%A7%C3%A3o_de_trabalhohttp://pt.wikipedia.org/w/index.php?title=Oracle_Database_Lite&action=edit&redlink=1http://pt.wikipedia.org/w/index.php?title=Oracle_Database_Lite&action=edit&redlink=1http://pt.wikipedia.org/wiki/Dispositivo_m%C3%B3velhttp://pt.wikipedia.org/wiki/Dispositivo_m%C3%B3velhttp://pt.wikipedia.org/wiki/Dispositivo_m%C3%B3velhttp://pt.wikipedia.org/wiki/Dispositivo_m%C3%B3velhttp://pt.wikipedia.org/w/index.php?title=Oracle_Database_Lite&action=edit&redlink=1http://pt.wikipedia.org/wiki/Esta%C3%A7%C3%A3o_de_trabalhohttp://pt.wikipedia.org/wiki/Esta%C3%A7%C3%A3o_de_trabalhohttp://pt.wikipedia.org/wiki/On-linehttp://pt.wikipedia.org/wiki/Linuxhttp://pt.wikipedia.org/wiki/Windowshttp://pt.wikipedia.org/w/index.php?title=Oracle_RAC&action=edit&redlink=1http://pt.wikipedia.org/wiki/UCPhttp://pt.wikipedia.org/wiki/Computa%C3%A7%C3%A3o_em_gradehttp://pt.wikipedia.org/wiki/Webhttp://pt.wikipedia.org/wiki/Larry_Ellisonhttp://pt.wikipedia.org/wiki/D%C3%A9cada_de_1970http://pt.wikipedia.org/wiki/Banco_de_dadoshttp://pt.wikipedia.org/wiki/SGBD
  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    7/129

    Tarefas Comuns de Administrao de Banco de DadosOAdministrador de banco de dados , conhecido pela abreviao em ingls

    DBA (Database Administrator), tem a principal responsabilidade manter o

    ambiente de dados administrado por ele ativo, seguro e acessvel aos usurios.

    Fazem parte das atividades e responsabilidades do DBA:

    - Manter os bancos de dados ativos e disponveis

    - Garantir a segurana e confidencialidade dos dados- Administrar o espao ocupado pelo banco de dados

    - Administrar e manter os acessos de pessoas/sistemas ao banco de dados- Monitorar e manter a boa performance do SGBD

    - Garantir e monitorar as polticas de backup aplicadas

    - Efetuar restaurao de dados de backups quando necessrio- Configurar, instalar e administrar SGBD

    Tambm existe a figura do Administrador de Dados (AD), cujaresponsabilidade difere do DBA, pois este se preocupa mais com o dado

    (informao) e sua integridade, do que com aspectos tcnicos.

    Fazem parte das atividades e responsabilidades do AD:

    - Padronizar nomenclatura de objetos e atributos- Verificar se os objetos seguem a modelagem de dados adotada (FN)

    - Garantir a integridade das informaes e evitar redundncias- Manter a documentao dos metadados

    - Manter documentado a modelagem dos dados/sistemas

    O Foco do nosso treinamento ser voltado formao de profissionais DBAOracle

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    8/129

    Ferramentas de Administrao do Banco de DadosPodemos administrar o banco de dados Oracle de vrias maneiras,

    utilizando scripts, ferramentas da Oracle, ferramentas de terceiros e hojetambm ferramentas Open-Source.

    Podemos citar como as principais ferramentas de trabalho Oracle:

    SQL-PLUSEsta ferramenta utilizada para passarmos comandos manualmente ao banco

    de dados, ou executarmos scripts com diversos comandos de uma nica vez.Por ser uma ferramenta extremamente leve e verstil (e a mais antiga) esta

    muito utilizada por DBAs experientes at hoje.Existe a verso web da ferramenta, que evita a instalao de softwares clientes

    nas mquinas de usurios. Porm no existe nesta ferramenta a possibilidade deexecuo de scripts.

    SQL-WorksheetEsta ferramenta uma verso um pouco melhorada da SQL-PLUS, porm seu

    formato de utilizao um pouco diferenciado.O interessante desta ferramenta que os resultados so exibidos em formato

    planilhado.

    PL-SQL DeveloperEsta ferramenta era de terceiros e foi adquirida pela Oracle e colocada como

    verso oficial a partir da verso 11g.Esta uma ferramenta voltada principalmente programao PL/SQL dentro

    de bases de dados Oracle.

    Oracle Enterprise Manager - OEMEsta a principal ferramenta de administrao de banco de dados fornecida

    pela Oracle. uma ferramenta completa que abrange diversas disciplinas da administrao

    de banco de dados.A verso WEB da ferramenta que estaremos estudando, traz alm da parte

    administrativa, tambm a monitorao de ambiente, controle de auditoria e

    gerenciamento de backups.

    Oracle Enterprise Manager Grid ControlEsta ferramenta de monitorao da Oracle que abrange o OEM, porm com

    recursos adicionais:

    - Monitorao de diversas instncias simultaneamente- Monitorao de outros tipos de bancos de dados- Monitorao de Sistemas Operacionais- Monitorao de Applications Servers- Monitorao de Web Servers

    - Monitorao de Queue Managers

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    9/129

    2.) Instalao de um Banco de Dados Oracle

    Overview da InstalaoO Banco de Dados Oracle um SGBD que executado em mltiplas

    plataformas distintas, indo desde mainframes at sistemas embarcados. A maiorquantidade de softwares Oracle instaladas encontram-se em servidores Windows eUnix/Linux.

    A instalao do software Oracle baseada em Java, portanto h umapadronizao na instalao em diferentes sistemas operacionais. Exemplo a forma deinstalar Oracle para Windows a mesma de se instalar em um servidor Unix

    O importante numa instalao Oracle que os pr-requisitos apresentadospelo software sejam cumpridos, assim evitam-se problemas futuros de eventuais bugsou falta de suporte tcnico pela Oracle.

    Os pr-requisitos para instalao de um banco de dados Oracle no exigemuma mquina poderosa, com uma mquina simples conseguimos ter uma instalaorazovel.

    fato que quanto mais poder de processamento, velocidade de I/O ememria existir no servidor mais rpido ser o acesso as informaes armazenadas.

    Para o nosso treinamento utilizaremos a seguinte configurao:

    Sistema Operacional: Windows Server 2008Memria Fsica: 4 GbEspao de HD: 14 Gb disponveisVerso Oracle: Oracle 11gEnterprise Edition

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    10/129

    Instalando o Software de Banco de Dados OracleNos prximos passos voc aprender como fazer a instalao do software debanco de dados Oracle.

    Acompanhe atentamente o passo a passo.

    Instalando o Servidor de Banco de Dados

    1. Passo: Acionar o Programa InstaladorPodemos ter o software de instalao em DVDs ou diretamente gravado empastas dentro do servidor ou na rede.

    Encontrando o diretrio de instalao execute o programa chamado setup.exe

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    11/129

    2. Passo: Selecionando o Produto a instalarNa primeira tela do Instalador encontramos trs opes possveis:

    Oracle Database 11g

    Ao selecionarmos esta opo indicamos que estamos querendo instalar obanco de dados ou o SGBD da Oracle, para a verso Oracle 11g.

    Oracle ClientSelecionamos esta opo quando queremos instalar ferramentas e drivers paraum cliente e/ou servidor de aplicao que necessite acessar os dados contidosem um servidor de banco de dados Oracle.

    Oracle ClusterwareSelecionamos esta instalao quando formos efetuar instalaes com clusters

    Oracle, chamados de Oracle RAC (Real Application Cluster)

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    12/129

    3. Passo: Mtodo de InstalaoNeste passo podemos optar pela instalao bsica, que simplifica os passos da

    configurao, ou podemos partir para a instalao avanada para conhecermos asopes do banco de dados detalhadamente.

    ORACLE_BASE = Contm a rvore de diretrios para o software Oracle e tambm para arquivos de dados do banco de dados.ORACLE_HOME= Contm a localizao do software Oracle e os arquivos de configurao.

    Instalao Simplificada:

    Neste tipo de instalao s necessrio:- passar onde ficar instalado o software Oracle (ORACLE_BASE) e tambm a

    localizao dos arquivos de software do Oracle (ORACLE_HOME).- Indicar o tipo de Instalao (Enterprise, Standard ou Personal)

    - Nome da Instncia Oracle- E a senha do usurio administrador.

    Aps passadas estas informaes as demais o Oracle ir assumir de formapadro as outras opes e iniciar a criao da nova instncia.

    Instalao Avanada:

    Como o nome diz, trata-se de uma instalao onde todas as configuraesiniciais podem ser escolhidas de acordo com a necessidade do administrador, no

    necessariamente ficando as opes padres.Permite neste caso ao administrador ter mais controle e flexibilidade sobre o

    tipo de instalao.

    Vamos seguir o curso optando pela instalao avanada para vermos todas as opes possveis:

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    13/129

    4. Passo Tipo de InstalaoEscolhemos neste passo agora o tipo de instalao de Oracle que queremos.Os tipos possveis foram vistos no captulo 1 no tpico Banco de Dados Oracle

    Selecionaremos para o nosso curso a opo Enterprise Edition, que nospermitira termos o mximo de recursos existentes na ferramenta

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    14/129

    5. Passo: Local de Instalao

    Definirmos onde ser instalado o software Oracle (ORACLE_BASE).Neste item fica configurado onde sero efetuadas quaisquer instalaes de

    softwares Oracle.

    Definirmos qual ser o nome de nossa instalaoO Nome padro adotado OraDb11g_home1, indica que esta uma instalaode banco de dados (DB) da verso 11g e este seu primeiro diretrio.

    Definirmos o caminho de onde ficar o software (ORACLE_HOME)Aqui indicamos onde ficar o software do SGBD e suas configuraes.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    15/129

    6. Passo: Pr-requisitos do softwareNesta fase estamos checando se os pr-requisitos de hardware e softwares

    necessrios para a instalao do software Oracle so atendidos.

    Enquanto os pr-requisitos no forem atendidos ou conscientementeforarmos para que ele ignore algum pr-requisito no atendido a instalao

    no continuar.

    No nosso caso de instalao no atendemos um requisito e sofremos uma advertncia.

    A advertncia citada neste momento que ns estamos efetuando uma instalao em

    um servidor que no possui IP Fixo, e isto faria com que os clientes pudessem perder o

    acesso ao banco de dados caso o DHCP renova-se o IP.

    Vamos ignorar esta advertncia e dar prosseguimento a instalao.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    16/129

    7. Passo: Opo de ConfiguraoNeste passo iremos informar a opo de configurao que queremos adotarpara a nossa instalao.

    As opes so:

    a.) Criar um Banco de DadosSelecionaremos esta opo. Pois nossa inteno instalarmos e criamosuma instncia de banco de dados Oracle.

    b.)Configurar gerenciamento automtico (ASM)Esta opo permite configurar o gerenciamento automtico de arquivos doOracle.

    Este gerenciamento controla todos os tipos de arquivos do banco de dados,criando um disco (raw) para o controle.Este tipo de gerenciamento normalmente selecionado quando estamosefetuando uma instalao do tipo RAC.

    c.) Instalar Software SomenteNeste tipo de instalao nenhum banco de dados ser criado, apenas ossoftwares da Oracle sero instalados.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    17/129

    8. Passo: Finalidade do Banco de DadosNeste ponto selecionamos qual ser a configurao inicial do banco de dados,

    ou seja, para que fim se destinar este banco de dados.

    A opo selecionada definir os parmetros de configurao de memria,

    controle de locks, acesso via rede entre outros.

    Estes parmetros pr-definidos podero ser alterados no futuro pelo DBA para

    fazer o que chamamos de Tunning ou afinamento do banco de dados, visando

    melhoria de performance.

    As finalidades pr-selecionadas pela Oracle so:

    Fins Gerais ou Sistema de Processamento de Transaes

    Refere-se normalmente a sistemas de transaes onlineData Warehouse

    Refere-se a sistemas de busca massiva de dados e consolidao de grande massa de

    dados, com viso gerencial, estatstica, comercial e outras.

    Avanado

    Neste item voc define as configuraes de tipo de banco, como fator de blocagem,

    memria, entre outros.

    Vamos escolher o padro de Fins Gerais.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    18/129

    9. Passo: Nome da Instncia

    Toda instncia de banco de dados Oracle, recebe um nome que chamamos de nome

    de instncia ou SID.

    Nesta configurao existem dois parmetros:

    Nome do Banco de dados: Que armazenar o nome interno do banco de dados.SID: Que armazenar o nome de comunicao via rede

    Normalmente colocamos os dois nomes iguais, mantendo um padro de no mximo

    oito caracteres.

    Para nosso estudos selecionaremos como nome de instncia FATEB

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    19/129

    10.Passo: Definindo detalhes tcnicos

    A prxima tela de configurao possui quatro abas, referentes a configuraes dainstncia:

    MemriaConjunto de caracteres

    Segurana

    Exemplos de esquemas

    Vamos conhecer cada uma delas:

    MemriaNesta aba iremos configurar quanto nossa instncia ir utilizar de memria do

    servidor. Quanto mais memria tiver mais rpido ser o acesso aos dados.

    O Oracle possui a partir da verso 10g o gerenciamento automtico de Memria paraos seus tipos de cachs existentes, ele gerencia quanto vai de memria para dados, paraprogramas, para metadados, de forma automtica.

    Nota: Como a verso que estamos instalando de 32 bits, o Oracle s poder alcanar nomximo por instncia o tamanho de 2Gb de memria.

    Os parmetros de configurao de memria podem ser alterados no futuro, viaprocesso de tunning do banco de dados. Porm estes parmetros no so dinmicos e exigemparada da instncia.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    20/129

    10.2 Conjunto de caracteres

    Nesta aba definimos o conjunto de caracteres que o banco ir utilizar, ou seja,definimos as letras e lngua que iremos armazenar.

    O padro WE8MSWIN1252 e o WE8ISO8859 consomem 1 byte por caracterarmazenado e conseguem gravar os caracteres da lngua portuguesa.

    O Unicode permite gravar qualquer tipo de caracter de qualquer lngua, pormpara conseguir isto ele consome 2 bytes para cada caracter armazenado.

    Importante: Uma vez definido o conjunto de caracteres o mesmo no poder maisser alterado, caso haja esta necessidade o banco ter de ser recriado e seus dadosrecuperados de um backup export.

    Vamos manter o padro WE8MSIN1252.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    21/129

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    22/129

    10.3 Segurana

    Nesta tela definimos se queremos utilizar as melhorias de segurana que foramimplementadas na verso 11g, ou desativ-las e manter padro com a verso 10g eanteriores.

    As mudanas envolvem melhoria nas senhas bsicas, implementaoautomtica de auditoria, entre outros.

    Vamos optar por ativar as melhorias.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    23/129

    10.4 Exemplos de esquemas

    Permite criar esquemas de bancos de dados de exemplo da Oracle.Sero criados OWNERs e objetos, para mostrar funcionalidades do SGBD da

    Oracle, para quem conhece a velha conta SCOTT senha TIGER, com melhorias.

    Como estamos em treinamento interessante selecionarmos esta opo paraque o nosso banco possa ter algumas tabelas e objetos j pr-criados para nossosestudos.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    24/129

    11.Passo: Gerenciamento do banco de dadosNesta tela definimos como nosso banco de dados ser gerenciado e monitorado.Se tivssemos instalado o ORACLE ENTERPRISE MANAGER GRID CONTROL, a opo

    para seleo do mesmo estaria habilitada.

    Nossa opo j pr-escolhida o gerenciamento por OEM, temos a opo deativarmos o servidor de mensagens SMTP, para envio de mensagens e alertas emitidospela monitorao da instncia.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    25/129

    12.Passo: Onde Armazenar os datafiles bsicosNesta tela iremos informar ao software onde queremos que fiquem

    armazenados os arquivos principais do banco de dados.A escolha que fizermos ir servir como base para a escolha dos diretrios para

    as tablespaces: SYSTEM, TEMP, USERS e UNDO.

    Com exceo da tablespace SYSTEM todas as demais tablespaces podero terseus arquivos de dados, alterados de localidade ou at renomeados de forma online.

    Porm para a tablespace SYSTEM ser renomeada ou mudada sua localizao oarquivo de controle e backup do banco de dados ter de ser recriado do zero.

    Importante: Defina com ateno o local onde ficaro estes arquivos para evitarproblemas de recriao de instncia no futuro.

    TablespacesSo espaos alocados dentro do banco de dados para armazenamento de

    objetos, sendo estes ndices ou tabelas.Uma tablespace pode ser composta de 1 ou mais arquivos de dados fsicos

    gravados no disco.

    Principais Tablespaces:SYSTEM - Contm os objetos de gerenciamento interno do SGBDTEMP - Utilizado em queries que fazer uso de ordenao e joinsUNDO - Dados alterados antes do commit

    USERS - Tablespace inicial para usurios

    Recomendao:

    Por questes de monitorao e performance os arquivos de dados decontedos distintos devem estar separados em discos/parties/file-systemsdistintos.

    Nota: A estrutura de diretrios j deve estar pr-criada dentro do sistema de discos.

    Layout de discos:

    Definiremos a seguinte estrutura para o nossos arquivos de banco de dados:C:\ORACLE\FATEB - raiz principal da instncia FATEBC:\ORACLE\FATEB\BANCO - Arquivos tablespaces OracleC:\ORACLE\FATEB\DADOS - Arquivos de dados da FATEBC:\ORACLE\FATEB\INDICES - Arquivos de ndices da FATEB

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    26/129

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    27/129

    13.Passo: Opes de Backup e RecuperaoEsta prxima tela muito importante pois definimos questes de backup e

    recuperao de dados, podendo esta at ter restaurao de dados online. Veremosagora as opes existentes.

    No ativar backups automatizadosEsta opo define que voc neste momento no deseja ativar nenhum tipo debackup e nem a opo de flash recovery existente no Oracle.Se voc selecionar esta opo e mais tarde desejar fazer uso dasfuncionalidades citadas, a configurao ser manual.

    Ativar Backups AutomatizadosCom isto ativamos o recurso de Flash_recovery e backups programados via job,o principal desta opo a ativao do recurso flash_recovery que permite

    recuperar dados apagados recentemente, de forma rpida.

    Para o recurso de backup automtico necessrio fornecermos credenciais deum usurio do sistema operacional que dever ter direito de gravao na pastaque selecionamos para armazenar os backups.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    28/129

    14.Passo: Especificao da senha das contas do SGBDNesta tela definimos a senha de cada uma das contas criadas pelo banco

    Oracle. Estas contas so internas e cada uma possui uma finalidade especifica.

    Conhea as contas criadas:

    SYS - Contm os objetos internos do SGBD Oracle (Dicionrio de dados)

    SYSTEM - Conta Master de administrao do banco de dadosSYSMAN - Conta utilizada pelo OEM para monitorar o banco de dadosDBSNMP - Conta utilizada pelo agente para obter mtricas de monitorao

    No nosso treinamento colocaremos a senha comofatebpara todas as contas

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    29/129

    15.Passo: Registro do Oracle no site de suporteNesta tela indicamos se queremos associar e registrar nossa instncia no site de

    suporte da Oracle (metalink.oracle.com) . Se fizermos esta associao o sistema irverificar automaticamente patches e baix-los quando necessrios.

    No nosso treinamento no iremos ativar esta opo.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    30/129

    16.Passo: Resumo e Instalao

    Neste passo terminamos de efetuar todas as configuraes iniciais e

    iniciaremos o processo de instalao da nossa instncia de dados.

    Inicio do Processo de Instalao: 15:54Trmino do processo de instalao: 16:12 (tempo total 20 minutos aprox.)

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    31/129

    Nesta ultima tela notamos que o Oracle indica que conclumos a instalao com sucesso e nosfornece informaes importantes:

    - Nome da Instncia criada fateb- Caminho do arquivo de configurao- endereo do OEM:https://NColchesqui:1158/em

    https://ncolchesqui:1158/emhttps://ncolchesqui:1158/emhttps://ncolchesqui:1158/emhttps://ncolchesqui:1158/em
  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    32/129

    Usando o DBCA para Criar e Configurar o Banco de DadosNo capitulo anterior instalamos nosso software Oracle no servidor e tambm

    criamos o que chamamos de instncia de banco de dados.

    Caso necessitamos criar uma nova instncia no servidor, no necessitaramosmais ter de reinstalar o software, bastaria chamarmos o utilitrio DBCA (DatabaseConfiguration Assistant) e seguirmos os mesmos passos que utilizamos na criao denossa primeira instncia.

    Para executarmos o programa DBCA devemos ir ao menuIniciar Todos os Programas -> OracleOraDb11g_home1 -> -> Ferramentas de Configurao e Migrao -> -> -> Assistente de Configurao de Banco de dados

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    33/129

    Com a Ferramenta DBCA temos a possibilidade de efetuar as seguintes operaes:

    Criar um banco de dadosEsta opo permite que criemos novas instancias de banco de dados.Os passos apresentados nesta opo so exatamente os mesmos que

    selecionamos, quando efetuamos a instalao do servidor.

    Configurar opes de um banco de dadosAqui configuramos opes extras existentes na instncia de banco de dados.Configuramos tambm a forma de comunicao do listener para o sistema derede.

    Deletar um banco de dadosApaga uma instncia de banco de dados criada, removendo todos os processose seus datafiles.

    Gerenciar modelosPermite a criao de modelos (templates) de criao e configurao deinstncias.

    Configurar o gerenciamento de armazenamento automticoGerencia as configuraes de controle do armazenamento automtico dedatafiles. Utilizado em sistemas RAC.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    34/129

    3.) Gerenciando a Instncia Oracle

    Overview da Instncia OracleAt o momento instalamos o software Oracle, criamos uma instncia de banco

    de dados ao qual demos o nome de FATEB, mas afinal o que uma instncia ?

    Um instncia em Oracle o conjunto de programas/processos res identes em

    memria que so utilizados para gerenciar um banco de dados Oracle.

    Quando criamos a instncia FATEB na verdade criamos a estrutura deprogramas e processos em Oracle para acessarmos um banco de dados chamado

    FATEB.

    Arquitetura Oracle e seus componentes

    *O servidor Oracle consiste de:

    - Instncia Oracle (Oracle Instance)- Arquivos do Banco de Dados (Database Files)

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    35/129

    * Ar quivos do Banco de Dados Oracle

    - Um banco de dados possui uma estrutura lgica e fsica.- A estrutura fsica do banco de dados um conjunto de arquivos do sistema

    operacional. Em um banco de dados Oracle eles so compostos de trs tipos dearquivos:

    + Arquivos de Dados (Data F il es)+ Ar quivos de Logs (Redo Logs)+ Arqui vos de Controle (Control F il es)

    * Ar quivos de Dados (Data F il es)

    - Os arquivos de dados contm os dados do banco, e eles so armazenados em tabelasdefinidas pelo usurio. Alm disto, nos arquivos de dados tambm so armazenados odicionrio de dados, as imagens anteriores de dados alterados, ndices e outros tipos deestruturas. Um banco de dados Oracle deve conter no mnimo um arquivo de dados.

    * Caractersticas dos Arquivos de Dados- Os arquivos de dados podem estar associados a apenas um banco de dados Oracle.

    - Um ou mais arquivos de dados formam uma unidade lgica chamada tablespace.

    * Redo Logs- Os redo logs armazenam as mudanas efetuadas no banco de dados para possibilitar

    a recuperao dos dados em caso de falhas. Um banco de dados Oracle deve possuir

    no mnimo dois arquivos de redo log.

    * Arquivos de Controle (Control F il es)- Os arquivos de controle contm as informaes necessrias para manter e verificar a

    integridade do banco de dados. Por exemplo, o arquivo de controle utilizado paraidentificar os arquivos de dados e os arquivos de redo log. Um banco de dados Oracle

    deve possuir no mnimo um arquivo de controle.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    36/129

    *Outros Arquivos Importantes

    - O servidor Oracle tambm faz uso de outros arquivos que no fazem parte do banco dedados:

    + Arquivo de Parmetros (Parameter File)-define as caractersticas da instncia Oracle. Por exemplo, ele contm parmetros quedefinem o tamanho das estruturas de memria da SGA

    + Arquivo de Senhas (Password File)-faz a validao de quais usurios tem permisso de fazer start up e shutdown na instnciaOracle

    + Arquivos de Redo Log Arquivados (Archived Redo Log Files)-so cpias off-line dos arquivos de redo log, que podem ser necessrios em um processo derecuperao de falhas de mdia

    I nstncia Oracle (Oracle I nstance)

    - Uma Instncia Oracle consiste na estrutura de memria chamada de SGA (SystemGlobal Area) e nos processos em segundo plano (background processes) utilizados paragerenciar o banco de dadosUma Instncia Oracle somente pode abrir e utilizar um banco de dados de cada vez

    * rea Global do Sistema (System Global Ar ea)- rea de memria utilizada para armazenar as informaes do banco de dados que socompartilhadas pelos processos- Contm dados e informaes de controle e alocada na memria do computador onde oservidor Oracle esta operando- Dinmica e definida pelo parmetro SGA_MAX_SIZE- Definida em pores (granule)- Consiste de diversas estruturas de memria

    + Shared Pool-utilizada para armazenar os comandos SQL executados recentemente, e as informaesdo dicionrio de dados. Estes comandos SQL podem ser solicitados por processos dousurio ou no caso de stored procedures, lidos do dicionrio de dados.

    + Database Buffer Cache-utilizada para armazenar os dados recentemente utilizados. Os dados so lidos egravados nos arquivos de dados

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    37/129

    + Redo Log Buffer-utilizado para armazenar as alteraes feitas no banco de dados pelos processos eservidores pelos processos em segundo plano

    + Java Pool-utilizado para armazenar cdigo Java

    + Large Pool-utilizado para armazenar grandes estruturas de memria que no esto relacionadasdiretamente ao processamento de instrues SQL, como por exemplo blocos de dadoscopiados durante operaes de backup e recovery

    + Streams Pool-utilizado para manter estruturas de dados e controle do recurso Oracle Streams

    * Processos em Segundo Plano

    - Os processos em segundo plano (background processes)de uma instncia executamfunes comuns que so necessrias para atender as solicitaes de servio de usuriossimultneos, sem comprometer a integridade e o desempenho do sistema.- Eles consolidam funes que, de outra forma, seriam tratadas por diversos programas Oracleexecutados para cada usurio.

    - Ele executam tarefas de I/O e monitoram outros processos Oracle para oferecer maiorparalelismo, o que aumenta o desempenho e a confiabilidade.- Dependendo da configurao, uma instncia Oracle pode incluir vrios processos de segundoplano, no entanto cada instncia inclui cinco processos de segundo plano fundamentais. SoEles:

    + O Database Writer (DBW0) responsvel por gravar dados alterados do buffer cache dobanco de dados nos arquivos de dados.

    + O Log Writer (LGWR)grava as alteraes registradas no buffer de redo log nos arquivos deredo log.

    + O Monitor de Sistema (SMON, System Monitor) verifica a consistncia no banco dedados e, se necessrio, inicia a recuperao do banco de dados quando ele aberto.

    + O Monitor de Processo (PMON, Process Monitor)disponibiliza recursos se um dosprocessos Oracle falhar.

    + O Checkpoint Process (CKPT) responsvel pela atualizao das informaes de status dobanco de dados nos arquivos de controle e nos arquivos de dados, sempre que as alteraesefetuadas no cache de buffer ficam registradas no banco de dados de forma permanente.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    38/129

    * Processos de segundo plano opcionais:

    ARCn - Gerencia a gravao dos Archive-logsCJQ0 - Gerencia e executa a fila de Jobs do schedulerRECO - Iniciado quando a instncia entra em processo de recoverDnnn - Processos auxiliares de gravao paralela com DBWRLCKn - Gerenciamento de locks para instncias em RACPnnn - Execuo de queries em paraleloQMNn - Gerenciador do sistema de mensageria do Oracle

    Shutting Down and Startup da Instncia Oracle

    Agora que j instamos o software e conhecemos como seu funcionamento necessitamos aprendercomo iniciar e desligar a instncia.

    No ambiente Windows

    Para desativarmos a instncia basta pararmos os servios Oracle criados no ambiente.Cada servio do Oracle tem uma funcionalidade especifica:

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    39/129

    Descrio dos servios instalados:

    Oracle FATEB VSS Writer Service - Criar um cache de gravao virtual de dadosOracleDBConsoleFATEB - Console do OEM para a instncia FATEBOracleJobSchedulerFATEB - Execuo de Jobs schedulados na instncia FATEBOracleMTSRecoveryService - Controle de conexo e recuperao do MTS MS

    OracleOraDb11g_home1ClrAgent - Agente de limpeza de arquivos de logOracleOraDb11g_home1CMAdmin - Administrador do sistema de Concentrao de conexesOracleOraDb11g-_home1CMan - Concentrador e multiplexer de conexesOracleOraDb11g_home1TNSListener - Listener para acesso de clientes de redeOracleServiceFATEB - Instncia Oracle para o banco FATEB

    ** Para funcionamento da instncia basta apenas os 2 ltimos servios estarem ativos **

    Shutdown/startup manual ou ambiente UnixAprendemos no item anterior como fazer um start/stop da instncia Oracle no ambiente

    Windows utilizando o gerenciamento de servios do prprio Windows.Existem situaes onde devemos efetuar o startup/stop do banco de forma manual, ou seja

    faz-lo passo a passo.Tanto no ambiente Unix como no Windows utilizamos a seqncia abaixo:

    1.) Abrimos uma tela de terminal / console

    2.) Indicamos ao Oracle qual a instancia que desejamos trabalhar configurando a varivel deambiente ORACLE_SID

    C:\> SET ORACLE_SID=fatebOu$ export ORACLE_SID=fateb

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    40/129

    3.) Chamamos a ferramenta SQL-PLUS sem efetuarmos logon

    Sqlplus /nolog

    4.) Agora conectamos no banco de dados utilizando uma conta com poder administrativo deSYSDBA.

    SQL> connect system/fateb as sysdba

    5.) Uma vez conectados efetuamos o comando para tirarmos efetivamente a base de dadosSQL> shutdown immediateSQL> exit

    6.) No passo 5 tiramos a instncia do ar mas no o listener. Para tirarmos o listener do arefetuamos o comando abaixo:C:\> lsnrctl stop

    Para efetuarmos o processo inverso, ou seja, colocarmos instncia no ar:

    a.) Colocando o listener no arC:\> lsnrctl start

    Ou$ lsnrctl start

    b.) Colocar a instncia no arC:\> set ORACLE_SID=fatebOuexport ORACLE_SID=fateb

    sqlplus /nologSQL> connect system/fateb as sysdbaSQL> startupSQL> exit

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    41/129

    Parando e reiniciando o listener

    Subindo novamente a Instncia

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    42/129

    4.) Configurando a Camada de RedeEntendendo a Configurao de Rede

    O conceito para rede no banco de dados Oracle bem simples, ele trabalhasempre no modelo 2-Tier, ou seja client-server.

    Mesmo que tenhamos sistemas desenvolvidos em n-tiers, para o banco oacesso sempre ser considerado como vindo de um cliente, sendo que este clientepode ser uma pessoa, um sistema, um servidor de aplicaes, etc.

    Basicamente temos a seguinte configurao:

    No servidor:

    Como o nome diz, ele tem a funo de servir os clientes com informaes.Para isto o mesmo utiliza um processo chamado listener (escutador), o mesmo

    fica escutando as solicitaes na rede para estabelecer conexes entre o servidor e ocliente que esta solicitando informaes.

    No cliente:

    O cliente esta buscando o acesso as informaes disponveis no servidor.

    Para isto ele utiliza o protocolo de comunicao da Oracle chamado de TNS(Transparent Network Service), atravs deste protocolo ele conversa com o listener doOracle buscando acesso para estabelecer uma comunicao com o servidor.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    43/129

    Quando a comunicao estabelecida:

    O Servidor Oracle dependendo da configurao de comunicao com o cliente(shared/dedicated) cria uma rea de memria exclusiva e um processo para gerenciara conexo estabelecida entre o servidor e o cliente, liberando o listener para escutar

    novas solicitaes.Quando a comunicao estabelecida o cliente pode gerar e obter informaes

    do servidor.

    Modos de criao de Processos cliente/Servidor

    Como citamos o servidor Oracle cria processos exclusivos para cada conexoefetuada ao servidor. Para isto ele trabalha com dois tipos de processos:

    DEDICATEDCada conexo ao servidor recebe um processo dedicado, ou seja, ele ter um

    programa prprio de comunicao, uma porta nica TCP, uma regio de memriaexclusiva.

    Utilizamos este tipo de processo quando temos poucas conexes simultneas aobanco de dados, ou conexes gerenciadas por um pool de algum application Server.

    Este tipo de processo utiliza uma memria que chamamos PGA (Process Global Area)

    SHAREDPara evitar problemas com consumo excessivo de memria, e poder aumentar

    significativamente o nmero de usurios simultneos que acessam uma base Oracle, a

    Oracle criou o conceito de conexes shared.As conexes shared, possuem processos prprios, portas de comunicao TCP,

    prprias, porm a rea de memria utilizada compartilhada e faz parte da regio dememria da SGA (System Global Area).

    Tipos de clientes e programas de acesso:

    Como citamos a comunicao entre o cliente e o servidor Oracle feita atravs de umprotocolo chamado TNS.

    Este protocolo pode ser encontrado em:

    Software e programas clientes da OracleAcesso Nativo da Oracle para compilao com sistemas C, C++, VB, Delphi, etc.

    Camada de comunicao de banco de dados do Java / .Net

    Tipos de protocolos de rede aceitados

    O servidor Oracle alm de trabalhar com a camada bsica de comunicao atravs doprotocolo TCP, tambm pode aceitar os protocolos abaixo:

    TCP - Protocolo padro de comunicaoTCPS - TCP com dados encriptadosNMP - Named Pipes

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    44/129

    Ferramentas para a Configurao de Rede

    Para efetuarmos as configuraes de rede, temos de efetuar configuraestanto em nvel de servidor como nos clientes que iro acessar nosso servidor.

    Para configurarmos tanto o servidor como o cliente a Oracle utiliza aferramenta chamada NETCA (Assistente de Configurao de Rede).

    A ferramenta NETCA nos permite efetuar 4 tipos de configuraes:

    Configurao de ListenerConfigurao de Mtodos de Nomeao

    Configurao do Nome de Servio de Rede Local

    Configurao do Uso de Diretrios

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    45/129

    - Configurao de Listener (servidor)A configurao do listener responsvel por configurar o sistema de

    comunicao de rede do servidor, para que o mesmo possa ser acessado por clientes.

    - Configurao dos mtodos de Nomeao (cliente)

    Os mtodos de nomeao informam como ser a forma de identificar oservidor pela rede. Ou seja, informa como os clientes convertem um nome para o ip doservidor.

    - Configurao do Nome de Servio de Rede Local (cliente)Este item configura as informaes das instncias Oracle criadas em servidores,

    para que os processos clientes possam ter acesso.Tambm chamamos a configurao deste item de configurao do TNS ou do

    DSN de acesso.

    - Configurao do uso de diretriosUtilizado quando a infra-estrutura de servidores utiliza servidores de diretrio

    LDAP para gerenciar as configuraes de servidor de banco de dados.

    Visualizando e alterando a Configurao do LISTENER

    1.) Iniciamos no servidor a aplicao NETCA, via menu do Oracle chamando oatalho

    2.) Escolhemos a opo de configurao do Listener

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    46/129

    3.) Nesta prxima tela temos a opo adicionar, reconfigurar, deletar e atrenomear um listener

    4.) Quando fizemos a instalao da instncia pela instalao do softwareautomaticamente foi criado o listener padro chamado LISTENER.

    5.) Ento podemos visualiz-lo, alter-lo ou at exclu-lo. Vamos optar por sabercomo ele esta configurado

    6.) Apesar de escolhermos a opo de reconfigurar, vamos apenas ver asconfiguraes.

    7.) Como s temos um listener ativado. S aparecer 1 na lista.NOTA: Em que situaes criaramos mais de um listener ?

    Como citamos o listener o responsvel na rede por estabelecer ascomunicaes entre clientes e servidores Oracle.Em algumas situaes podemos ter servidores com diversas placas de rede,

    uma para sada web e outra para rede interna. Neste caso necessitaramos de 2listeners.

    Outra situao quando necessitamos ter acesso ao Oracle por portas diferentesda padro.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    47/129

    8.) Quando escolhemos a opo de reconfigurar o Oracle entende que voc querfazer alguma alterao e para isto alerta que o Listener esta ativo e o mesmo apartir deste ponto ser desativado, para ser reconfigurado.

    NOTA: Quando voc desativa o listener, nenhuma nova conexo de rede poder serefetuada, porm as conexes j estabelecidas so mantidas.

    9.) Vamos escolher sim10.) Vemos que o nosso listener de nome LISTENER, recebe solicitaes

    apenas pela porta TCP.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    48/129

    11.) Outra informao importante que o mesmo s recebe solicitaespela porta default a 1521

    12.) Pronto terminamos de configur-lo e vamos informar que noqueremos efetuar nenhuma nova alterao

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    49/129

    Bom fizemos a configurao mais simples e trivial utilizando a ferramenta deconfigurao de redes da Oracle.

    Porm se quisermos visualizar a configurao e termos poder para configurar o

    listener de formas mais complexas e personalizadas, teremos de editar o arquivo deconfigurao manualmente.

    a.) O arquivo de configurao esta localizado no diretrio$ORACLE_HOME/network/admin e chama-se listener.ora

    Veja o contedo abaixo do listener.ora

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    50/129

    # tnsnames.ora Network Configuration File:c:\oracle\product\11.1.0\db_1\network\admin\tnsnames.ora# Generated by Oracle configuration tools.

    ORACLR_CONNECTION_DATA =(DESCRIPTION =

    (ADDRESS_LIST =(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))

    )(CONNECT_DATA =

    (SID = CLRExtProc)(PRESENTATION = RO)

    ))

    Nota esta configurao acima do LISTENER dinmica, ou seja automaticamentesempre que subirmos a instncia, ou criarmos uma nova a mesma automaticamenteser publicada no LISTENER.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    51/129

    Starting and Shutting Down do LISTENER

    J comentamos sobre este assunto no captulo 3, no tpicoSHUTDOWN/STARTUP DE INSTNCIAS ORACLE.

    Para recordarmos podemos parar e reiniciar o servio, via gerenciador deservios do Windows, ou via o comando lsnrctl.

    Por que motivo temos de parar o listener ?- Para manutenes na configurao- Quando queremos bloquear novas conexes via rede

    Configurando Estaes Clientes

    Este processo muito parecido com a instalao do servidor.

    Quando voc necessita ter o client do Oracle Instalado ?

    Quando voc necessita que seu usurio acesse diretamente as informaescontidas nos bancos de dados, efetuando o que chamamos de querys SQL.

    Quando voc tem programas que no possuem acesso nativo ao Oracle edependem de drivers de conexo como ODBC, OLE, PRO-C, PRO-COBOL e PRO-Fortran

    Quando voc quer ter ferramentas de pesquisa e administrao do servidorinstaladas em sua estao cliente.

    Quando queremos extrair ou incluir e mesclar informaes com outros bancosde dados como SQL-Server, Access e at Excel.

    Em caso de servidores de Aplicao / COM e DCOM

    Quando voc no necessita ter o client do Oracle Instalado ?

    Quando seu programa de acesso for a Java / .Net e tiver utilizando a API internada linguagem para acessar o servidor

    Quando seu acesso ao dado seja atravs de um servio WEB

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    52/129

    PROCESSO DE INSTALAO NOS COMPUTADORES CLIENTES

    No nosso caso hoje os computadores clientes so os computadores dos alunos.Vamos fazer um passo a passo juntos para instalarmos o cliente e acessarmos

    os dados do nosso servidor.

    Segue informaes de conexo do servidor:

    Hostname: NCOLCHESQUISid: FATEBPort: 1521

    Veja o passo a passo abaixo:

    1.) Vamos acionar o programa de instalao de clientes que esta na pastac:\soft\oracle_cliente no seu computador

    2.) Esta a tela inicial do instalador

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    53/129

    3.) Clique em prximo e escolha o tipo de instalao que deseja.

    4.)Selecionei como minha instalao a console do Administrador5.)

    Selecione o local onde ser instalado o cliente

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    54/129

    Tela de pr-requisitos

    Clique em instalar e aguarde o trmino da instalao

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    55/129

    Aps o termino da instalao o Oracle automaticamente ir solicitar asinformaes de servidor, IP, Porta e instncia para criar a comunicaoentre o cliente e o servidor. (acionamento do NETCAopcional)

    5.) Overview do Oracle Enterprise Manager

    Introduo do Oracle Enterprise Manager

    O Oracle Enterprise Manager ou OEM como iremos apresent-lo daqui parafrente em nossos textos desta apostila.

    O OEM a principal ferramenta de administrao e monitorao feita pelaOracle para gerenciamento dos seus bancos de dados.

    At a verso Oracle 10g, existe uma verso em Java standalone, mas estaverso s trata de itens de administrao. Os itens de monitorao eram separados emferramentas distintas.

    A partir da verso 10g surgiu tambm uma verso em formato WEB, quecontemplava itens como monitorao de ambiente, thresoulds, alarmes e incluaferramentas de gerenciamento de backup e auditoria.

    Tambm na verso 10g surgiu o monitorador centralizado de ambienteschamado Oracle Grid Control, que alm de banco de dados monitorava itens como:

    - Sistema Operacional- Servidores de Aplicao- Servidores de Web- Oracle Applications Services e outros

    Com a verso 11g novas funcionalidades vem sendo adicionadas, comomelhorias no esquema de controle de backups e Jobs.

    Iremos neste treinamento nos basear na verso 11g da OEM.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    56/129

    Acessando o Oracle Enterprise Manager

    Para acessar o OEM acesse o link https://ncolchesqui:1158/emou o item DATABASE

    CONTROLFATEB pelo servidor.

    Clique em Continuar no site se voc estiver utilizando o IE8.Dever aparecer a tela abaixo

    No campo usurio SYSTEMsenha FATEB, conectar como normal.

    IMPORTANTE: Lembro a todos que estamos em um ambiente compartilhado e aconta SYSTEM a conta mster do ORACLE, portanto mximo de cuidado para nocausar desastres e prejudicar seu colega.Contamos com sua colaborao.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    57/129

    Veja a tela aps a conexo:

    VAMOS NAVEGAR UM POUCO NA FERRAMENTA E CONHECERMOS MELHOR

    Nos primeiros links no canto superior direito, temos:- Configurar - Efetuar configuraes do OEM

    - Preferncias- Configurar preferncias de notificao de alertas-Ajuda - Help da ferramenta- Logoff - Sair e encerrar a conexo do OEM

    No link abaixo chamadoBanco de Dados, sempre nos retornar a tela inicial a HOME

    Nos links de grupo temos os seguintes assuntos:Home - Pagina inicial de abertura com resumo do ambienteDesempenho - Grficos que mostram como esta a performance

    Disponibilidade - Configurao de backup e recoverServidor - Administrao do banco de dados OracleEsquema - Administrao dos objetos do Banco OracleMov. De dados - Processo de transferncia de dados entre ambientesSoftware e suporte - Configurao e Ger. do software OEM e Oracle

    No decorrer do treinamento iremos conhecer cada uma destas abas eestudar as principais para administrao do ambiente. Devido aonosso tempo escasso, nos iremos ater a temas principais, deixando

    certas opes e/ou configuraes no cobertas neste treinamento.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    58/129

    6.) Gerenciando as Estruturas de Armazenamento

    Estruturas de Armazenamento do Banco de Dados

    Reviso:No captulo 2 no passo 12 do processo de instalao do Oracle conhecemos e

    falamos brevemente do que era uma tablespace e quais as principais utilizadas peloOracle.

    No captulo 3 Overview de uma instncia Oracle nos aprofundamos de comofisicamente o Oracle trabalha e utiliza seus arquivos.

    Neste capitulo revisaremos estes itens verificando como visualiz-los eadministr-los pela ferramenta Oracle Enterprise Manager.

    Podemos separar a estrutura de armazenamento do Oracle de duas formas:- Armazenamento Fsico- Armazenamento lgico

    Armazenamento Fsico

    So todos os arquivos utilizados pela instncia Oracle e que ficam fisicamentearmazenados em disco.

    Em algumas instalaes de ambiente Oracle como a RAC (Real ApplicationCluster) poderemos visualizar no mais arquivos mais sim disco fsicos destinadosdiretamente a instncia de dados, neste caso no h formatao de SO no disco, pois omesmo ser o que chamamos de raw-device (disco cru).

    Vamos revisar o capitulo 3 e verificar se ficou alguma dvida.

    Armazenamento Lgico - Tablespaces

    Quando falamos em armazenamento lgico em Oracle estamos nos referindo aTABLESPACES, ou seja tudo que utilizamos, tabelas que criamos, dados quearmazenamos ficaro contidos em alguma tablespace.

    No capitulo 2 falamos sobre as principais tablespaces do Oracle, vamos revisaragora.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    59/129

    Acesso o menu servidor

    Acesse o link tablespaces e veja como esto as tablespaces padro

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    60/129

    Como pudemos observar nossas tablespaces bsicas foram criadas no momento dainstalao da instncia FATEB.

    As instncias bsicas tem cada uma sua funcionalidade:

    SYSAUX - contm objetos do Oracle para opcionais que decidimos instalarSYSTEM - Contm os objetos bsicos da instncia Oracle (catalogo)TEMP - Objetos temporrios (joins, sorts, rebuilds, etc.)UNDOTBS1 - Tablespace do desfazer erros rollbackUSERS - Tablespace de armazenamento padro para usurios

    Executando Tarefas Comuns de Armazenamento do Banco de Dados

    Uma das funes do DBA gerenciar da melhor forma possvel a administrao doespao existente para o armazenamento das informaes que ficaro residentes nobanco de dados.

    No existe uma regra especifica de como o DBA deve administrar o banco de dados, oque existe so boas prticas e sugestes fornecidas pela Oracle para facilitar estaatividade.

    Para que o DBA possa definir qual ser a estrutura fsica/lgica de um banco de dados

    necessrio estar em um projeto em que foi citado ou mencionado qual seria autilidade do banco de dados. (ou pelo menos ter idia de um)

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    61/129

    Dentro desta regra podemos citar as seguintes atuaes:

    a.) Definir a estrutura fsica do banco de dadosA definio fsica basicamente serve para definir onde estaro localizados fisicamente

    os arquivos do banco de dados.

    As boas praticas dizem por questes de performance dizem:

    1.) Regra- Separe em discos/controladoras diferentes os seguintes tipos:

    Dados, ndices, Temporrios, Undo, Redo, SoftwareOu seja teremos agora 6 separaes

    2.) Regra

    - Separe em discos/controladoras diferentes- Separe suas tablespaces de dados e ndices por sistemas / necessidades de

    negcio e coloque-as em discos diferentes.

    3.) Regra- Separe em discos/controladoras diferentes

    - Objetos dentro do sistema com alta utilizao e que sejam concorrentes entresi.

    Como disse antes as regras de boa pratica no so obrigatrias, so dicas de comopodemos otimizar a performance de nosso ambiente.

    O fato que se pegssemos as 3 regras juntos com um banco que contenha 3 sistemasde negcio administrado poderamos ter no mnimo 12 discos/controladorasdisponveis.

    Normalmente isto nunca existe. Mesmo em um ambiente de uma grande empresa.

    Cabe ento ao DBA na fase inicial do projeto utilizar o bom senso, tentando ao mximobalancear as cargas de I/O entre os discos/controladoras disponveis.

    A atividade do DBA monitorar a utilizao de espao e concorrncia de I/O, mudandoparmetros e localizao de arquivos para que o banco administrado sempre tenha amelhor performance e a melhor utilizao do espao em disco.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    62/129

    b.)Definir a estrutura lgica do banco de dadosDefinir a estrutura lgica nada mais do que definirmos quais sero as tablespacesque utilizaremos em nosso banco de dados.

    Toda tablespace ter sempre um datafile ou mais a ela atrelado e este exclusivodesta mesma tablespace.

    Para definirmos a tablespace utilizaremos as seguintes informaes:- Nome da TablespaceTamanho da tablespaceBlocagemtamanho do bloco de dadosLocalizao dos datafiles.

    Para fixar nosso exemplo criaremos as seguintes tablespaces

    - TS_FATEB_ADMIN_TB - Contm tabelas da administrao da faculdadeTam. 50Mb

    - TS_FATEB_ADMIN_IX - ndice das tabelas de administraoTam 5 Mb

    - TS_FATEB_DOCENCIA_TB - Tabelas referentes aos cursos, notas, alunos, profes.Tam.: 100 Mb

    - TS_FATEB_DOCENCIA_IX - ndicesTam. 5 Mb.

    - TS_TREINA_01 - Tablespace para o aluno 01 do treinamento

    Clique no boto criar para criar novas tablespaces

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    63/129

    Nesta tela perguntado informaes sobre o tipo de tablespace que se esta desejandocriar.

    No nosso caso explicaremos cada item mas manteremos o que esta definido porpadro.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    64/129

    Comando gerado quando efetuamos a criao de uma tablespace.

    - Gerenciar e acompanhar o crescimento dos dados

    Uma das principais atividades do DBA manter o ambiente ativo e seguro.Para tanto importante que haja uma monitorao sobre o ambiente e nosso

    caso o banco de dados.Um dos fatores que costumam a ter problemas e o gerenciamento do espao

    utilizado.O DBA pode com acompanhamento e informaes recebidas planejar como

    ser o crescimento de sua base de dados administrada, planejando com antecednciacomo resolver os problemas de espao em disco.

    - Ajustando a base de dados- Solicitando aquisio de mais discos

    Com a ferramenta Enterprise Manager podemos monitorar o crescimento de nossastablespaces e tambm gerar alertas e aes para nveis que entendamos como critico.

    Poderamos configurar no Enterprise Manager para que nos envie email quando umdeterminado threshould fosse atingido.

    Veja abaixo as telas de monitorao de tablespace e de configurao de alertas.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    65/129

    Gerenciando as Estruturas de Undo do Banco de Dados

    Efetuando Mudanas nas Estruturas de Armazenamento do Banco de Dados

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    66/129

    7.) Administrando Usurios e Privilgios Overview de Usurios e Privilgios

    USUARIOS

    Como o acesso a dados criados no banco de dados Oracle controlado e temde ser seguro para garantir integridade da informao, faz necessrio que o SGBD

    garanta que s os usurios autorizados tenham o acesso necessrio para utilizar ainformao.

    Para conseguir isto o banco faz o uso do recurso de controle de usurios e seusprivilgios. Tendo diversas formas de manter os usurios, a forma de autenticao dosusurios e a restrio e/ou liberao do acesso.

    Um usurio no Oracle pode ser um usurio comum ou o que chamamos deOwner, o owner proprietrio de objetos dentro do banco de dados e podecompartilhar seus objetos com outros usurios.

    O usurio do banco de dados pode ser ou no um usurio existente no sistemaoperacional /domnio, para isto chamamos este usurio de usurio local ou usurio de

    rede.

    PRIVILGIOS

    Os privilgios so os tipos de acessos que concedemos aos usurios paraacessarem determinado objeto dentro do banco de dados.

    Com os privilgios podemos garantir que o usurio s tenha o acessonecessrio para que exera suas atividades.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    67/129

    Administrando Roles

    1. Entendendo o conceito de roles

    Roles (traduo papeis ou atribuies), um recurso do banco de dados Oracleque permite agrupar diversos privilgios em um nico grupo.

    Este agrupamento facilita em muito a administrao de segurana de banco dedados pois permite ao DBA ou gestor de segurana criar perfis de acesso de acordocom regras e necessidades do negcio ou empresa.

    Se no tivssemos as roles teramos que conceder os privilgios 1 a 1 para cadausurio que crissemos no banco de dados.Veja o problema abaixo que seria executado sem a role:Seu banco possui 100 usurios e cada um possui cerca de 100 privilgios, ou

    seja foi feito ento 10000 grants.Se utilizarmos o conceito de roles os 100 privilgios podem virar 1, e cada

    usurio ento ter acesso a apenas uma role. Com isto reduzimos para 100 grants deusurio.

    Uma das grandes vantagens da role que qualquer alterao nos direitos eprivilgios concedidos ao papel, automaticamente afetar todos os usurios a esteassociado.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    68/129

    2. Criando e administrando roles

    Para acessar a tela acima de criao de roles, abrimos o Oracle EnterpriseManager, nos conectamos, selecionamos a opo servidor e depois a opoAtribuies.

    Esta tela permite gerenciar as roles que possumos e criar novas.A administrao permitira a voc adicionar ou retirar privilgios de uma role.

    As telas de edio e criao de objetos no Oracle Enterprise Manager seguemum formato padro, portanto entendendo o funcionamento de uma todas as outrassero parecidas.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    69/129

    Segue abaixo a tela para a criao de uma role

    Para criarmos uma role necessitamos basicamente informar o nome da nova role,neste caso estamos criando uma role chamada RL_FATEB.

    As outras opes permitem neste momento j adicionarmos os privilgios que nossarole ter.

    Como exemplo iremos criar a role RL_FATEB com direito de conexo e apenas deleitura em todos os objetos do banco de dados. Para isto concedermos :

    A role CONNECT e SELECT_CATALOG_ROLEO privilegio de sistema SELECTY ANY TABLE

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    70/129

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    71/129

    Com os passos acima criamos uma role que permite quem a possu-la ter acesso aobanco de dados, com acesso total de leitura e inclusive no catalogo do banco dedados.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    72/129

    3. Associar a role criada ao usurio

    Uma role criada que no esta associada a ningum ou a nenhuma outra role, no tem

    funo nenhuma.Precisamos associ-la neste exemplo ao nosso usurio. Para isto iremos entrar na telade administrao de usurios, escolher um usurio e conceder a atribuio da role.

    Veja os passos abaixo:

    Escolhemos a opo Servidor e dentro de servidor a opo de usurio.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    73/129

    Escolhi o usurio EMERSON_COLCHESQUI e vou conceder o direito a role que criamos.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    74/129

    Escolha a opo Editar para editar o usurio e alterar suas informaes

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    75/129

    Administrando Profiles

    Os profiles nos permite criar regras de segurana e utilizao para os usurio,as regras que podemos trabalhar com profiles :

    - Restries de controle de senha (expirao, bloqueios)- Limitao de recursos (CPU, Mem e I/O)- Limitao de sesses concorrentes- Tempo de conexo / Inatividade

    As restries de recursos que criamos em perfis, para funcionarem necessrio que oparmetro resource_limit esteja setado como true para o banco de dados. Casocontrario o banco no controlar as restries.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    76/129

    Vamos criar um perfil chamado P_FATEB, que restringira o nmero de conexessimultneas em 2 e demais itens ficaro como default (unlimited)l.

    Agora assim como fizemos com a role, devemos escolher os usurios que faro partedeste perfil de usurio.

    Vamos deixar isto para falarmos no prximo item.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    77/129

    Administrando Usurios

    A administrao dos usurios constitui nas atividades de:- Criao de novos usurios- Administrao de acessos de usurios existentes- Bloqueio/desbloqueio de contas- Reset de senhas

    Entre outras atividades na administrao de usurios.

    No item de Administrao de roles adiantamos um pouco o item de alterao eadministrao de usurios.

    Vamos criar dois usurios para cada aluno neste treinamento:- ALUNO_XXX - Usurio com papel de consulta e perfil restrito- ADM_ALUNO_XXX - Usurio DBA de banco de dados.

    Senha ser FATEB.

    Veja o exemplo abaixo e tente fazer voc mesmo:

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    78/129

    Deixe apenas a role RL_FATEB

    Pronto criamos o usurios.

    Como pode ver no demos o acesso diretamente ao usurio e sim atravs da roleRL_FATEB e restringimos o nosso novo usurio atravs do perfil P_FATEB.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    79/129

    As outras opes existentes na administrao de usurios so:- GERAL - Defini os dados bsicos de um usurio

    - Altera senha de usurio (reset)- Altera e gerencia as tablespaces default do usurio

    - ATRIBUIES - Define as roles que o usurio tem acesso- Privilgios do Sistema

    - Assim como o nome diz voc concede direitos especficos doOracle diretamente ao usurio.

    - Privilgios de Objetos- Nesta aba podemos conceder diretamente ao usurio acessos aobjetos (tabelas, views, programas, etc.) diretamente ao usurio.

    - COTASAs tablespaces que definimos na criao de usurio como defaulttablespace, gera apenas um apontamento de onde sero criados

    os objetos do usurio caso o mesmo no passe o nome datablespace.Isto no quer dizer que o usurio tem acesso de gravao natablespace default.Para que isto seja feito necessrio que o mesmo tenha cotas deespao definidas.Podemos dar cotas ao usurio tambm em outras tablespacesalm da tablespace default.

    Um usurio no poder gravar mais do que sua cota de espao

    permite. (limitado ao tamanho da tablespace)-Grupo de consumidores

    Se for configurado o grupo de consumidores no banco de dados,restries permitem que a utilizao de CPU sejam restritas.A configurao de grupo de consumidores permite definirpriorizao de utilizao do uso da CPU.

    - Usurios de ProxyMascaramento de usurios e utilizao de usurios como sefosse outro.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    80/129

    Veja agora criamos os nossos usurios.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    81/129

    8.) Gerenciando ObjetosOverview dos Objetos de Banco de Dados

    Aprendemos at o momento muito sobre a estrutura fsica do banco de dadosOracle, agora chegou a hora de explorarmos o funcionamento do gerenciamentolgico do banco de dados Oracle.

    Aprendemos que fisicamente o Oracle aparece para o sistema operacionalcomo um conjunto de arquivos e processos que ficam executando em memria.

    Quando entramos no conceito lgico falamos sobre as tablespaces e que elasseriam utilizadas para armazenar todos os objetos que crissemos dentro do nosso

    banco de dados.

    O Banco de Dados Oracle possui diversos tipos de objetos vamos conhecer osprincipais agora:

    TABELAS

    Objeto dentro do banco de dados que utilizado para armazenar asinformaes (dados). Este objeto estar sempre localizado em uma tablespace.

    INDICES

    So objetos que servem para agilizar e facilitar a pesquisa de um dado em umadeterminada tabela.

    VIEWS

    Como o nome cita so vises, que servem para mascarar, esconder, juntar, etc.,

    informaes contidas dentro das tabelas.

    PROCEDURES

    So blocos de comandos/programa desenvolvidos na linguagem PL/SQL.

    FUNCIONS

    Tambm so blocos de comandos, porm permitem retornar um valor comoresultado de sua execuo. E podem ser utilizadas em querys.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    82/129

    PACKAGES

    Pacotes, so bibliotecas de procedures e functions agrupadas em um nicomodulo chamado package. A vantagem da package a possibilidade de

    ocultao de programas com utilizao de public/private.

    TRIGGERS

    Tambm so blocos de comandos, porm os mesmos no podem serdisparados pelo usurio. O mesmo s pode ser disparado num eventoprogramado.

    SEQUENCES

    Funciona basicamente como um seqenciador, ou seja seria como uma tabelade uma nica linha e coluna, que contm apenas um valor, uma seqncianumrica, que cada vez acessada retorna um novo valor.

    Em sistemas que utilizem o conceito de id nico gerado automaticamente extremamente recomendado a utilizao de sequences, para evitar problemascomo Dead Locks.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    83/129

    Conceito de OWNERS

    Antes de iniciarmos a explicao de cada um dos itens acima importantesabermos que todos os objetos criados em um banco de dados sempre

    pertencero a um dono (que chamamos de OWNER).

    Tendo em mos a informao acima devemos decidir como o nosso banco dedados ira armazenar as informaes.

    Um exemplo para entendermos melhor:Vamos supor que estamos desenvolvendo um sistema para a faculdade e por

    isto criamos o nosso banco com o nome de FATEB.

    O banco FATEB conter 3 sistemas:

    - ADMINISTRATIVOResponsvel pela rea de administrao da faculdade

    - EDUCACIONALResponsvel pelo controle dos itens relacionados a atividadeseducacionais da faculdade. (Provas, Alunos, Notas, Matrias,etc.)

    - FINANCEIROResponsvel pelas atividades do departamento financeiro

    Como faremos ento para preparamos o nosso ambiente:

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    84/129

    1.) Criar as tablespaces que armazenaro as informaes dos sistemas

    TBSP_ADMIN_TB - 30 MbTBSP_ADMIN_IX - 2 MbTBSP_EDUCA_TB - 50 Mb

    TBSP_EDUCA_IX - 5 MbTBSP_FINANC_TB - 30 MBTBSP_FINANC_IX - 3 MB

    Para criarmos as tablespaces vamos revisar as aulas anteriores.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    85/129

    2.) Criar os OWNERS para cada sistema

    OWN_ADMINOWN_EDUCA

    OWN_FINANC

    As contas OWN sero associadas as tablespaces que criamos tendo comotalbespace default as tablespaces com final TB.

    As constas OWN so responsveis por conter os objetos necessrios para ofuncionamento do sistema especifico. Esta conta em ambiente de produo deve serde responsabilidade do DBA. (Sugesto de segurana).

    Os sistemas especficos devero utilizar o usurio e senha cadastrados no

    banco de dados para acesso aos respectivos sistemas. Ou trabalhar com sistema deconta nica. (Isto depender de como o sistema criado).

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    86/129

    Gerenciando Tabelas

    Como citamos anteriormente tabelas so objetos utilizados pelo banco de

    dados para armazenar informaes.Toda tabela sempre pertencer a um nico owner e estar contida dentro de

    uma nica tablespace.Somente o Owner ou o DBA do banco de dados poder conceder direitos sobre

    uma determinada tabela a um usurio ou role.

    Os dados armazenados em uma tabela utilizam o formato bidimensional, ouseja, so armazenados em linhas X colunas.

    As colunas contm os campos e tipos de informaes armazenadas.As linhas contero os registros.

    Exemplo: Tabela OW_EDUCA.ALUNOID NOME CURSO1 Joo Sistemas de Informao2 Maria Sistemas da Informao

    Como citamos as tabelas so armazenadas em uma tablespace no banco dedados Oracle e portanto consomem espao em disco.

    O espao mnimo ocupado por uma tabela 1 bloco de dados da tablespaceO espao mximo o disponvel livre na tablespace.

    Quando criamos uma tabela definimos sua volumetria, ou seja seu tamanhoinicial, e metas de crescimento a cada novo extent (extenso).

    Uma quantidade grande de extents, geram o problema que chamamos defragmentao de dados e para corrigir o problema necessrio um processo quechamamos de reorg.

    O processo de reorg ir criar a nova tabela com uma fragmentao menoracertando para isto seu tamanho de volumetria e blocagem.

    Em Oracle podemos ter tabelas dos seguintes tipos:- Tabelas normais- Tabelas particionadas- Tabelas subparticionadas.- Tabelas com organizao por ndice- Tabelas externas.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    87/129

    Vamos conhecer a tela de gerenciamento de tabelas do Oracle Enterprise Manager.

    1.) Acessamos o link Banco de Dados ou Instncia Fateb, para retornarmos a telaprincipal

    2.) Clicamos no link Esquema para termos acesso aos gerenciadores de objetos

    3.) Agora clicamos no link tabelas

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    88/129

    4.) Por padro ele traz a tela com o usurio que fizemos login.Como ainda no criamos nenhuma tabela para os nossos novos owners, vamosVamos criar uma tabela em nossa conta de conexo e depois criaremos nosowners especficos.

    Clique no boto criar

    Definiremos que ser uma tabela padro

    Criaremos uma tabela com um nome de teste e o owner ser o nosso usurio de login

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    89/129

    Na tela de criao de tabelas temos as seguintes opes:

    Geral -Tela de Definio bsica da TabelaRestries - Tela de cadastramento de restries/regrasArmazenamento - Tela onde definimos a volumetria da tabela

    Opes -Opcionais de TabelasParties -Define formas de particionamento de tabelas

    No nosso exemplo criamos apenas uma tabela simples para v-la na listagem detabelas.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    90/129

    Com a tabela criada podemos testar editar a tabela, criando novos campos,restries, adicionando parties, Etc.

    Vamos ver como seria a tela de excluso de tabelas

    Primeiro selecione qual a tabela deseja excluir e clique no botodeletar com opes

    Esta tela permite que voc escolha se quer:- deletar o contedo da tabela (delete)- Excluir a tabela (drop)- zerar o contedo da tabela (truncate)

    Vamos escolher o drop excluindo definitivamente a tabela.Se observarmos agora no temos mais nenhuma tabela novamente em nossa lista.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    91/129

    Recuperando objetos Apagados

    A Oracle a partir da verso 10g criou o conceito de lixeira que permite recuperarrapidamente objetos apagados.

    OBS: Este recurso limita os objetos no tempo e tamanho pela rea que

    definimos como flash_back_area.

    Digamos que em nosso caso exclumos erroneamente a tabela e desejamos recuper-la.Na tela de listagem de tabelas clique no boto lixeira.

    Nesta tela visualizamos os objetos que apagamos e podemos recuper-los.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    92/129

    Selecione as tabelas que deseja e clique no boto Eliminao de Flashback

    Ser questionado se voc deseja alterar o nome da tabela, clique agora em prximo edepois em submeter e depois ok.

    Veja a tela com as tabelas recuperada

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    93/129

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    94/129

    Gerenciando ndices

    Como citamos anteriormente a funo do ndice melhorar e agilizar a

    pesquisa ao dado em uma determinada tabela.No existe acesso de usurio a ndice diretamente, quem faz a utilizao domesmo o otimizador de acessos do Oracle. Ou seja no so possveisconsultas/queries em ndices.

    No exemplo anterior criamos uma tabela que possua um campo definido comochave primria (PK), quando o banco efetua esta restrio ele automaticamente geraum ndice nas colunas da chave primria.

    Existem dois tipos de ndices em Oracle:- ndices Normais - conhecidos com b-tree ndex- ndices bitmaps - utilizados em pesquisas de baixa granularidade

    Para ambos os ndices acima podemos ter:- ndices nicos - No permitem repetio do dado- ndices no nicos - Permitem repetio do dado

    Os ndices ainda podem ser:- ndices Simples - ndice referenciando apenas uma coluna- ndices compostos - ndices contendo mais de uma coluna

    Assim como em um livro ou documento o ndice nos auxilia a encontrar o captulo ou ainformao que desejamos de forma rpida. Esta sua funcionalidade na tabela.

    Exemplo de conceito:Imagine a seguinte situao voc possui uma tabela de clientes com 1 milho declientes.

    Nesta tabelas temos as colunas:ID_CLIENTE - PK

    NM_CLIENTECPF

    Como voc pode observar apenas a coluna ID_CLIENTE possui um ndice criado, pois amesma foi definida como chave primria.** Chave primaria: serve para identificar um registro de forma nica em um tabela.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    95/129

    1 Caso: Consulta por ID

    Se o usurio efetuar uma consulta nesta tabela por ID do cliente, a consultarretornar o dado praticamente instantaneamente.

    Isto ocorre porque o otimizador de consultas do Oracle verifica antes de

    efetuar a consulta se existem ndices que possam atender a esta consulta.Como neste caso temos um ndice pela coluna ID o Oracle busca no ndice a

    informao deseja e localiza diretamente o bloco e a linha dentro do bloco que contma informao solicitada.

    2 Caso: Consulta por CPFAgora digamos que o nosso usurio passe por necessidade a efetuar em seu

    banco de dados pesquisa na tabela de clientes por CPF.Seu retorno de dados demorar uma eternidade perto do que existia antes

    fazendo a consulta pelo ID.

    Ai o nosso querido usurio nos questiona o porque o banco esta lento.

    Ao capturarmos a consulta que o usurio esta efetuando e fizermos umaanalise (explain) sobre a mesma. Ser identificado que o problema esta em que cadalinha que o usurio esta consultando o banco esta efetuando uma varredura completana tabela para encontrar o dado do usurio.

    Isto o que chamamos de full-scan ou full table scan.Como o Oracle no tem um ndice por CPF ele no tem as informaes

    ordenadas, ele no sabe a granularidade da informao solicitada ento ele toma a

    deciso de efetuar a consulta completa na tabela.

    Para resolvermos o problema do nosso querido usurio/desenvolvedor quemudou sua query sem avisar a equipe de DBAs.

    Vamos ver como funciona a criao de novos ndices:

    Vamos

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    96/129

    UM INDICE NO A CHAVE MGICA PARA RESOLVER TODOSOS PROBLEMAS DO MUNDO.

    Como citamos anteriormente o ndice resolve problemas de pesquisa de dadosem tabelas, porm para tudo temos um custo.

    O ndice gera excelente performance para pesquisas, porm para atualizaesde dados ele gera um custo dobrado.

    Isto ocorre porque tanto a tabela quanto o ndice agora tero de seratualizados.

    Quanto mais ndices tivermos pior ser o nosso tempo de atualizao dosdados na tabela.

    Portanto utilize ndices com sabedoria evite ficar criando ndices debobeira.

    Vamos ver abaixo como criar um ndice na tabela de testes que criamos:

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    97/129

    Agora vamos achar as tabelas que criamos, clicamos no boto ir, para realizarmos apesquisa.

    Ele localizou que possumos um ndice com a tabela aluno e o ndice foi criadoautomaticamente na criao da PK da tabela.

    Vamos criar um ndice pela coluna CPF agora.

    Clique no boto criarpara criarmos um novo ndice.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    98/129

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    99/129

    Vamos criar uma view sobre nossa tabela aluno que mostre apenas o nome do alune eseu id.

    Selecionamos a opo modos de exibio (view)

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    100/129

    Pronto criamos a nossa viso restrita.Qualquer tipo de query pode ser utilizada para a criao de uma view, inclusive joinsentre tabelas.

    NOTA: Existe tambm o tipo chamada VIEW MATERIALIZADA, que na verdade umprocesso de extrao gerando uma tabela a cada x tempo, a partir de uma query que

    especificamos.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    101/129

    Gerenciando Programas

    O gerenciamento de programas permite que voc crie, edite, altere e apague

    programas PL/SQL existentes.Lembre-se que estes programas podem ser PROCEDURES, FUNCTIONS,

    PACKAGES e TRIGGERS.

    NOTA: At o momento citamos que o Oracle utiliza a linguagem PL/SQL paradesenvolvimento de programas, porm tambm podemos desenvolver blocosde programas utilizando a linguagem JAVA.

    A ferramenta Oracle Enterprise Manager no e muito tilno desenvolvimento

    de programas PL em Oracle, para isto a Oracle na verso 11g comprou a ferramentaSQL-Developer incluindo a mesma ao seu portflio de ferramenta.

    A ferramenta SQL-Developer pode ser instalada nas mquinas clientes dedesenvolvedores para que os mesmos possam desenvolver programas.

    Como esta uma ferramenta client e depende de um Server para funcionar,no existe custo de licenciamento sobre clients instalados.

    Como o foco do nosso curso no sobre desenvolvimento de programas noentraremos na ferramenta SQL-Developer.

    Na tela acima vemos que existe uma seo especifica para a especificao de

    programas.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    102/129

    Para nosso exemplo iremos criar uma pequena procedure sem fugir a regra Hello

    World

    1.) Selecione a tela de procedures

    Clique no boto criarpara criarmos a procedure.

    Para quem conhece programao a mesma muito parecida com a estrutura dopascal.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    103/129

    Veja abaixo o cdigo que geramos:

    Aps compilarmos nosso programa vemos que o mesmo esta com status valido. Ou seja o mesmo podeser executado.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    104/129

    9.) Backup e Restore do Banco de DadosOverview do Backup e Restore do Banco de Dados

    BACKUPPrimeiramente precisamos entender o porque devemos fazer um backup.O que um backup ? Um backup nada mais do que uma cpia de segurana

    que fazemos de nossos dados, de acordo com uma criticidade, periodicidade ereteno da informao.

    Definimos um backup porque pensamos que um dia poderemos ter a

    necessidade de retornarmos a informao gravada (restore), isto devido a umanecessidade de negcio, de regra jurdica, ou nos piores casos de falha ou perda denossa informao no banco de dados.

    No Oracle at a verso 8i tnhamos basicamente dois tipos de backup:- dump de objetos (export)- backup fsico (feito via scripts ou agentes)

    Na verso 9i surgiu a ferramenta RMAN, que fazia os mesmos backup, pormgerenciava tambm as informaes de reteno, permitia fazer backups incrementais

    fsicos e copiava apenas blocos gravados.

    A partir da verso 10g foi implementada na ferramenta Oracle EnterpriseManager o sistema RMAN, export e Backup Fsico, permitindo ao usurio criar suasrotinas de backup e automatiz-las.

    Se voc percebeu nas primeiras aulas j informamos ao banco que queramosum backup automtico.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    105/129

    Tipos de BACKUP

    Em Oracle definimos se desejamos primeiro ter backups com banco ONLINE ouOFFLINE.O banco de dados Oracle permite ter seus backups ativos, ou seja em modo online,podendo garantir assim 24x7x365 dias.

    A poltica de backup que utilizamos depende de fatores como:- volumetria do banco de dados- tipo de utilizao do banco de dados- utilizamos ferramentas externas ou o prprio Oracle- tempo que necessitamos esperar no processo de restore

    Vamos falar ento dos tipos de backups e onde so utilizados normalmente:

    1.) Backups DUMPBackups dumps so feitos com banco online.Backups dumps so utilizados normalmente para pequenos volumes.Dumps so muitos uteis em transferncia de dados entre bancos.Dumps em Oracle so feitos utilizando a ferramenta export.O Dump permite exportar dados entre verses de Oracle em SistemasOperacionais diferentes.O dump uma forma rpida de restauramos uma tabela.

    2.) Backups OfflineBackups offline como o nome diz, so feitos com a instncia do banco de dadosfora do ar.So normalmente utilizados quando existem janelas de manuteno deservidores.O backup offline nada mais do que copiar todos os arquivos existentes dainstncia Oracle para um outro local.O backup offline necessrio quando o sistema no possui archive-logs ativos,exemplos sistemas de cargas massivas como Dataware houses.

    O restore de dados deste tipo de backup sempre do tipo full.

  • 7/22/2019 94434076 Curso Oracle 11g Emerson

    106/129

    3.) Backups OnlineCpia Fsica

    So cpias fsicas assim como feito no backup offline, porm ocorrem com obanco online.So utilizados em sistemas que devem ficar online 24 horas por dia.

    obrigatria a utilizao de processos de archive logs ativos para este tipos debackup;Este backup pode ser feito via script, ou via um agente de programa externo debackups.No existe limitao de volume para este tipo de backup.Os restores podem ser feitos por datafiles e com tipo de restore de transaoem determinado momento do tempo, conhecido como point in time.

    4.) Backups Online - RMANSo como os backups online, porm armazenam as informaes de backupsefetuados (catalogo).Permite tipos de cpias de dados diferenciadas.Os programas mais novos de backup utilizam como interface de agente oRMANPermite backup apenas de blocos utilizadosPermite backup incremental de blocos fsicosRestore semelhante ao do processo anterior do item 3.

    5.) Flash Recovery AreaApesar de este no ser um processo ou tipo de backup, quando configuramosem nosso banco de dados uma rea em disco para ser utilizada como fla