Treinamento DBA Essential

2.806 visualizações

Publicada em

Esta é uma amostra do material que está sendo elaborado pela Oradata Consultoria e Treinamentos intitulado DBA Essential, onde o aluno vai aprender instalar, implementar e gerenciar um banco de dados Oracle nas versões 10g, 11g e 12c sobre as plataformas Linux e Solaris.

Publicada em: Tecnologia
0 comentários
21 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
2.806
No SlideShare
0
A partir de incorporações
0
Número de incorporações
1.302
Ações
Compartilhamentos
0
Downloads
0
Comentários
0
Gostaram
21
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Treinamento DBA Essential

  1. 1. DBA Essential – Prepare, Instale e Configure DBA Essential Prepare, Instale e Configure 10g 11g & 12c
  2. 2. Visão Geral  Este workshop destina-se a profissionais que buscam “iniciar/aprimorar” seus conhecimentos com o Oracle database nas versões 10g, 11g e 12c.  É desejável que se tenha o mínimo de conhecimento de bancos de dados relacionais e linguagem SQL.  O workshop visa lhe ensinar a montar um ambiente de banco de dados (Oracle) desde a etapa de instalação do sistema operacional. Neste workshop trabalharemos com os sistemas operacionais Linux e Solaris e as versões 10g, 11g e 12c do Oracle database. 2
  3. 3. Agenda 3  Introdução.  Sistemas Operacionais.  Storage.  Oracle.  Preparação do SO.  Instalação.  Configuração.  Gerenciamento & Manutenção.
  4. 4. Agenda 4  Introdução.  Apresentação.  O que é ser DBA.  Como aprender.  Certificações.  Treinamentos.  Próximos Passos.
  5. 5. Introdução Apresentação Instrutor  Douglas Paiva de Sousa  Oracle Instructor – Oradata Cons. e Treinamentos  Oracle WDP Instructor – KaSolution  Oracle WDP Instructor – Grupo Impacta  http://douglasdba.wordpress.com  http://douglasdba.profissionaloracle.com.br  http://www.oradata.com.br/blog http://br.linkedin.com/in/dpsdba/ @oradatact 5 /oradata
  6. 6. Introdução Apresentação Alunos6  Seu nome.  Onde trabalha.  O que busca no treinamento.  Porque ser DBA?  Porque Oracle?
  7. 7. Introdução O que é ser DBA?7
  8. 8. Introdução O que é ser DBA?8  O que faz um DBA:  Desenha a arquitetura do servidor.  Instala (às vezes) e prepara (sempre) o sistema operacional.  Instala e configura o banco de dados.  Executa testes de performance do banco de dados.  Cria usuários.  Monitora e acompanha o crescimento do banco.  Monitora o desempenho do banco de dados.  Auxilia os desenvolvedores em processos de tuning de SQL.  Tuning reativo e proativo no banco de dados.  Configura e monitora o backup.  Testa o restore e o recovery do backup.  Manutenção planejada e não planejada.
  9. 9. Introdução Mercado de Trabalho9  Onde há DBAs?  Empresas de médio para grande porte.  Consultorias (Professional Services).  Meios de contratação:  CLT (Salário fixo mensal).  PJ (Contratação por horas trabalhadas).  Níveis hierárquicos de um DBA:  Júnior: Inicio da carreira.  Pleno: Mínimo 2 anos de carreira.  Sênior: Mínimo 5 anos de carreira.  Especialista: Mais de 10 anos de carreira.
  10. 10. Introdução Mercado de Trabalho10  É fácil me tornar DBA?  Depende de seu esforço!  Quais os pré-requisitos mínimos para começar?  Conhecimentos básicos de Linux.  Conhecimentos intermediários de inglês.  No mínimo certificação OCP.
  11. 11. Introdução Mercado de Trabalho11 Fonte: http://info.abril.com.br/carreira/salarios/
  12. 12. Introdução Como Aprender?12  docs.oracle.com  otn.oracle.com  OLL (Oracle Learning Library)  Fóruns e blogs.
  13. 13. Introdução Como Aprender?13  Monte um ambiente de estudos:  Oracle VirtualBox.  Oracle Enterprise Linux.  Oracle Database 12c. Link do post para montar um ambiente de estudos.
  14. 14. Introdução Certificações14  Nível I: OCA (Oracle Certified Assiciate).  Nível II: OCP (Oracle Certified Professional).  Treinamento oficial + Exame 1Z0-053 ou 1Z0-063  Nível III: OCM (Oracle Certified Master).  OCP + Treinamentos + 3 dias de prova
  15. 15. Introdução Certificações15  Certificações Adicionais:
  16. 16. Introdução Certificações16  Para refletir:  Certificações garantem emprego?  Certificações garantem conhecimento?  Eu preciso de certificação?  Porque?
  17. 17. Introdução Treinamentos17  Oficiais:  Muito teóricos e pouco prático, te preparam para passar em determinada prova e só!  Obrigatório para certificação OCP.  Fixam muito bem os conceitos em sua memória.  Não Oficiais:  Mais práticos e pouco teóricos, você aprende fazendo e com exemplos mais próximos da realidade.  Podem eventualmente ajudar em alguma certificação.
  18. 18. Introdução Próximos Passos18  Monte seu laboratório:  Instale o VirtualBox.  Instale o Oracle Enterprise Linux.  Instale o Banco de dados.  Pesquise, leia, estude:  Blogs.  Fóruns.  Tutoriais e etc... Na internet de hoje não há limites, tudo vai depender de seu esforço!
  19. 19. Agenda 19  Introdução.  Sistemas Operacionais.  Storage.  Oracle.  Preparação do SO.  Instalação.  Configuração.  Gerenciamento & Manutenção.
  20. 20. Sistemas Operacionais Linux20  Nesta etapa do treinamento você vai aprender:  Criar sua VM.  Instalar o Linux.  Trabalhar com o “Shell”.  Gerenciar processos e usuários.  Gerenciamento de arquivos e diretórios.  Analise de performance do servidor.  Configurar os recursos do sistema.  Gerenciamento de software.
  21. 21. Prática Criação da VM21  Abra o console do VirtualBox.
  22. 22. Prática Criação da VM22  Configure a VM:  Nome.  Sistema Operacional.  Arquitetura.
  23. 23. Prática Criação da VM23  Defina a quantidade de memória RAM.  Oracle database 12c mais Grid Infrastructure.  Mínimo 4608MB (4,5GB)
  24. 24. Prática Criação da VM24  Crie um disco virtual para a instalação do sistema operacional: 1 2
  25. 25. Prática Criação da VM25  Defina o tamanho do disco para instalação do sistema operacional: 3 4
  26. 26. Prática Criação da VM26  Selecione as configurações da VM para acertar os parâmetros de memória e boot do sistema SO.
  27. 27. Prática Criação da VM27  Na aba “Sistema” verifique a memória e a ordem de boot dos dispositivos.
  28. 28. Prática Criação da VM28  No dispositivo de CD, mapeie a ISO de instalação do sistema operacional: 1 2 3
  29. 29. Prática Criação da VM29  A configuração final deve ser esta:
  30. 30. Prática Instalação Linux – OEL730  Ligue sua VM:
  31. 31. Prática Instalação Linux – OEL731  Selecione o idioma, e na sequencia vá em “Seleção de programas: 1 2
  32. 32. Prática Instalação Linux – OEL732  Selecione a opção “Servidor com GUI” e depois vá para a opção de “Destino da instalação”: 1 2
  33. 33. Prática Instalação Linux – OEL733 1 2
  34. 34. Prática Instalação Linux – OEL734 Oracle2015@!
  35. 35. Prática Instalação Linux – OEL735
  36. 36. Prática Instalação Linux – OEL736
  37. 37. Prática Instalação Linux – OEL737
  38. 38. Prática Instalação Linux – OEL738 1 2 3
  39. 39. Prática Instalação Linux – OEL739
  40. 40. Prática Instalação Linux – OEL740
  41. 41. Prática Instalação Linux – OEL741 Oracle2015@!
  42. 42. Prática Instalação Linux – OEL742
  43. 43. Sistemas Operacionais Linux43 Trabalhando com “Shell”:  Para se conectar remotamente use alguma ferramenta como Putty ou MobaXterm:  Use o comando: ssh <usuário>@<servidor>  Após conectar-se o prompt lhe exibe o sinal “$”
  44. 44. Sistemas Operacionais Linux44 Trabalhando com “Shell”:  Para começar, algumas dicas de comandos:  man: Manual online de comandos do SO. Digite: man top  O que aconteceu?  whatis: Descrição breve de um comando. Digite: whatis top  O que aconteceu?  Quem está conectado agora? Digite: who
  45. 45. Sistemas Operacionais Linux45 Trabalhando com “Shell”:  Como encontrar o caminho de um executável? Digite: which man ou whereis man  Quero limpar minha tela. Digite: clear  Preciso encontrar meus arquivos sql. E agora? Digite: find –name *sql Viu? Linux não é coisa de outro mundo, muito menos algo tão complexo como você imaginava. Vamos em frente, ainda há muitas novidades!
  46. 46. Sistemas Operacionais Linux46 Variáveis de ambiente:  O que é?: Espaços em memória que armazenam valores para serem utilizados pelo SO.  Exemplos: $ORACLE_HOME: Local de instalação do Oracle $ORACLE_SID: Nome da sua instancia $PATH: Local dos arquivos executáveis $HOME: Diretório padrão do usuário
  47. 47. Sistemas Operacionais Linux47 Variáveis de ambiente:  Para consultar suas variáveis use echo:  As variáveis de ambiente são definidas no arquivo .bash_profile, que fica no “home” do usuário “oracle” (/home/oracle).
  48. 48. Sistemas Operacionais Linux48 Variáveis de ambiente (alias):  Comandos longos se tornam “chatos” para trabalhar, porém você pode encurtá-los com um “alias” veja:  Comando:  Construindo um alias:  Agora fica mais fácil, basta digitar:
  49. 49. Sistemas Operacionais Linux49 Histórico de comandos:  Você pode capturar o histórico de seus comandos dentro do Shell digitando o comando history:  Neste exemplo, capturamos o históricos dos últimos 5 comandos.  Você pode reexecutar um comando diretamente pele seu numero no histórico, conforme a imagem.
  50. 50. Sistemas Operacionais Linux50 Gerenciamento de processos e usuários:  Para ver os processos em execução dentro do SO, use o comando ps (process status). Este comando sem nenhum parâmetro, exibe somente os processos que foram iniciados pela sua sessão.  Você pode usar as opções –ef e | grep <string>, para refinar sua busca. Vendo todos os resultados, dentro dos seus critérios de pesquisa.
  51. 51. Sistemas Operacionais Linux51 Gerenciamento de processos e usuários:  Com a opção –fu, você pode listar todos os processos de um usuário em especifico, por exemplo, listar todos os processos do usuário oracle.  Exemplo: Imagine que por alguma razão, você precisa encontrar o processo do RMAN (Recovery Manager) dentro do SO e na sequencia eliminá-lo.  Para eliminar o processo, use o comando kill
  52. 52. Sistemas Operacionais Linux52 Gerenciamento de processos e usuários:  Preciso saber quem está conectado no SO. E agora? Use o comando who.  Ótimo, mas agora desta lista de conexões, qual é a minha conexão? Digite who am i
  53. 53. Sistemas Operacionais Linux53 Gerenciamento de processos e usuários:  O processo de instalação do Oracle, pede que você limite o número máximo de processos que podem ser executados simultaneamente, por questões de segurança.  Essas configurações, são definidas pelo usuário “root” no arquivo “/etc/security/limits.conf”  Veja como está o seu arquivo agora, com o comando cat
  54. 54. Sistemas Operacionais Linux54 Gerenciamento de processos e usuários:  Caso precise, você pode trocar a senha do usuário dentro do sistema operacional, para isso use o comando passwd  Neste comando, o usuário troca a própria senha, mas quando um usuário precisa trocar a senha de outro usuário, é precisa estar logado como “root” e acrescentar o usuário.
  55. 55. Sistemas Operacionais Linux55 Gerenciamento de processos e usuários:  Em certos momentos, você vai precisar executar comandos com o usuário “root” (Administrador). Para fazer isso pode se utilizar o comando su – root  Após fornecer a senha de root, você estará conectado com o usuário administrador do sistema. Cuidado!  Repare que em seu prompt de comando agora está a mensagem root@<hostname>#. E não mais como antes user@<hostname>$  Use as credenciais de root, apenas quando necessário, jamais trabalhe diretamente com esse usuário.
  56. 56. Sistemas Operacionais Linux56 Gerenciamento de processos e usuários:  É possível também (e mais seguro), ter o privilégios de root, diretamente em seu usuário para não usar as credenciais de root diretamente. Use o comando sudo  Para fazer uso do comando sudo, é preciso antes que o usuário em questão esteja registrado no arquivo /etc/sudoers, com uma linha similar a esta:  A partir de então, pode se executar qualquer comando de root, desde que precedido da palavra sudo
  57. 57. Sistemas Operacionais Linux57 Gerenciamento de processos e usuários:  Durante a instalação do Oracle, será preciso criar grupos de usuários além do próprio usuário oracle, abaixo comandos:  Adicionar um grupo:  Remover um grupo: Você pode consultar os grupos existentes em:  Para adicionar usuários:  Para consultar informações de usuários consulte o arquivo, /etc/passwd
  58. 58. Sistemas Operacionais Linux58 Gerenciamento de arquivos e diretórios: Os diretórios começam em C: Os diretórios começam no /
  59. 59. Sistemas Operacionais Linux59 Gerenciamento de arquivos e diretórios:
  60. 60. Sistemas Operacionais Linux60 Gerenciamento de arquivos e diretórios:  Em qual diretório estou? pwd  Preciso acessar a pasta /oracle/product: cd  Preciso voltar para meu diretório home.  Preciso voltar um nível no diretório.
  61. 61. Sistemas Operacionais Linux61 Gerenciamento de arquivos e diretórios:  Crie uma pasta chamada “scripts” dentro de sua home.  Acesse a pasta e imprima sua localização.  Tente criar uma pasta diretamente no diretório /  O que aconteceu? Veja os privilégios deste diretório.
  62. 62. Sistemas Operacionais Linux62 Gerenciamento de arquivos e diretórios:  Preciso remover (apagar) um diretório, e agora?  Se o diretório tiver arquivos...  Para resolver use a opção –r, isso vai remover o diretório e seu conteúdo junto.  Ao usar a opção –r você receberá a mensagem:  Para confirmar a remoção use a opção Y ou N para desistir.  Quer apara o diretório, mas não quer ver esta mensagem? Use:
  63. 63. Sistemas Operacionais Linux63 Gerenciamento de arquivos e diretórios:  Para criar arquivos dentro do Linux usa o editor vi (em modo texto). Graficamente pode se usar outros editores como gedit por exemplo.  Criando um arquivo:  Feche o editor: [esc] +  Veja seu arquivo dentro do diretório:  Para criar um arquivo rapidamente, use o comando touch
  64. 64. Sistemas Operacionais Linux64 Gerenciamento de arquivos e diretórios:  Comandos para iniciar o VI:
  65. 65. Sistemas Operacionais Linux65 Gerenciamento de arquivos e diretórios:  Comandos para editar uma arquivo dentro do VI:
  66. 66. Sistemas Operacionais Linux66 Gerenciamento de arquivos e diretórios:  Comandos para encerrar a edição de um arquivo dentro do VI:
  67. 67. Sistemas Operacionais Linux67 Gerenciamento de arquivos e diretórios:  Você pode consultar tudo que está dentro de um diretório mesmo sem estar dentro dele, com o comando ls, veja:  Neste exemplo, listamos todos os “diretórios” que estavam dentro da $ORACLE_HOME e iniciavam-se com a letra “b”.  Caso “-d” fosse omitido, seria exibido todos os diretórios e arquivos que começassem com a letra “b”.
  68. 68. Sistemas Operacionais Linux68 Gerenciamento de arquivos e diretórios:  Para listar somente o nome dos arquivos de seu diretório corrente, digite apenas ls:  O comando ls puro e simples pode não ser tão útil, tente algo mais sofisticado para capturar maiores informações:
  69. 69. Sistemas Operacionais Linux69 Gerenciamento de arquivos e diretórios:  Traduzindo o comando ls -altr:
  70. 70. Sistemas Operacionais Linux70 Gerenciamento de arquivos e diretórios:  Para modificar as permissões de um arquivo use chmod  Com o comando ls, agora veja as permissões:  No Linux as permissões são concedidas em três níveis sendo nesta ordem: owner do arquivo, grupos de usuários e por ultimo demais usuários.  Veja no próximo slide a lista completa das permissões.
  71. 71. Sistemas Operacionais Linux71 Gerenciamento de arquivos e diretórios:  Tabela de permissões para arquivos.
  72. 72. Sistemas Operacionais Linux72 Gerenciamento de arquivos e diretórios:  Permissões também podem ser concedidas por letras.
  73. 73. Sistemas Operacionais Linux73 Gerenciamento de arquivos e diretórios:  Dentro do Linux todo arquivo tem um owner (dono), algumas vezes você precisa mudar o owner de algum arquivo ou diretório, para isso o comando chown  Pode se também trocar apenas o grupo dentro do SO.
  74. 74. Sistemas Operacionais Linux74 Gerenciamento de arquivos e diretórios:  Um comando útil para capturar informações detalhadas de determinado diretório é o stat
  75. 75. Sistemas Operacionais Linux75 Gerenciamento de arquivos e diretórios:  Para encontrar a diferença entre 2 arquivos, use o comando diff.  O comando sdiff é mais interessante.  Para encontrar diferenças entre 3 arquivos use diff3
  76. 76. Sistemas Operacionais Linux76 Gerenciamento de arquivos e diretórios:  Para copiar arquivos use o comando cp  Neste exemplo, o arquivo é copiado para mesma pasta, porém com outro nome (listener.old.ora).  Para copiar diretórios use a opção –r  Atenção ao copiar arquivos, pois caso já exista um arquivo de mesmo nome o Linux sobrescreve sem perguntar.
  77. 77. Sistemas Operacionais Linux77 Gerenciamento de arquivos e diretórios:  Para copiar arquivos entre servidores use scp  Outro comando útil, é o rsync, com ele você pode sincronizar diretórios que precisam ter o mesmo conteúdo.  -- progress vai lhe exibir somente a diferença.
  78. 78. Sistemas Operacionais Linux78 Gerenciamento de arquivos e diretórios:  Para mover arquivos entre diretórios, a sintaxe é a mesma do comando cp (copy) porém agora o comando é o mv (move):
  79. 79. Sistemas Operacionais Linux79 Gerenciamento de arquivos e diretórios:  Para pesquisar por arquivos dentro do sistema operacional, use o comando find  Para procurar por textos dentro de arquivos:  Para arquivos binários use strings
  80. 80. Sistemas Operacionais Linux80 Gerenciamento de arquivos e diretórios:  O comando wc (word count) exibe a quantidade de palavras, linhas e caracteres e um arquivo.
  81. 81. Sistemas Operacionais Linux81 Analise de performance do servidor:  Nesta sessão você vai aprender a monitorar:  CPU  I/O Disk  Memória  Redes
  82. 82. Sistemas Operacionais Linux82 Analise de performance do servidor:
  83. 83. Sistemas Operacionais Linux83 Analise de performance do servidor:  vmstat
  84. 84. Sistemas Operacionais Linux84 Analise de performance do servidor: Se “wa” apresentar um valor muito alto, isso significa que você tem uma sobrecarga na camada de storage. Se “b” apresentar um valor muito alto, isso significa que você tem uma sobrecarga na camada de CPU, ou seja, está havendo esperas na camada de sistema operacional Se “si” ou “so” apresentar um valor muito alto, isso significa que você tem uma sobrecarga na camada de memória.
  85. 85. Sistemas Operacionais Linux85 Analise de performance do servidor:
  86. 86. Sistemas Operacionais Linux86 Analise de performance do servidor:  top
  87. 87. Sistemas Operacionais Linux87 Analise de performance do servidor:
  88. 88. Sistemas Operacionais Linux88 Analise de performance do servidor:  Você pode colocar o comando top para executar em modo “batch” direcionando o resultado para um arquivo e analisar os resultados posteriormente.  Monitorando os processos do usuário oracle “-U”, em um intervalo de 5 segundos “-d” em 25 iterações “-n”
  89. 89. Sistemas Operacionais Linux89 Analise de performance do servidor:  mpstat  Por default só traz uma linha agregada para todas as CPUs, mas você pode verificar individualmente dentro de intervalos regulares. Exemplo, seu processador 0 em um intervalo de 2 segundos em 20 repetições:
  90. 90. Sistemas Operacionais Linux90 Analise de performance do servidor:  Para exibir todas as CPUs use –P ALL
  91. 91. Sistemas Operacionais Linux91 Analise de performance do servidor:  Traduzindo as informações:
  92. 92. Sistemas Operacionais Linux92 Analise de performance do servidor:  Free (Informações da memória RAM)  Para facilitar a leitura, opcionalmente use “-m” (megabytes) ou “-g” (gigabytes).
  93. 93. Sistemas Operacionais Linux93 Analise de performance do servidor:  df (Disk free)  Para facilitar a leitura, opcionalmente use “-h”.  Também é possível ver informações de um único disco.
  94. 94. Sistemas Operacionais Linux94 Analise de performance do servidor:  du (Disk usage)
  95. 95. Sistemas Operacionais Linux95 Analise de performance do servidor:  iostat
  96. 96. Sistemas Operacionais Linux96 Analise de performance do servidor:  netstat (network statistics)
  97. 97. Sistemas Operacionais Linux97 Configurar recursos do sistema:  Nesta sessão você vai aprender:  Como os processos do DB e SO se relacionam.  Como os recursos computacionais são distribuídos.
  98. 98. Sistemas Operacionais Linux98 Configurar recursos do sistema:  Interprocess communication (IPC): Método usado pelo sistema operacional para coordenação dos processos do banco de dados com os processos do sistema operacional.  Existem três tipos de IPCs:  Semaphores  Shared Memory  Queue
  99. 99. Sistemas Operacionais Linux99 Configurar recursos do sistema:  Bancos de dados Oracle, precisam de configurações especiais para estes processos, seguindo o que a documentação da Oracle recomenda, caso contrario:
  100. 100. Sistemas Operacionais Linux100 Configurar recursos do sistema:  O primeiro passo para acertar as configurações dentro do Linux, é conhecer os recursos e o sistema operacional que se está trabalhando:  Para conhecer a arquitetura do SO use uname  Para conhecer o release de seu kernel use uname –r ou dê um cat /proc/version
  101. 101. Sistemas Operacionais Linux101 Configurar recursos do sistema:  Uma dica é usar a opção –help do comando uname
  102. 102. Sistemas Operacionais Linux102 Configurar recursos do sistema:  Para exibir informações de sua CPU:
  103. 103. Sistemas Operacionais Linux103 Configurar recursos do sistema:  Para exibir de sua memória física:  Para exibir informações de sua área de swap:  Informações completas de sua memória:
  104. 104. Sistemas Operacionais Linux104 Configurar recursos do sistema:  No processo de instalação será preciso alterar algumas configurações de kernel, essas informações ficam no arquivo /etc/sysctl.conf e com o comando sysctl –a você pode visualizar:
  105. 105. Sistemas Operacionais Linux105 Configurar recursos do sistema:  Na hora de executar as alterações, você pode fazer das seguintes maneiras:  Executando o comando sysctl –w  Adicionando as informações com o comando echo  Editando o arquivo /etc/sysctl.conf  Adicionando as informações com o comando cat
  106. 106. Sistemas Operacionais Linux106 Configurar recursos do sistema:  Adicionando as informações com o comando cat  Após promover as alterações, use o comando sysctl –p, para torna-las permanentes.
  107. 107. Sistemas Operacionais Linux107 Configurar recursos do sistema:  A documentação da Oracle, recomenda que você estabeleça limites para o numero de arquivos abertos dentro do sistema operacional, isso também é feito no arquivo sysctl.conf no parâmetro file-max:
  108. 108. Sistemas Operacionais Linux108 Configurar recursos do sistema:  O processo de instalação do Oracle, também pede que você limite o numero de processos Shell dentro do SO, isso é feito no arquivo /etc/security/limits.conf  O comando ulimit também lhe ajuda na definição destes parâmetros
  109. 109. Sistemas Operacionais Linux109 Gerenciamento de software:  Nesta sessão você vai aprender:  Como instalar pacotes necessários no sistema operacional.  Remover pacotes caso seja preciso.  Atualizar pacotes caso preciso.
  110. 110. Sistemas Operacionais Linux110 Gerenciamento de software:  No processo de instalação do Oracle, você terá que instalar vários pacotes (libs) no sistema operacional, essa atividade você pode executar com o comando rpm.
  111. 111. Sistemas Operacionais Linux111 Gerenciamento de software:  Você pode com o comando rpm –qf (query for file), descobrir qual é o nome do pacote de determinado programa, por exemplo:  Para saber se você tem um pacote instalado em seu sistema, use rpm –qa:  Para atualizar um pacote use rpm -Uvh
  112. 112. Sistemas Operacionais Linux112 Gerenciamento de software:  Para remover um pacote, use rpm –e ou --erase:  No momento da instalação do Oracle, você precisará ter uma série de pacotes instalados, isso pode ser feito de duas maneiras, instalando os pacotes um a um, ou automatizar com um único pacote que instala todos. http://oradata.com.br/oracle-12c-instalacao-linux/
  113. 113. Agenda 113  Introdução.  Sistemas Operacionais.  Storage.  Oracle.  Preparação do SO.  Instalação.  Configuração.  Gerenciamento & Manutenção.
  114. 114. Storage 114  Nesta etapa do treinamento você vai aprender:  Tipos de storage suportados  Vendors  Tecnologias  ASM
  115. 115. Storage 115 Storage overview:
  116. 116. Storage 116 Principais Vendors:
  117. 117. Storage 117 Tecnologias:  IDE/ATA/SATA/SCSI  SAN/NAS  iSCSI  Fiber Channel (FC)  Cluster File System  ASM  DAS (Direct attached storage)
  118. 118. Storage 118 ASM – Automatic Store Management  O que é?  Para que serve?  É obrigatório usar?  Como implementar.
  119. 119. Storage 119 ASM – Automatic Store Management  O que é? Um “file system” proprietário da Oracle para atender as necessidades de bancos de dados, onde se pode ter muitas vantagens e ganho de produtividade com relação à outras soluções de storage usadas com Oracle database. Storage Sistema Operacional Instancia ASM Instancia de Banco de Dados
  120. 120. Storage 120 ASM – Automatic Store Management  O que é? No ASM, trabalhamos com o conceito de “disk groups” (grupos de discos), sendo assim, então você pode:  Agregar dois discos físicos de 100GB para formar um disco lógico de 200GB.  Ter um disco “espelhado” em outro, por questões de redundância/segurança.  Ter as duas opções combinadas, espelhamen- to, mais a agregação de discos.
  121. 121. Storage 121 ASM – Automatic Store Management  O que é? DISK1 100GB DISK2 100GB +DATA 200GB DISK1 100GB DISK2 100GB +DATA 100GB DISK1 100GB DISK2 100GB +DATA 200GB DISK1 100GB DISK2 100GB
  122. 122. Storage 122 ASM – Automatic Store Management  O que é? DISK1 100GB DISK2 100GB +DATA 200GB DISK1 100GB DISK2 100GB +DATA 100GB DISK1 100GB DISK2 100GB +DATA 200GB DISK1 100GB DISK2 100GB
  123. 123. Storage 123 ASM – Automatic Store Management  O que é? DISK1 100GB DISK2 100GB +DATA 200GB DISK1 100GB DISK2 100GB +DATA 100GB DISK1 100GB DISK2 100GB +DATA 200GB DISK1 100GB DISK2 100GB
  124. 124. Storage 124 ASM – Automatic Store Management  O que é? No Windows tudo começa no “C:”, no Linux tudo começa no “/”, e no ASM? Tudo começa no “+” Sendo assim: C:DATAORDTdatafiles /DATA/ORDT/datafiles/ +DATA/ORDT/datafiles/ASM
  125. 125. Storage 125 ASM – Automatic Store Management  O que é? /dev/sdc1 /dev/sdd1 ASMDISK01 ASMDISK02 ASMDISK01 ASMDISK02 Discos no sistema operacional Discos ASM Diskgroup ASM “DATA” 21 3
  126. 126. Storage 126 ASM – Automatic Store Management  O que é? Storage Sistema Operacional Instancia ASM Instancia de Banco de Dados
  127. 127. Storage 127 ASM – Automatic Store Management  Para que serve? O ASM será a camada de storage do seu banco de dados, ele será o hospedeiro de seus arquivos de dados, ou seja, o que você tem de mais valioso dentro do banco de dados estará dentro do ASM. Com o ASM você pode gerenciar sua camada de storage sem precisar para o seu banco de dados, além de eliminar tarefas como: gerenciamento de LUN, Movimentação e reorganização de arquivos, gerenciamento de file system e cluster file system.
  128. 128. Storage 128 ASM – Automatic Store Management  É obrigatório usar? Não, mas com o ASM você elimina: tuning de I/O, movimentação e reorganização de datafiles, gerenciamento de nomes de arquivos, LVM, files system, cluster file system e etc... Além de diminuir: Erros humanos (como um “rm” acidental) e a dependência do administrador do starage. Agora a escolha é sua!
  129. 129. Storage 129 ASM – Automatic Store Management  Como implementar? O ASM vem no setup do Grid Infrastructure, que é instalado antes do software do DB, porém antes de instalá-lo você já deve ter: 1. Seus discos no estado “bruto” (sem formatar) 2. Os pacotes do asm já instalados no sistema operacional. 3. O serviço “oracleasm” executando.
  130. 130. Storage 130 ASM – Automatic Store Management  Como implementar?  Arquitetura Instancia ASM.
  131. 131. Storage 131 ASM – Automatic Store Management  Como implementar?  Crie disk groups distintos se possíveis em controladoras distintas também.  Procure usar disk groups separados para: dados, índices e LOBs, além de um disk group exclusivo para FRA.  Não use “redundância redundante”, ou seja se o disco já vier com redundância do storage, não use redundância no ASM.  Procure usar discos sempre com tamanhos iguais.
  132. 132. Storage 132 DAS – Direct attached storage.  O que é?  Como implementar?
  133. 133. Storage 133 DAS – Direct attached storage.  O que é?  É um storage local (os discos conectados diretamente no servidor).  Não é compartilhado entre outros servidores.  Atende somente pequenas aplicações.  Performance pode ser maior.  Custo menor.
  134. 134. Storage 134 DAS – Direct attached storage.  Como implementar?  Use “mount points”.  Os discos serão apresentados para o servidor no “/dev...”  Procure usar os discos distribuídos assim como no ASM.  Fique atento as permissões em cada disco.
  135. 135. Agenda 135  Introdução.  Sistemas Operacionais.  Storage.  Oracle.  Preparação do SO.  Instalação.  Configuração.  Gerenciamento & Manutenção.
  136. 136. Oracle 136  Nesta etapa do treinamento você vai aprender:  Preparação do sistema operacional  Instalação  Grid Infrastructure  Software de danco de dados  Configuração  Criação da instancia.  Configurações mínimas para produção  Manutenção  Monitoramento & Performance
  137. 137. Oracle Preparação do SO137 Preparação do sistema operacional:  Veja os discos do seu servidor: df –h  Vamos adicionar mais dois discos de 10GB cada.  Desligue sua VM e adicione dois discos virtuais.
  138. 138. Oracle Preparação do SO138 Preparação do sistema operacional:  Configurações > Armazenamento > Controladora SATA > Adds Hard Disk
  139. 139. Oracle Preparação do SO139 Preparação do sistema operacional: 1 2
  140. 140. Oracle Preparação do SO140 Preparação do sistema operacional: 21
  141. 141. Oracle Preparação do SO141 Preparação do sistema operacional:  Ligue sua máquina virtual
  142. 142. Oracle Preparação do SO142 Preparação do sistema operacional:  Veja os novos discos adicionados no servidor.  Nestes discos instalaremos os binários de grid e do banco de dados, agora o próximo passo é formata-los.  Para esta atividade usaremos o comando fdisk  fdiks /dev/sdb  fdisk /dev/sdc
  143. 143. Oracle Preparação do SO143 Preparação do sistema operacional:  Na hora de formatar os discos, informe as opções (n,p,1,2048,Enter,p,w) [Enter]
  144. 144. Oracle Preparação do SO144 Preparação do sistema operacional:  Confira se os discos aparecem formatados: ls –ltr /dev/sd*[1]  Crie dois diretórios (“/u01” e “/u02”): mkdir –p /u01 mkdir –p /u02
  145. 145. Oracle Preparação do SO145 Preparação do sistema operacional:  Execute os comandos: mkfs.ext3 /dev/sdb1 mkfs.ext3 /dev/sdc1  Adicione as seguintes linhas no arquivo /etc/fstab /dev/sdb1 /u01 ext3 defaults 0 0 /dev/sdc1 /u02 ext3 defaults 0 0  Reinicie a maquina virtual, após o seu restart execute um df -h
  146. 146. Oracle Preparação do SO146 Preparação do sistema operacional:  Repita os procedimentos do slide 131 até 133, para adicionar mais 8 discos virtuais ao seu servidor, os discos devem ter o nome de disco01 até disco06, cada um com 3GB de tamanho.  Após a criação dos discos, formate-os de acordo com o slide 136.
  147. 147. Oracle Preparação do SO147 Preparação do sistema operacional:  O resultado final deve ser: 1 2 3
  148. 148. Oracle Preparação do SO148 Preparação do sistema operacional:  Execute o comando cat para editar o sysctl.conf: # cat >> /etc/sysctl.conf <<EOF fs.file-max = 6815744 kernel.sem = 250 32000 100 128 kernel.shmmni = 4096 kernel.shmall = 1073741824 kernel.shmmax = 4398046511104 net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048576 fs.aio-max-nr = 1048576 net.ipv4.ip_local_port_range = 9000 65500 kernel.panic_on_oops = 1 EOF
  149. 149. Oracle Preparação do SO149 Preparação do sistema operacional:  Compile as informações alteradas com o comando: # /sbin/sysctl –p  Altere o arquivo /etc/security/limits.conf # cat >> /etc/security/limits.conf <<EOF oracle soft nofile 1024 oracle hard nofile 65536 oracle soft nproc 16384 oracle hard nproc 16384 oracle soft stack 10240 oracle hard stack 32768 EOF
  150. 150. Oracle Preparação do SO150 Preparação do sistema operacional:  Instale os pacotes necessários para o Oracle: $ su # cd /run/media/oradata/OL-7.0 Server.x86_64/Packages # rpm -Uvh binutils-2.23.52.0.1-16.el7.x86_64.rpm # rpm -Uvh compat-libcap1-1.10-7.el7.x86_64.rpm # rpm -Uvh compat-libstdc++-33-3.2.3-71.el7.x86_64.rpm # rpm -Uvh libstdc++-devel-4.8.2-16.el7.x86_64.rpm # rpm -Uvh gcc-c++-4.8.2-16.el7.x86_64.rpm # rpm -Uvh ksh-20120801-19.el7.x86_64.rpm # rpm -Uvh libgcc-4.8.2-16.el7.i686.rpm # rpm -Uvh libaio-devel-0.3.109-12.el7.x86_64.rpm # rpm -Uvh unixODBC-2.3.1-10.el7.x86_64.rpm # rpm -Uvh gcc-c++-4.8.2-16.el7.x86_64.rpm # rpm -Uvh kernel-3.10.0-123.el7.x86_64.rpm # rpm -Uvh compat-libcap1-1.10-7.el7.x86_64.rpm # rpm -Uvh compat-libstdc++-33-3.2.3-71.el7.x86_64.rpm # rpm -Uvh libstdc++-devel-4.8.2-16.el7.x86_64.rpm # rpm -Uvh gcc-c++-4.8.2-16.el7.x86_64.rpm # rpm -Uvh ksh-20120801-19.el7.x86_64.rpm # rpm -Uvh libaio-devel-0.3.109-12.el7.x86_64.rpm
  151. 151. Oracle Preparação do SO151 Preparação do sistema operacional:  Desabilite o firewall: # systemctl stop firewalld # systemctl disable firewalld  Edite o parâmetro no arquivo /etc/selinux/config o parâmetro SELINUX para permissive: SELINUX=permissive  Crie os grupos de usuário “dba” e “oinstall” e também o usuário “oracle” já atribuindo-o a esses grupos: # groupadd -g 54321 oinstall # groupadd -g 54322 dba # useradd -g oinstall -G dba oracle
  152. 152. Oracle Preparação do SO152 Preparação do sistema operacional:  Altere a senha do usuário oracle para ora2015@ # passwd oracle  Crie o diretório para o Grid Infrastructure: # mkdir -p /u01/app/oracle/product/12.1.0/grid  Troque o owner deste diretório para o usuário oracle: # chown -R oracle:oinstall /u01  E dê as permissões para pode executar a instalação: # chmod -R 775 /u01
  153. 153. Agenda 153  Introdução.  Sistemas Operacionais.  Storage.  Oracle.  Preparação do SO.  Instalação.  Configuração.  Gerenciamento & Manutenção.
  154. 154. Oracle Instalação154 Instalação do Grid Infrastructure:  Crie um diretório chamado “asmlib” em /home/oracle: mkdir –p /home/oracle/asmlib  Execute os comandos abaixo: rpm -e linux-firmware-20140213-0.3.git4164c23.0.1.el7.noarch rpm -Uvh linux-firmware-20140911-0.1.git365e80c.0.1.el7.noarch.rpm rpm -Uvh kernel-3.10.0-229.7.2.el7.x86_64.rpm rpm -Uvh kmod-oracleasm-2.0.8-8.el7.x86_64.rpm rpm -Uvh oracleasmlib-2.0.4-1.el5.x86_64.rpm rpm -Uvh oracleasm-support-2.1.8-1.el5.x86_64.rpm
  155. 155. Oracle Instalação155 Instalação do Grid Infrastructure:  Configure o processo do oracleasm: # oracleasm configure –i Default user to own the driver interface []: oracle Default group to own the driver interface []: dba Start Oracle ASM library driver on boot (y/n) [n]: y Scan for Oracle ASM disks on boot (y/n) [y]: y Writing Oracle ASM library driver configuration: done  Inicie o serviço: # oracleasm init  Veja o seu status: # oracleasm status
  156. 156. Oracle Instalação156 Instalação do Grid Infrastructure:  Crie os discos ASM. # oracleasm createdisk ASMDISK01 /dev/sdd1 # oracleasm createdisk ASMDISK02 /dev/sde1 # oracleasm createdisk ASMDISK03 /dev/sdf1 # oracleasm createdisk ASMDISK04 /dev/sdg1 # oracleasm createdisk ASMDISK05 /dev/sdh1 # oracleasm createdisk ASMDISK06 /dev/sdi1  Execute os comandos: # oracleasm scandisks # oracleasm listdisks
  157. 157. Oracle Instalação157 Instalação do Grid Infrastructure:  Descompacte os arquivos de instalação: # su - oracle $ unzip linuxamd64_12102_grid_1of2.zip $ unzip linuxamd64_12102_grid_2of2.zip  Acesse o diretório e execute o runInstaller. $ cd grid/ $ ./runInstaller
  158. 158. Oracle Instalação158 Instalação do Grid Infrastructure:
  159. 159. Oracle Instalação159 Instalação do Grid Infrastructure:
  160. 160. Oracle Instalação160 Instalação do Grid Infrastructure:
  161. 161. Oracle Instalação161 Instalação do Grid Infrastructure:
  162. 162. Oracle Instalação162 Instalação do Grid Infrastructure:
  163. 163. Oracle Instalação163 Instalação do Grid Infrastructure:
  164. 164. Oracle Instalação164 Instalação do Grid Infrastructure:
  165. 165. Oracle Instalação165 Instalação do Grid Infrastructure:
  166. 166. Oracle Instalação166 Instalação do Grid Infrastructure:
  167. 167. Oracle Instalação167 Instalação do Grid Infrastructure:
  168. 168. Oracle Instalação168 Instalação do Grid Infrastructure:
  169. 169. Oracle Instalação169 Instalação do Grid Infrastructure:
  170. 170. Oracle Instalação170 Instalação do Grid Infrastructure:
  171. 171. Oracle Instalação171 Instalação do Grid Infrastructure:
  172. 172. Oracle Instalação172 Instalação do Grid Infrastructure:
  173. 173. Oracle Instalação173 Instalação do Grid Infrastructure:
  174. 174. Oracle Instalação174 Instalação do Grid Infrastructure:
  175. 175. Oracle Instalação175 Instalação do Grid Infrastructure:
  176. 176. Oracle Instalação176 Instalação do Grid Infrastructure:
  177. 177. Oracle Instalação177 Instalação do Grid Infrastructure:
  178. 178. Oracle Instalação178 Gerenciando o ASM:
  179. 179. Oracle Instalação179 Gerenciando o ASM:
  180. 180. Oracle Instalação180 Gerenciando o ASM:
  181. 181. Oracle Instalação181 Instalação do software de banco de dados:  Descompacte os arquivos de instalação: # su - oracle $ unzip linuxamd64_12102_database_1of2.zip $ unzip linuxamd64_12102_database_2of2.zip  Acesse o diretório e execute o runInstaller. $ cd database/ $ ./runInstaller
  182. 182. Oracle Instalação182 Instalação do software de banco de dados:
  183. 183. Oracle Instalação183 Instalação do software de banco de dados:
  184. 184. Oracle Instalação184 Instalação do software de banco de dados:
  185. 185. Oracle Instalação185 Instalação do software de banco de dados:
  186. 186. Oracle Instalação186 Instalação do software de banco de dados:
  187. 187. Oracle Instalação187 Instalação do software de banco de dados:
  188. 188. Oracle Instalação188 Instalação do software de banco de dados:
  189. 189. Oracle Instalação189 Instalação do software de banco de dados:
  190. 190. Oracle Instalação190 Instalação do software de banco de dados:
  191. 191. Oracle Instalação191 Instalação do software de banco de dados:
  192. 192. Oracle Instalação192 Instalação do software de banco de dados:
  193. 193. Oracle Instalação193 Instalação do software de banco de dados:
  194. 194. Agenda 194  Introdução.  Sistemas Operacionais.  Storage.  Oracle.  Preparação do SO.  Instalação.  Configuração.  Gerenciamento & Manutenção.
  195. 195. Oracle Configuração195 Criação da instancia de banco de dados:  Acerte as variáveis de ambiente para o caminho da instalação do banco de dados: [oracle@localhost ~]$ . oraenv ORACLE_SID = [oracle] ? ORDT ORACLE_HOME = [/home/oracle] ? /u02/app/oracle/product/12.1.0/dbhome_1/ The Oracle base has been set to /u02/app/oracle  Uma instancia de banco de dados pode ser criada:  Pelo dbca (ferramenta gráfica)  Pelo dbca –silente (em modo texto, sem GUI)  Direto no SQL*Plus (manualmente)
  196. 196. Oracle Configuração196 Criação da instancia de banco de dados:  Digite o comando dbca
  197. 197. Oracle Configuração197 Criação da instancia de banco de dados:
  198. 198. Oracle Configuração198 Criação da instancia de banco de dados:
  199. 199. Oracle Configuração199 Criação da instancia de banco de dados:
  200. 200. Oracle Configuração200 Criação da instancia de banco de dados:
  201. 201. Oracle Configuração201 Criação da instancia de banco de dados:
  202. 202. Oracle Configuração202 Criação da instancia de banco de dados: oracle_4U
  203. 203. Oracle Configuração203 Criação da instancia de banco de dados:
  204. 204. Oracle Configuração204 Criação da instancia de banco de dados:
  205. 205. Oracle Configuração205 Criação da instancia de banco de dados:
  206. 206. Oracle Configuração206 Criação da instancia de banco de dados:
  207. 207. Oracle Configuração207 Criação da instancia de banco de dados:
  208. 208. Oracle Configuração208 Criação da instancia de banco de dados:
  209. 209. Oracle Configuração209 Criação da instancia de banco de dados:
  210. 210. Oracle Configuração210 Criação da instancia de banco de dados:
  211. 211. Oracle Configuração211 Criação da instancia de banco de dados:
  212. 212. Oracle Configuração212 Criação da instancia de banco de dados:  Tudo pronto. Parabéns seu banco está no ar!!!
  213. 213. Agenda 213  Introdução.  Sistemas Operacionais.  Storage.  Oracle.  Preparação do SO.  Instalação.  Configuração.  Gerenciamento & Manutenção.
  214. 214. Gerenciamento & Manutenção214  Nesta etapa do treinamento você vai aprender:  Arquitetura do banco de dados.  Gerenciamento da Instancia.  Monitoramento e Performance.  Automação de Tarefas.  Backup Restore & Recover.  Tecnologias de Flashback.  Utilidades.
  215. 215. Gerenciamento & Manutenção215  Nesta etapa do treinamento você vai aprender:  Arquitetura do banco de dados.  Gerenciamento da Instancia.  Monitoramento e Performance.  Automação de Tarefas.  Backup Restore & Recover.  Tecnologias de Flashback.  Utilidades.
  216. 216. Gerenciamento & Manutenção216
  217. 217. Gerenciamento & Manutenção217 Sessões & Conexões:  Conexão: Uma comunicação física entre um processo de usuário e um processo de servidor, através da rede.  Processo de usuário: Qualquer ferramenta cliente que se conecte ao Oracle SQL*Plus, SQL Developer, um executável, uma classe Java etc...  Processo de servidor: Processo gerado no SO do servidor, dedicado a atender as requisições de um processo de usuário.
  218. 218. Gerenciamento & Manutenção218 Sessões & Conexões:  Se conexão é o contexto de comunicação físico, a sessão é o contexto da comunicação lógico:
  219. 219. Gerenciamento & Manutenção219 Instancias dedicadas vs compartilhadas: Dedicado Compartilhado
  220. 220. Gerenciamento & Manutenção220 A instancia de banco de dados:  Depois de completamente instalado e em seu estado de funcionamento pleno, um banco de dados Oracle pode ser divido em duas partes:  Lógica: “Instância”, um conjunto de processos em execução, somados a estruturas de memória que juntos e orquestrados formam a instancia de banco de dados e lhe disponibilizam as funcionalidades do banco de dados:  Física: “Banco de dados”, tudo aquilo você vê (datafiles, controlfiles, arquivos de redo log, archivelogs e etc...) que são partes onde de fato a informação é gravada.
  221. 221. Gerenciamento & Manutenção221 Arquitetura do banco de dados: Datafiles Redo logs Archive logs PMON SMON RECO DBWR LGWR ARCH CKPT ASMB RBAL Processos de background Estruturas de memória SAG/PGA
  222. 222. Principais componentes da parte lógica (resumo): Gerenciamento & Manutenção222
  223. 223. Gerenciamento & Manutenção223 Processos de Background: Processo de background Função DBWR Atualiza os blocos “sujos” do database buffer cache com os datafiles. LGWR Escreve nos arquivos de redo as informações do buffer de rede log. CKPT Atualiza os controlfiles e o cabeçalho dos datafiles com meta-dados das gravações feitas pelo processo de DBWR ARCH Reescreve as informações dos redo logs para os archivelogs PMON Recover quando uma conexão falha, liberação de recursos quando alguém se desconecta, avaliar os dispatchers em servidores “shared” SMON Recovery automático da instancia quando necessário, libera segmentos temporários. RECO Resolve transações “duvidosas” em ambientes com transações distribuídas.
  224. 224. Gerenciamento & Manutenção224 Processos de Background: Processo de background Função MMON Gerenciamento/Agendamento de atividades, AWR, ADDM MMAN Gerenciador dos processos de memória MMNL Gerenciamento de atividades de coletas de dados, relatório ASH, coleta de estatísticas e etc. RVWR Escreve os dados relativos as operações de flashback para a fast recovery área. ASMB Conexão da instancia ASM com o storage, para gerenciamento e estatísticas RBAL Coordena a atividade de re balanceamento dentro dos disk groups
  225. 225. Gerenciamento & Manutenção225 Processos de Background:
  226. 226. Gerenciamento & Manutenção226 Estruturas de memória (SGA/PGA):  A parte da instancia relacionada a memória, está dividida basicamente em duas partes principais:  SGA: System Global Area  Engrenagem principal do banco de dados, maior parte das atividades ocorrem aqui.  PGA: Program Global Area:  Reserva de memória para ser distribuída entre as sessões conectadas a instancia.
  227. 227. Gerenciamento & Manutenção227 Estruturas de memória (SGA/PGA):  A memória alocada pa- ra a instancia, será dividi- da entre SGA e PGA na seguinte proporção: 60% SGA e 40% PGA.
  228. 228. Gerenciamento & Manutenção228 Program Global Area (PGA):  Quando uma conexão é estabelecida, uma fatia da PGA é dedicada a ela, para que possa executar suas tarefas, essa fatia, é composta de:  Então, com várias conexões em uma instancia de produção o cenário seria este:
  229. 229. Gerenciamento & Manutenção229 Program Global Area (PGA):  “SQL Work Area”, é usada para processamento de instrução SQL como por exemplo “sort operations”, “hash join”, “bitmap merge” e etc.  “private SQL Area”, armazena seus códigos SQL e PL/SQL, dados de sua sessão, bem como os valores de suas bind variables.
  230. 230. Gerenciamento & Manutenção230 System Global Area (SGA):  A SGA é uma área de memoria dedicada a instancia e não é compartilhada diretamente entre as sessões, pois é dividida em subpartes internas.  É possível ver o valores atribuídos à sua SGA e alguns componentes na hora do “startup” da instancia.
  231. 231. Gerenciamento & Manutenção231 Principais Componentes da SGA:  Database buffer cache: Armazena os blocos de dados mais acessados, desde o startup da instancia.  Possui opções como: keep, recycle e nk buffer cache.
  232. 232. Gerenciamento & Manutenção232 Principais Componentes da SGA:  Buffer de redo log: Buffer circular, responsável por armazenar os vetores de entrada das alterações no banco de dados como DDL e DML.
  233. 233. Gerenciamento & Manutenção233 Principais Componentes da SGA:  Shared Pool: Um pool de memória responsável pelos diversos tipos de cache existentes dentro da instancia, como dicionário de dados, parâmetro de sistema e etc.
  234. 234. Gerenciamento & Manutenção234 Principais Componentes da SGA:  Shared Pool: Exemplo de processamento.
  235. 235. Gerenciamento & Manutenção235 Principais Componentes da SGA:  Large Pool: Pool de memória responsável por operações de I/O internas e massivas como backup/restore, Oracle XA e etc. É utilizado como uma extensão da shared pool.
  236. 236. Gerenciamento & Manutenção236 Principais Componentes da SGA:  Java Pool: Pool de memória responsável por persistir códigos java compilados dentro da JVM do próprio Oracle.  Streams Pool: Buffer de memória que armazena as filas de mensagens capturadas pelo Oracle Streams. Este pool de memória só será utilizado se junto com seu banco de dados, você também usar o Oracle Streams.
  237. 237. Gerenciamento & Manutenção237 Interação instancia x banco de dados:  Tudo que é memória e “processo” dentro do SO, se perderá ao desligar a instancia e para que isso não aconteça, periodicamente a instancia efetua um processo de sincronismo entre as áreas de “memória” e “disco”.  O sincronismo é um processo completamente assíncrono das atividades dos usuários.
  238. 238. Gerenciamento & Manutenção238 Componentes físicos:  Datafiles: Arquivos de dados, ou seja os arquivos onde as informações dos usuários são guardadas, tabelas, índices e etc.  Redo log: Arquivos que contem os vetores de alteração no banco de dados, produzidos pelos comandos dos usuários, INSERT, UPDATE, DELETE, CREATE, ALTER DROP e etc.  Controlfiles: Arquivos responsáveis por garantir a sincronia dos dados entre a parte logica e a parte fisica das operações dentro da instancia.
  239. 239. Gerenciamento & Manutenção239 Overview: O banco de dados foi projetado para que a maior parte das operações feitas por usuários sejam executadas em memória, visto que o custo desta execução sempre será melhor se comparado com os discos. De maneira assíncrona, os processos de background garantem o sincronismo entre as áreas de memória e disco.
  240. 240. Gerenciamento & Manutenção240 SPFILE:  Arquivo binário, que registra os parâmetros de configurações da instancia do banco de dados como, memória, numero máximo de processos permitidos, localização dos controlfiles e etc.  Este arquivo é carregado para memória no momento da inicialização da instancia.  É possível alterar parâmetros mesmo depois de a instancia iniciada, alguns são dinâmicos, outros são estáticos.
  241. 241. Gerenciamento & Manutenção241 Conhecendo o local de seu SPFILE:
  242. 242. Gerenciamento & Manutenção242 Consultado um parâmetro em seu SPFILE:
  243. 243. Gerenciamento & Manutenção243 Consultando um parâmetro em seu SPFILE:
  244. 244. Gerenciamento & Manutenção244 Alterando um parâmetro em seu SPFILE: Parâmetro dinâmico, pode ser alterado sem reiniciar a instanciar Parâmetro estático, Para alterar deve-se reiniciar a instancia Use a clausula “scope” e reinicialize a instancia alteração tenha efeito.
  245. 245. Gerenciamento & Manutenção245 Uma cópia de seu SPFILE:
  246. 246. Gerenciamento & Manutenção246 Alert Log:  Cada banco de dados tem um arquivo de log (.xml e .log) que registra em ordem cronológica as atividades do banco de dados como:  Erros internos como: ORA-600, ORA-1578 e ORA-60  Operações administrativas: STARTUP, SHUTDOWN, ALTER SYSTEM, ARCHIVE, RECOVER.  Erros de processos de dispatchers servidores compartilhados  Erros de atualização automática de materialized views
  247. 247. Gerenciamento & Manutenção247 Exemplo de um Alert Log:
  248. 248. Gerenciamento & Manutenção248  Nesta etapa do treinamento você vai aprender:  Arquitetura do banco de dados.  Gerenciamento da Instancia.  Monitoramento e Performance.  Automação de Tarefas.  Backup Restore & Recover.  Tecnologias de Flashback.  Utilidades.
  249. 249. Gerenciamento & Manutenção249 Startup:  Nomount: Inicia a instancia, mas não monta o banco, está etapa normalmente é usada para operações de recuperação de controlfile.  Mount: Inicia a instancia, monta o banco, mas não permite conexões, usada para atividades do DBA apenas (restore/recover por exemplo).  Open: Inicia a instancia, monta e abre o banco, neste estágio permitido o acesso a todos os usuários.  Force: Força a instancia a iniciar e executar um recover completo após um shutdown inadequado ou inesperado.
  250. 250. Gerenciamento & Manutenção250 Startup exemplos: SQL> startup; SQL> startup nomount; SQL> startup mount; SQL> startup force;
  251. 251. Gerenciamento & Manutenção251 Shutdown:  Normal: Aguarda todos os usuários encerrarem suas atividades e desconectarem-se da instancia.  Transactional: Permite as transações correntes terminarem seu trabalho, mas não permite o inicio de outras atividades.  Immediate: Encerra as transações imediatamente e executa o rollback.  Abort: O mesmo que retirar seu servidor da fonte de energia.
  252. 252. Gerenciamento & Manutenção252 Shutdown exemplos: SQL> shutdown normal; SQL> shutdown transactional; SQL> shutdown immediate; SQL> shutdown abort;
  253. 253. Gerenciamento & Manutenção253 Configurando conexões: listener.ora tnsnames.ora LISTENER
  254. 254. Gerenciamento & Manutenção254 Configurando conexões:  listener.ora: Arquivo texto residente no servidor, onde se define as propriedades de conexão entre cliente e servidor como: hostname, porta e etc.  tnsnames.ora: Arquivo texto residente no cliente onde se define o caminho (hostname, porta, nome do banco de dados e protocolo de rede) para chegar ao banco de dados através da tradução de um “alias”
  255. 255. Gerenciamento & Manutenção255 Configurando conexões (Programas):  $ netca
  256. 256. Gerenciamento & Manutenção256 Configurando conexões (Programas):  $ lsnrctl start|stop|status
  257. 257. Gerenciamento & Manutenção257 Listener estático (exemplo):
  258. 258. Gerenciamento & Manutenção258 Listener dinâmico (exemplo):
  259. 259. Gerenciamento & Manutenção259 Configurando conexões (Programas):  $ netmgr
  260. 260. Gerenciamento & Manutenção260 TNSNAMES.ora (exemplo): Alias de conexão Hostname do servidor Porta de conexão Instancia de banco de dados
  261. 261. Gerenciamento & Manutenção261 Métodos de conexão:  Quatro maneiras de se conectar ao Oracle: Easy connect Local Naming Directory Naming
  262. 262. Gerenciamento & Manutenção262 Métodos de conexão:  Easy Connect  Conexão padrão.  Não preciso e configuração no lado client.  Suportado apenas por TCP/IP (não há SSL). SQL> connect user/pass@hostname:porta/instance
  263. 263. Gerenciamento & Manutenção263 Métodos de conexão:  Local Naming  Precisa de uma arquivo no client (TNSNAMES.ora)  Suporta todos os protocolos Oracle Net  Suporta conexões avançadas.  Failover  Source routing  Load Balancing TNSNAMES.ora SQL> connect user/pass@alias
  264. 264. Gerenciamento & Manutenção264 Métodos de conexão:  Directory Naming  Precisa de um servidor LDAP com um arquivo de resolução de nomes:  Oracle Internet Directory  Microsoft Active Directory  Suporta todos os protocolos Oracle Net e opções de conexões avançadas. TNSNAMES.ora LDAP
  265. 265. Gerenciamento & Manutenção265 Testes de conexão (tnsping):
  266. 266. Gerenciamento & Manutenção266 Database Link: CREATE DATABASE LINK <remote_global_name> CONNECT TO <user> IDENTIFIED BY <pwd> USING '<connect_string_for_remote_db>'; REMOTE_DB = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP) (HOST = host02.example.com)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl.example.com) ) ) CONNECT hr/hr@orcl; CREATE DATABASE LINK remote CONNECT TO HR IDENTIFIED BY HR USING 'REMOTE_ORCL'; SELECT * FROM employees@remote
  267. 267. Gerenciamento & Manutenção267 Prática:  Crie um novo listener com as configurações:  Porta: 1525.  Nome: meu_listener.  Crie um tnsnames.ora com as configurações:  Instancia: ORDT.  Porta: 1525.  No hostname de seu ambiente de estudos.  Aliás: TESTE  Conecte-se na sua instancia pelo alias de seu tnsnames.
  268. 268. Gerenciamento & Manutenção268 Armazenamento (Banco de dados): Memória (SGA/PGA) PMON SMON RECO DBWR LGWR ARCH CKPT ASMB RBAL Processos de Background Instancia Banco de Dados Datafiles Redo logs Controlfiles
  269. 269. Gerenciamento & Manutenção269 Tablespaces: SQL> create table curso( Id_curso number, Nome_curso varchar2(30) ); SQL> Insert into curso values (1, ‘DBA Essential’); SQL> Insert into curso values (2, ‘Oracle RAC’); SQL> commit; 3 21 curso
  270. 270. Gerenciamento & Manutenção270 Tablespaces:  Representação lógica das unidades de armazenamento das informações (dados) de uma instancia.  Uma tablespace pode ser:  Permanente.  Temporária.  UNDO.
  271. 271. Gerenciamento & Manutenção271 Tablespaces:
  272. 272. Gerenciamento & Manutenção272 Tablespaces Padrão:  SYSTEM: Informações do próprio banco de dados (dicionário de dados), usuários SYS e SYSTEM.  UNDO: “Imagens antigas”, blocos recentemente alterados, para garantir a consistência de leitura.  TEMP: Processamento de transações, tudo aquilo que não cabe na PGA.  SYSAUX: Informações auxiliares, repositório do Enterprise Manager:  USERS: Tablespace permanente default, se você não atribuir uma tablespace a um usuário, o que ele criar será armazenado aqui.
  273. 273. Gerenciamento & Manutenção273 Para criar uma tablespace você precisa:  Um nome para a tablespace.  Uma localização para a tablespace.  Um tamanho para a tablespace. SQL> CREATE TABLESPACE [nome] DATAFILE [local] [tamanho]; SQL> CREATE TABLESPACE ORADATA DATAFILE ‘+DATA/ORDT/oradata_01.dbf’ SIZE 10M; SQL> CREATE TABLESPACE ORADATA DATAFILE ‘/u02/oradata_01.dbf’ SIZE 10M; Com ASM Sem ASM
  274. 274. Gerenciamento & Manutenção274 Manutenção de uma tablespace:  Adicionar mais datafiles.  Aumentar um datafile.  Modificar um datafile. SQL> ALTER TABLESPACE ORADATA ADD DATAFILE ‘/u02/oradata_02.dbf’ SIZE 10M SQL> ALTER DATABASE DATAFILE ‘/u02/oradata_01.dbf’ SIZE 10M RESIZE 20M; SQL> ALTER DATABASE DATAFILE ‘/u02/oradata_01.dbf’ SIZE 20M AUTOEXTEND ON NEXT 20M MAXSIZE 10G;
  275. 275. Gerenciamento & Manutenção275 Tablespace hierarquia lógica: Tabelas Índices Undo e etc... USERS, EXAMPLE +DADOS/ORDT/users01.dbf /u02/ordt/users01.dbf
  276. 276. Gerenciamento & Manutenção276 Tablespace vs segmentos: 1 comando: 1 segmento  1 comando: N segmentos 
  277. 277. Gerenciamento & Manutenção277 Tablespace hierarquia lógica:
  278. 278. Gerenciamento & Manutenção278 Tablespaces, dicas:  Uma tablespace por usuário.  Não use datafiles muito grandes (ex: + 16GB).  Use nomes concisos (que associem a TBS ao usuário).  Se possível, separe suas tablespaces por tipo de dados, ex: uma para dados, outra para índices e outra para LOBs e em discos distintos também.  Use tablespaces com crescimento automático.  Monitore o crescimento de suas tablespaces.  Crie métricas para ser alertado, sobre uso das tablespaces.
  279. 279. Gerenciamento & Manutenção279 Tablespace de UNDO:  Tablespace “cíclica”, para garantir a leitura consistente das informações durante uma transação, fonte de dados para o comando rollback, flashbacks e recuperar transações com erro. SQL> update curso set nome_curso….; TBS UNDO Database Buffer Cache A A B B
  280. 280. Gerenciamento & Manutenção280 Gerenciando a tablespace de UNDO: SQL> create undo tablespace undotbs_02 datafile ‘/oradata/undotbs_02.dbf’ size 2M autoextend on; SQL> alter tablespace undotbs_02 add datafile ‘/oradata/undotbs_03.dbf’ size 2M autoextend on; SQL> alter system set undo_tablespace=‘undotbs_02’;
  281. 281. Gerenciamento & Manutenção281 Gerenciando a tablespace de UNDO:  Monitoramento:
  282. 282. Gerenciamento & Manutenção282 OMF Oracle Managed File:  O que é? Capacidade do banco de dados simplificar a gestão de arquivos da instancia diretamente no SO, exemplo datafiles, redo logs entre outros.  Para utilizar: SQL> alter system set DB_CREATE_FILE_DEST=‘+DATA’; SQL> alter system set DB_CREATE_ONLINE_LOG_DEST_1=‘+FRA’; SQL> alter system set DB_RECOVERY_FILE_DEST=‘FRA’;
  283. 283. Gerenciamento & Manutenção283 OMF Oracle Managed File:
  284. 284. Gerenciamento & Manutenção284 Views de performance dinâmicas (v$):  Views que contém informações a respeito da performance do banco de dados.  Seus dados estão 100% persistidos em memória e em tempo real.  A maior parte destas views só estarão disponíveis quando o banco de dados estiver aberto.  Sempre começarão com v$...  Procure maiores detalhes com o select: SQL> select * from dict where table_name like ‘V$%’;
  285. 285. Gerenciamento & Manutenção285 Views de performance dinâmicas (v$):  Exemplos: SQL> select disk_number, total_mb, free_mb from v$asm_disk; SQL> select username, machine, osuser from v$session; SQL> select sql_text, cpu_time from v$sql where cpu_time > 50000; SQL> select instance_name, status, startup_time from v$instance; SQL> select dbid, name, cdb, flashback_on, current_scn from v$database;
  286. 286. Gerenciamento & Manutenção286 Dicionário de dados:  Repositório dos meta-dados do banco de dados.  Está acessível a todos usuários (respeitando suas devidas permissões).  Não é acessível diretamente, é acessado através de views do dicionário de dados.  Para conhecer o dicionário de dados, você pode executar o select: SQL> select * from dictionary order by 1;
  287. 287. Gerenciamento & Manutenção287 Dicionário de dados:  As views do dicionário de dados sempre vão começar com USER_*, ALL_* e DBA_*, onde o significado é:  USER_*: Informações do usuário corrente.  ALL_*: Informações do usuário e demais objetos que tem acesso/permissão.  DBA_*: Informações de todos os usuários da instancia de banco de dados, este acesso é exclusivo para quem tem privilégios administrativos. SQL> select * from user_tables; -- minhas tabelas SQL> select * from all_tables; -- minhas tabelas e demais --tabelas que tenho acesso.
  288. 288. Gerenciamento & Manutenção288 Dicionário de dados: SQL> select username, account_status, default_tablespace from dba_users Where account_status =‘OPEN’; SQL> select sequence_name, min_value, max_value, increment_by from user_sequences; SQL> select owner, table_name, num_rows, last_analyzed from dba_tables; SQL> select owner, trigger_name, table_name, status from dba_triggers; SQL> select owner, object_name, type, droptime, can_undrop from dba_recyclebin;
  289. 289. Gerenciamento & Manutenção289 Oracle Enterprise Manager:  Console de administração (web) do banco de dados.  Monitoramento.  Diagnostico.  Administração.  Manutenção.  11g: OEM Database Control, OEM Grid Control.  12c: OEM Express, OEM Cloud Control.  Quando Database Control e Express, pode ser criado junto com a instancia, ou a qualquer momento posterior.
  290. 290. Gerenciamento & Manutenção290 Oracle Enterprise Manager: host1 Host2 URL2URL1 OEM Database Control & Express URL ÚNICA Host2Host1 Host3 Host4 OEM Grid / Cloud Control
  291. 291. Gerenciamento & Manutenção291 Oracle Enterprise Manager Grid/Cloud:  Arquitetura:
  292. 292. Gerenciamento & Manutenção292 Oracle Enterprise Manager (DBCA):
  293. 293. Gerenciamento & Manutenção293 Oracle Enterprise Manager:  Criando OEM manualmente:
  294. 294. Gerenciamento & Manutenção294 Oracle Enterprise Manager:  Excluindo o OEM.
  295. 295. Gerenciamento & Manutenção295 Oracle Enterprise Manager:  Iniciando o serviço.  Para acessar: https://hostname:port/em
  296. 296. Gerenciamento & Manutenção296 Oracle Enterprise Manager:  Iniciando/parando o serviço. $ emctl start dbconsole Oracle Enterprise Manager 11g Database Control Release 11.2.0.1.0 Copyright (c) 1996, 2009 Oracle Corporation. All rights reserved. http://host01.example.com:1158/em/console/aboutApplication Starting Oracle Enterprise Manager 11g Database Control ........started. ------------------------------------------------------------------ Logs are generated in directory /u01/app/oracle/product/11.2.0/db_home1/host01.example.com_orcl/sysman/ log $ emctl stop dbconsole Oracle Enterprise Manager 11g Database Control Release 11.2.0.1.0 Copyright (c) 1996, 2009 Oracle Corporation. All rights reserved. https://host01.example.com:1158/em/console/aboutApplication Stopping Oracle Enterprise Manager 11g Database Control ... ... Stopped.
  297. 297. Gerenciamento & Manutenção297 Oracle Enterprise Manager:
  298. 298. Gerenciamento & Manutenção298 Oracle Enterprise Manager: Home page OEM 12c Express • Overview da instancia • Desempenho • Consumo de recursos: • CPU • Memória • Armazenamento
  299. 299. Gerenciamento & Manutenção299 Oracle Enterprise Manager: Configuração > Memória Informações inerentes ao consu- mo de memória do servidor: • PGA • Histórico de alocação • Top Consumers
  300. 300. Gerenciamento & Manutenção300 Oracle Enterprise Manager: Desempenho > Hub de Desempenho Aqui há informações mais detalhadas sobre o consumo de memória da instancia. • Processos em execução • Memória dedicada a instancia • Database buffer cache • Large Pool • Shared Pool • Java Pool • Fluxo de I/O
  301. 301. Gerenciamento & Manutenção301 Oracle Enterprise Manager: Desempenho > Hub de Desempenho Aqui há informações mais detalhadas sobre o consumo de memória da instancia. • Processos em execução • Memória dedicada a instancia • Database buffer cache • Large Pool • Shared Pool • Java Pool • Fluxo de I/O
  302. 302. Gerenciamento & Manutenção302 Oracle Enterprise Manager: Armazenamento > Tablespaces Informações a respeito do consu- das tablespaces em seu storage.
  303. 303. Gerenciamento & Manutenção303 Oracle Enterprise Manager:
  304. 304. Gerenciamento & Manutenção304 Oracle Enterprise Manager:
  305. 305. Gerenciamento & Manutenção305 Oracle Enterprise Manager:
  306. 306. Gerenciamento & Manutenção306 Oracle Enterprise Manager:
  307. 307. Gerenciamento & Manutenção307 Oracle Enterprise Manager:
  308. 308. Gerenciamento & Manutenção308 Oracle Enterprise Manager:
  309. 309. Ainda tem mais! 309 Esta é só uma amostra do material que está sendo construído, em breve publicaremos atualizações do material completo deste treinamento incluindo as datas disponíveis para realizar o treinamento: Siga-nos nas mídias sociais e mantenha-se por dentro das novidades! @oradatact /oradata

×