Nós estávamos aguardando o último PSU para o Oracle Database 11.2.0.4 no Oracle Database Cloud Service e notamos que estava disponível. Então vamos ver como podemos atualizar nosso Oracle Database na nuvem.
Primeiro vamos até a página inicial do nosso database para verificar se há alguma atualização disponível. Como você pode ver, no campo “Administration”, há um patch disponível. Clicamos para que possamos ver os detalhes do patch.
É o PSU 11.2.0.4.161018! Nós podemos ler o arquivo readme do patch em questão quando clicamos no link “Readme”. No lado direito há um menu de ação, onde podemos executar o “Precheck” (verificação de pré-requisitos) e também temos opção “Patch” que utilizaremos para aplicar o patch. Primeiro vamos executar o “Precheck” para termos certeza que nós não teremos qualquer problema quando aplicarmos o patch.
Esta não foi a primeira vez que aplicamos um patch no Oracle Database Cloud Service. Na nossa tentativa anterior, 2 ou 3 meses atrás, nós aplicamos o último PSU sem nenhum problema. Foi um processo bastante tranquilo e levou menos de uma hora, mas desta vez os pré-requisitos falharam.
Infelizmente, através desta página não temos nenhum detalhe disponível do porquê os pré-requisitos falharam. Então vamos tentar com utilitários de linha de comando. A Oracle Cloud disponibiliza a ferramenta dbaascli para administrar o Database Service, incluindo aplicar patch, mas algumas opções necessitam de privilégios de root. Então efetuamos acesso ao Cloud Server via SSH como usuário “opc” – este usuário tem direito a sudo, então conseguimos trocar para o usuário root. Sendo assim executamos o comando “dbaasclidbpatchm -run -prereq” para verificar a disponibilidade do patch do banco de dados.
Sem sorte! Encontramos uma thread na Oracle Community dizendo que precisávamos atualizar o pacote dbaascli.
Então tentamos verificar a versão:
Não tão informativo inicialmente! Então abrimos o arquivo de log e constatamos que há uma atualização disponível para o dbaascli:
De acordo com a documentação da Oracle, nós precisamos atualizar o pacote dbaascli utilizando ele mesmo:
http://docs.oracle.com/en/cloud/paas/database-dbaas-cloud/csdbi/update-cloud-tooling-using-dbpatchm.html
Um alerta foi apresentado, mas parece que foi atualizado. Executamos “dbaasclidbpatch -run -list_tools” novamente e verificamos que realmente estava atualizado.
Usamos então o dbaascli para verificar novamente os pré-requisitos e vimos a mesma mensagem que antes. Então achamos que não havia funcionado. Para termos certeza, tentamos verificar os pré-requisitos através do Oracle Database Cloud Service Console e desta vez tivemos sucesso.
Tentamos comparar os logs da execução anterior do dbaascli e notamos que mesmo usando a console web para aplicar o patch ou verificar os pré-requisitos de um patch estamos suscetíveis a erros, então descobrimos na primeira tentativa que houve uma falha por conta da versão da ferramenta.
Nós encontramos onde os logs ficam localizados. Você pode encontrar os logs do processo de patch do banco de dados no diretório /var/opt/oracle/log/dbpatchm/.
Clicamos em “Patch” no botão de ação. Imediatamente tivemos que incluir uma observação e informar se gostaríamos de forçar a aplicação do patch, deixamos a mensagem “É muito fácil aplicar um patch :D” e então clicamos no botão “Patch”.
Aguardamos aproximadamente 25 minutos para ver o último PSU aplicado e o banco de dados rodando novamente.
Esperamos que este artigo seja útil para você e convidamos a acompanhar os próximos artigos a respeito da Oracle Cloud.
Gokhan Atil é um Administrador de Banco de Dados Senior com experiência prática em Oracle, PostgreSQL, Microsoft SQL Server, MySQL e bancos de dados NoSQL. Ele é um Oracle Certified Professional (OCP) em EBS R12, Oracle 10g e 11g. Ele também é especialista em Oracle Enterprise Manager. Gokhan é membro fundador e vice presidente do Turkish Oracle UserGroup (TROUG). Elejápalestrou em várias conferências internacionais incluindo o Oracle Open World. Ele é co-autor do livro "Expert Oracle Enterprise Manager 12c" e possuium blog relacionado a Oracle desde 2008: www.gokhanatil.com. Gokhanrecebeu o título de Oracle ACE em 2011 e Oracle ACE Director em 2016 por suacontribuições positivas à comunidade Oracle.
Joel Pérez é um DBA (Oracle ACE Director, Maximum Availability OCM, OCM CloudAdmin. & OCM12c/11g) Especialista commais de 16 anos de experiência real no mundo da tecnologia Oracle, especializada naconcepção e implementação de soluções: Nuvem, alta disponibilidade, recuperação de desastres, Upgrades, replicação e toda a área relacionada com bancos de dados Oracle. Joel serve como "Chief Technologist & MAA, TEM Architect" para www.Enmotech.com Yunhe ENMO (Beijing) Technology Co. Ltd. Beijing, China. OCM Perfil Joel Perez: http://education.oracle.com/education/otn/JoelPerez.htm
Franky Weber Faust atua como administrador de banco de dados Oracle e MySQL no PagSeguro, tem 26 anos, é graduado em Tecnologia em Bancos de Dados e iniciou sua carreira trabalhando num projeto internacional da Volkswagen com os bancos de dados DB2 da IBM, SQL Server da Microsoft e tambémcom o Oracle e desde o início direcionou seus estudos para as tecnologias Oracle. É especialista em tecnologias de Alta Disponibilidade como RAC, Dataguard e GoldenGate e compartilha seus conhecimentos no blog loredata.com.br. Possui as certificações OCE SQL, OCA 11g, OCP 12c, OCS RAC 12c e OCS Linux 6.
Este artigo foi revisto pela equipe de produtos Oracle e está em conformidade com as normas e práticas para o uso de produtos Oracle.