Diagnosticando e Solucionando Problemas dos Sistemas Exadata Cloud Infrastructure

Estes tópicos abrangem alguns problemas comuns que você pode encontrar e como resolvê-los.

Problemas Conhecidos do Exadata Cloud Infrastructure

Problemas gerais conhecidos.

Falha no Dimensionamento Off-line da CPU

Descrição: O dimensionamento off-line de CPU falha com o seguinte erro:
** CPU Scale Update **An error occurred during module execution. Please refer to the log file for more information

Causa: Após o provisionamento de um cluster de VMs, o arquivo /var/opt/oracle/cprops/cprops.ini, que é gerado automaticamente pelo banco de dados como serviço (DBaaS) não é atualizado com os parâmetros common_dcs_agent_bindHost e common_dcs_agent_port e isso faz com que o dimensionamento off-line de CPU falhe.

Ação: Como usuário root, adicione manualmente as entradas a seguir no arquivo /var/opt/oracle/cprops/cprops.ini.
common_dcs_agent_bindHost=<IP_Address>
common_dcs_agent_port=7070
Observação

O valor common_dcs_agent_port é 7070 sempre.
Execute o seguinte comando para obter o endereço IP:
netstat -tunlp | grep 7070
Por exemplo:
netstat -tunlp | grep 7070
tcp 0 0 <IP address 1>:7070 0.0.0.0:* LISTEN 42092/java
tcp 0 0 <IP address 2>:7070 0.0.0.0:* LISTEN 42092/java

Você pode especificar um dos dois endereços IP, <IP address 1> ou <IP address 2>, para o parâmetro common_dcs_agent_bindHost.

Falha ao Adicionar uma VM a um Cluster de VMs

Descrição: Ao adicionar uma VM a um cluster de VMs, você poderá encontrar o seguinte problema:
[FATAL] [INS-32156] Installer has detected that there are non-readable files in oracle home.
CAUSE: Following files are non-readable, due to insufficient permission oracle.ahf/data/scaqak03dv0104/diag/tfa/tfactl/user_root/tfa_client.trc
ACTION: Ensure the above files are readable by grid.

Causa: O instalador detectou um arquivo de rastreamento ilegível, oracle.ahf/data/scaqak03dv0104/diag/tfa/tfactl/user_root/tfa_client.trc criado pelo Autonomous Health Framework (AHF) no Oracle home que causa a falha na adição de uma VM no cluster.

O AHF foi executado como root criou um arquivo trc com propriedade root, que o usuário grid não pode ler.

Ação: Certifique-se de que os arquivos de rastreamento AHF possam ser lidos pelo usuário grid antes de adicionar VMs a um cluster de VMs. Para corrigir o problema de permissão, execute os seguintes comandos como root em todas as VMs do cluster de VMs existentes:
chown grid:oinstall /u01/app/19.0.0.0/grid/srvm/admin/logging.properties
chown -R grid:oinstall /u01/app/19.0.0.0/grid/oracle.ahf*
chown -R grid:oinstall /u01/app/grid/oracle.ahf*

Diagnosticar e Solucionar Problemas de Conectividade de Rede

Para determinar se um Cluster de VMs está configurado corretamente para acessar a Rede de Serviços do OCI (Oracle Cloud Infrastructure), execute as etapas a seguir em cada máquina virtual no Cluster de VMs.

Verificação de validação para conectividade de gerenciamento de Identidades e Acessos:

  • ssh para uma máquina virtual no Cluster de VMs ExaDB-D como usuário opc.
  • Execute o comando: curl https://identity.<region>.oci.oraclecloud.com aqui <region> corresponde à região do OCI na qual o Cluster de VMs está implantado. Se o Cluster de VMs estiver implantado na região Ashburn, você precisará usar "us-ashburn-1" para <region>. O comando curl agora se parecerá com curl https://identity.us-ashburn-1.oci.oraclecloud.com.
  • Se sua VCN (Rede Virtual na Nuvem) estiver configurada corretamente para acessar a Rede de Serviços do OCI, você obterá uma resposta imediata semelhante a
    {
     "code" : "NotAuthorizedOrNotFound",
     "message" : "Authorization failed or requested resource not found."
    } 
  • A sessão ssh ficará suspensa e acabará ocorrendo timeout se sua rede não estiver configurada para acessar os Serviços do OCI
  • Dependendo da configuração da sua VCN, será necessário seguir as etapas descritas na seção de ação abaixo para configurar o acesso à Rede de Serviços do OCI.

Verificação de validação da conectividade do OSS (Object Storage Service):

  • Estabeleça uma conexão ssh com uma máquina virtual no Cluster de VMs ExaDB-D como usuário opc.
  • Execute o comando: curl https://objectstorage.<region>.oraclecloud.com, aqui <region> corresponde à região do OCI na qual seu Cluster de VMs está implantado. Se o Cluster de VMs estiver implantado na região Ashburn, você precisará usar "us-ashburn-1" para <region>. O comando curl agora terá a aparência de curl https://objectstorage.us-ashburn-1.oraclecloud.com .
  • Se sua VCN (Rede Virtual na Nuvem) estiver configurada corretamente para acessar a Rede de Serviços do OCI, você obterá uma resposta imediata semelhante a
    {
     "code" : "NotAuthorizedOrNotFound",
     "message" : "Authorization failed or requested resource not found."
    }
  • A sessão ssh ficará suspensa e acabará ocorrendo timeout se sua rede não estiver configurada para acessar os Serviços do OCI
  • Dependendo da configuração da sua VCN, será necessário seguir as etapas descritas na seção de ação abaixo para configurar o acesso à Rede de Serviços do OCI.

Ação:

Após configurar a VCN para acessar a rede de Serviços do OCI seguindo as instruções acima, execute as etapas nas seções Verificação de validação para garantir que você tenha estabelecido conectividade com a rede de Serviços do OCI pelo seu Cluster de VMs.

Informações Adicionais :

Você pode encontrar instruções para atualizar um gateway de serviço aqui (https://docs.oracle.com/en-us/iaas/Content/Network/Tasks/servicegateway.htm#switch_label)

Falhas de Backup no Exadata Database Service on Dedicated Infrastructure

Se o backup gerenciado pelo Exadata não for concluído com sucesso, você poderá usar os procedimentos neste tópico para diagnosticar e corrigir o problema.

As causas mais comuns de falha de backup são as seguintes:

  • O host não pode acessar o serviço Object Storage
  • A configuração do banco de dados no host não está correta

As informações a seguir são organizadas pela condição de erro. Caso já saiba a causa, você poderá ignorar a seção com a solução sugerida. Caso contrário, use o procedimento em Determinando o Problema para começar.

Determinando o Problema

Na Console, um backup do banco de dados com falha exibe o status Com falha ou fica suspenso no estado Backup em Andamento ou Criando.

Caso a mensagem de erro não contenha informações suficientes para indicar uma solução, você poderá coletar mais informações usando dbaascli e exibindo os arquivos de log. Em seguida, consulte a seção aplicável neste tópico para obter uma solução.

Os backups de banco de dados podem falhar durante o estágio de configuração do RMAN ou durante um job de backup do RMAN em execução. As tarefas de configuração do RMAN incluem validar a conectividade de destino de backup, a instalação do módulo de backup e as alterações de configuração do RMAN. Os arquivos de log examinados dependem do estágio em que a falha ocorre.

  1. Faça log-on no host como o usuário oracle.
  2. Verifique o arquivo de log aplicável:
    • Para identificar o ID do job de um backup automatizado, use o comando dbaascli database backup --dbname <dbname> --showHistory. Isso exibe o histórico de todos os jobs de backup, incluindo seus IDs de job correspondentes.
    • Os logs de job estão disponíveis em /var/opt/oracle/log/dtrs/jobs/, nomeados usando o formato <job_id>.log. Se um job falhar, um log de depuração correspondente <job_id>.debug também será gerado no mesmo local.
    • Você pode encontrar os logs de execução do comando RMAN correspondentes para operações de backup, recuperação e configuração no diretório /var/opt/oracle/log/<dbname>/dtrs/rman/bkup.
Observação

Verifique os arquivos de log em todos os nós de computação do sistema de BD Exadata.

Problemas do Agente de Serviço do Banco de Dados

Seu banco de dados Oracle Cloud Infrastructure faz uso de uma estrutura de agentes para permitir que você gerencie seu banco de dados por meio da plataforma na nuvem. Use o seguinte procedimento para verificar e reiniciar o dbcsagent.

Às vezes, pode ser necessário reiniciar o programa dbcsagent se ele tiver o status de interromper/em espera para resolver uma falha de backup. Veja o arquivo /opt/oracle/dcs/log/dcs-agent.log para identificar problemas com o agente.

  1. Em um prompt de comando, verifique o status do agente:
    systemctl status dbcsagent.service
  2. Se o agente estiver no estado interromper/aguardando, tente reiniciá-lo:
    systemctl start dbcsagent.service
  3. Verifique o status do agente novamente para confirmar se ele tem o status interromper/executando:
    systemctl status dbcsagent.service

Problemas de Conectividade do Serviço Object Store

O backup do seu banco de dados no Oracle Cloud Infrastructure Object Storage exige que o host possa se conectar ao ponto final Swift aplicável.

Embora a Oracle controle as credenciais reais do usuário Swift para o bucket de armazenamento de backups gerenciados, verificar a conectividade geral com o Object Storage em sua região é um bom indicador de que a conectividade do armazenamento de objetos não é o problema. Você pode testar essa conectividade utilizando outro usuário Swift.

  1. Crie um usuário Swift em sua tenancy. Consulte Como Trabalhar com Tokens de Autenticação.
  2. Com o usuário criado na etapa anterior, use o comando a seguir para verificar se o host pode acessar o armazenamento de objetos.
    curl -v -X HEAD -u <user_ID>:'<auth_token>' https://swiftobjectstorage.<region_name>.oraclecloud.com/v1/<object_storage_namespace>
    Consulte Perguntas mais Frequentes sobre o serviço Object Storage para obter a região correta a ser usada. Consulte Noções Básicas de Namespaces do Serviço Object Storage para obter informações sobre seu namespace do serviço Object Storage.
  3. Se você não conseguir se conectar ao armazenamento de objetos, consulte o tópico Pré-requisitos para Backups no Exadata Cloud Service para obter informações sobre como configurar a conectividade do armazenamento de objetos.

Problemas do Host

Uma ou mais das seguintes condições no host do banco de dados podem fazer com que os backups falhem.

Se um comando interativo, como oraenv, ou qualquer comando que possa retornar uma mensagem de erro ou advertência, for adicionado ao arquivo .bash_profile para o usuário grid ou oracle, as operações do serviço Database, como backups automáticos, poderão ser interrompidas e não ser concluídas. Verifique o arquivo .bash_profile para esses comandos e remova-os.

As operações de backup exigem espaço no diretório /u01 do sistema de arquivos host. Use o comando df -h no host para verificar o espaço disponível para backups. Se o espaço do sistema de arquivos for insuficiente, você poderá remover os arquivos antigos de log e rastreamento para liberar espaço.

Talvez seu sistema não tenha a versão necessária do módulo de backup (opc_installer.jar). Consulte Não é possível usar Backups Gerenciados em seu Sistema de Banco de Dados para obter detalhes sobre esse problema conhecido. Para corrigir o problema, você pode seguir o procedimento nesta seção ou simplesmente atualizar seu sistema de banco de dados e o próprio banco de dados com o patch do pacote mais recente.

A personalização do arquivo de perfil do site ($ORACLE_HOME/sqlplus/admin/glogin.sql) pode causar falha nos backups gerenciados no Oracle Cloud Infrastructure. Especificamente, comandos interativos podem levar a falhas de backup. A Oracle recomenda não modificar esse arquivo para bancos de dados hospedados no Oracle Cloud Infrastructure.

Problemas do Banco de Dados

Um estado ou configuração incorreto do banco de dados pode levar a falhas de backup.

O banco de dados deve estar ativo e em execução (de preferência em todos os nós) enquanto o backup está em andamento.

Use o seguinte comando para verificar o estado do banco de dados e verifique se foram resolvidos quaisquer problemas que possam ter colocado o banco de dados em um estado incorreto:
srvctl status database -d <db_unique_name> -verbose
O sistema retorna uma mensagem incluindo o status da instância do banco de dados. O status da instância deve ser Open para que o backup seja bem-sucedido. Se o banco de dados não estiver em execução, use este comando para iniciá-lo:
srvctl start database -d <db_unique_name> -o open
Se o banco de dados estiver montado, mas não tiver o status Open, use os seguintes comandos para acessar o prompt de comando do SQL*Plus e defina o status como Open:
sqlplus / as sysdba
alter database open;

Ao provisionar um novo banco de dados, o modo de arquivamento é definido como ARCHIVELOG por padrão. Este é o modo de arquivamento obrigatório para operações de backup. Verifique a definição do modo de arquivamento para o banco de dados e altere-a para ARCHIVELOG, se aplicável.

Abra um prompt de comando do SQL*Plus e digite o seguinte comando:
select log_mode from v$database;
Caso precise definir o modo de arquivamento como ARCHIVELOG, inicie o banco de dados no status MOUNT (e não no status OPEN) e use o seguinte comando no prompt de comando do SQL*Plus:
alter database archivelog;

Confirme se o parâmetro db_recovery_file_dest aponta para +RECO e se o parâmetro log_archive_dest_1 está definido como USE_DB_RECOVERY_FILE_DEST.

Para bancos de dados RAC, uma instância deve ter o status MOUNT ao ativar o modo de log de arquivamento. Para ativar o modo de log de arquivamento para um banco de dados RAC, siga estas etapas:

  1. Faça shutdown de todas as instâncias de banco de dados:
    srvctl stop database -d
  2. Inicie uma das instâncias de banco de dados no estado de montagem:
    srvctl start instance -d <db_unique_name> -i <instance_name> -o mount
  3. Acesse o prompt de comando do SQL*Plus:
    sqlplus / as sysdba
  4. Ative o modo de log de arquivamento:
    alter database archivelog; 
    exit;
  5. Interrompa o banco de dados :
    srvctl stop instance -d <db_unique_name> -i <instance_name>
  6. Reinicie todas as instâncias de banco de dados
    srvctl start database -d <db_unqiue_name>
  7. No prompt de comando do SQL*Plus, confirme se o modo de arquivamento está definido como: ARCHIVELOG:
    select log_mode from v$database;
Os backups podem falhar quando a instância de banco de dados tem um processo archiver paralisado. Por exemplo, isso pode acontecer quando a FRA (área de recuperação flash) está cheia. Você pode verificar essa condição usando o comando srvctl status database -db <db_unique_name> -v. Se o comando retornar a seguinte saída, resolva o problema do processo archiver paralisado para que os backups possam ser bem-sucedidos:
Instance <instance_identifier> is running on node *<node_identifier>. Instance status: Stuck Archiver

Consulte ORA-00257: Erro do Archiver (ID do Documento 2014425.1) para obter informações sobre como resolver um processo archiver paralisado.

Depois de resolver o processo paralisado, o comando deverá retornar a seguinte saída:
Instance <instance_identifier> is running on node *<node_identifier>. Instance status: Open

Se o status da instância não mudar após a resolução do problema subjacente com o dispositivo ou recurso que está cheio ou indisponível, tente reiniciar o banco de dados usando o comando srvctl para atualizar o status do banco de dados no clusterware.

A edição de determinados parâmetros de configuração do RMAN pode levar a falhas de backup no Oracle Cloud Infrastructure. Para verificar a configuração do RMAN, use o comando show all no prompt de linha de comando do RMAN.

Consulte a lista a seguir de parâmetros para obter detalhes sobre as definições de configuração do RMAN que não devem ser alteradas para bancos de dados no Oracle Cloud Infrastructure.


CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 30 DAYS;

CONFIGURE CONTROLFILE AUTOBACKUP ON;

CONFIGURE DEVICE TYPE 'SBT_TAPE' PARALLELISM 5 BACKUP TYPE TO COMPRESSED BACKUPSET;

CONFIGURE CHANNEL DEVICE TYPE DISK MAXPIECESIZE 2 G;

CONFIGURE CHANNEL DEVICE TYPE 'SBT_TAPE' PARMS  'SBT_LIBRARY=/var/opt/oracle/dbaas_acfs/<db_name>/opc/libopc.so, ENV=(OPC_PFILE=/var/opt/oracle/dbaas_acfs/<db_name>/opc/opc<db_name>.ora)';

CONFIGURE ARCHIVELOG DELETION POLICY TO BACKED UP 1 TIMES TO 'SBT_TAPE';

CONFIGURE CHANNEL DEVICE TYPE DISK MAXPIECESIZE 2 G;

CONFIGURE ENCRYPTION FOR DATABASE ON;

Os backups do RMAN falharão quando um arquivo de wallet de armazenamento de objetos for perdido. O arquivo de wallet é necessário para ativar a conectividade com o armazenamento de objetos.

  1. Obtenha o nome do banco de dados com a falha de backup usando o SQL*Plus:
    show parameter db_name
  2. Determine o caminho do arquivo de parâmetros de configuração de backup que contém as informações da wallet do RMAN na linha de comando do Linux:

    locate opc_<database_name>.ora
    Por exemplo:
    
    find / -name "opctestdb30.ora" -print /var/opt/oracle/dbaas_acfs/testdb30/opc/opctestdb30.ora
  3. Encontre o caminho do arquivo da wallet no arquivo de parâmetros de configuração de backup inspecionando o valor armazenado no parâmetro OPC_WALLET. Para fazer isso, navegue até o diretório que contém o arquivo de parâmetros de configuração de backup e use o seguinte comando cat:
    cat opc<database_name>.ora
    Por exemplo:
    
    cd /var/opt/oracle/dbaas_acfs/testdb30/opc/
    ls -altr *.ora
    opctestdb30.ora
    cat opctestdb30.ora
    OPC_HOST=https://swiftobjectstorage.us-phoenix-1.oraclecloud.com/v1/dbbackupphx
    OPC_WALLET='LOCATION=file:/var/opt/oracle/dbaas_acfs/testdb30/opc/opc_wallet CREDENTIAL_ALIAS=alias_opc'
    OPC_CONTAINER=bUG3TFsSi8QzjWfuTxqqExample
    _OPC_DEFERRED_DELETE=false
  4. Confirme se o arquivo cwallet.sso existe no diretório especificado no parâmetro OPC_WALLET e certifique-se de que o arquivo tenha as permissões corretas. As permissões do arquivo devem ter o valor atual "600" (-rw-------). Use o seguinte comando:

    ls -ltr /var/opt/oracle/dbaas_acfs/<database_name>/opc/opc_wallet
    Por exemplo:
    
    ls -altr /var/opt/oracle/dbaas_acfs/testdb30/opc/opc_wallet
    -rw------- 1 oracle oinstall 0 Oct 29 01:59 cwallet.sso.lck
    -rw------- 1 oracle oinstall 111231 Oct 29 01:59 cwallet.sso
    

Falhas de Backup e Wallet de TDE

Aprenda a identificar a causa raiz de falhas da wallet de TDE e backup.

Para que as operações de backup funcionem, o arquivo $ORACLE_HOME/network/admin/sqlnet.ora deve conter o parâmetro ENCRYPTION_WALLET_LOCATION formatado exatamente da seguinte maneira:
ENCRYPTION_WALLET_LOCATION=(SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY=/var/opt/oracle/dbaas_acfs/<database_name>/tde_wallet)))
Use o comando cat para verificar a especificação de local da wallet de TDE. Por exemplo:
$ cat $ORACLE_HOME/network/admin/sqlnet.ora 
ENCRYPTION_WALLET_LOCATION=(SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY=/var/opt/oracle/dbaas_acfs/<database_name>/tde_wallet)))

Os backups do banco de dados falharão se a wallet de TDE não estiver no estado correto. Os seguintes cenários podem causar este problema:

Se o banco de dados foi iniciado usando o SQL*Plus e a variável de ambiente ORACLE_UNQNAME não foi definida, é porque a wallet não foi aberta corretamente.

Para corrigir o problema, inicie o banco de dados usando o utilitário srvctl:
srvctl start database -d <db_unique_name>

Em um ambiente multitenant para versões do Oracle Database que suportam o armazenamento de chaves no nível do PDB, cada PDB tem sua própria chave de criptografia principal. Para bancos de dados Oracle 18c, essa chave de criptografia é armazenada em um único armazenamento de chaves usado por todos os contêineres. (O Oracle Database 19c não suporta um armazenamento de chaves no nível do PDB.) Depois de criar ou conectar um novo PDB, crie e ative uma chave de criptografia principal para ele. Caso contrário, a coluna STATUS na view v$encryption_wallet mostrará o valor OPEN_NO_MASTER_KEY.

Para verificar o status da chave de criptografia principal e criar uma chave principal, faça o seguinte:

  1. Verifique a coluna STATUS na view v$encryption_wallet, conforme mostrado no seguinte exemplo:
    
    SQL> alter session set container=pdb2;
    Session altered.
    
    SQL> select WRL_TYPE,WRL_PARAMETER,STATUS,WALLET_TYPE from v$encryption_wallet;
    
    WRL_TYPE   WRL_PARAMETER                                   STATUS             WALLET_TYPE
    ---------- ----------------------------------------------- ------------------ -----------
    FILE       /var/opt/oracle/dbaas_acfs/testdb30/tde_wallet/ OPEN_NO_MASTER_KEY AUTOLOGIN
  2. Confirme se o PDB está no modo aberto READ WRITE e se ele não está restrito, conforme mostrado no seguinte exemplo:
    
    SQL> show pdbs
    
    CON_ID CON_NAME     OPEN MODE              RESTRICTED
    ------ ------------ ---------------------- ---------------
    2      PDB$SEED     READ ONLY              NO
    3      PDB1         READ WRITE             NO
    4      PDB2         READ WRITE             NO

    O PDB não pode ser aberto no modo restrito (a coluna RESTRICTED deve mostrar NO). Se no momento o PDB estiver no modo restrito, verifique as informações na view PDB_PLUG_IN_VIOLATIONS e resolva o problema antes de continuar. Para obter mais informações sobre a view PDB_PLUG_IN_VIOLATIONS e o status restrito, consulte o Oracle Multitenant Administrator's Guide para saber sobre banco de dados plugável para sua versão do Oracle Database.

  3. Crie e ative uma chave de criptografia principal para o PDB:

    • Defina o contêiner como PDB:
      ALTER SESSION SET CONTAINER = <pdb>;
    • Crie e ative uma chave de criptografia principal no PDB executando este comando:
      ADMINISTER KEY MANAGEMENT SET KEY USING TAG '<tag>' 
      FORCE KEYSTORE IDENTIFIED BY <keystore-password> WITH BACKUP USING '<backup_identifier>';

    Observe o seguinte:

    • A cláusula USING TAG é opcional e pode ser usada para associar uma tag à nova chave de criptografia principal.
    • A cláusula WITH BACKUP é opcional e pode ser usada para criar um backup do armazenamento de chaves antes da criação da nova chave de criptografia principal.

    Você também pode usar os comandos dbaascli dbaascli tde status e dbaascli tde rotate masterkey para investigar e gerenciar suas chaves.

  4. Verifique se o status da wallet foi alterado de OPEN_NO_MASTER_KEY para OPEN, consultando a view v$encryption_wallet, conforme mostrado na etapa 1.

Os parâmetros de configuração relacionados à wallet de TDE podem causar falha nos backups.

Confirme se o status da wallet é open e se o tipo de wallet é auto login verificando a view v$encryption_wallet. Por exemplo:

SQL> select status, wrl_parameter,wallet_type from v$encryption_wallet;

STATUS  WRL_PARAMETER                                  WALLET_TYPE
------- ---------------------------------------------- --------------
OPEN   /var/opt/oracle/dbaas_acfs/testdb30/tde_wallet/ AUTOLOGIN
Para PDBs (bancos de dados plugáveis), certifique-se de alternar para o contêiner apropriado antes de consultar a view v$encryption_wallet. Por exemplo:

$ sqlplus / as sysdba

SQL> alter session set container=pdb1;

Session altered.

SQL> select WRL_TYPE,WRL_PARAMETER,STATUS,WALLET_TYPE from v$encryption_wallet;

WRL_TYPE  WRL_PARAMETER                                   STATUS   WALLET_TYPE
--------- ----------------------------------------------- -------- -----------
FILE      /var/opt/oracle/dbaas_acfs/testdb30/tde_wallet/ OPEN     AUTOLOGIN
O arquivo da wallet de TDE (ewallet.p12) poderá causar falha nos backups se estiver ausente ou se tiver permissões ou propriedade do sistema de arquivos incompatíveis. Verifique o arquivo conforme mostrado no seguinte exemplo como usuário root:
# ls -altr /var/opt/oracle/dbaas_acfs/<database_name>/tde_wallet/ewallet.p12
total 76
-rw------ 1 oracle oinstall 5467 Oct 1 20:17 ewallet.p12

O arquivo da wallet de TDE deve ter permissões de arquivo com o valor octal "600" (-rw-------) e o proprietário desse arquivo deve fazer parte do grupo de sistemas operacionais oinstall.

O arquivo da wallet de log-in automático (cwallet.sso) poderá causar falha nos backups se estiver ausente ou se tiver permissões ou propriedade do sistema de arquivos incompatíveis. Verifique o arquivo conforme mostrado no seguinte exemplo como usuário root:

# ls -altr /var/opt/oracle/dbaas_acfs/<database_name>/tde_wallet/cwallet.sso
total 76
-rw------ 1 oracle oinstall 5512 Oct 1 20:18 cwallet.sso

O arquivo da wallet de log-in automático deve ter permissões de arquivo com o valor atual "600" (-rw-------) e o proprietário desse arquivo deve fazer parte do grupo de sistemas operacionais oinstall.

Diagnosticando e Solucionando Problemas do Oracle Data Guard

Aprenda a identificar e resolver problemas do Oracle Data Guard.

Ao diagnosticar e solucionar problemas do Oracle Data Guard, primeiro determine se o problema ocorre durante a configuração e inicialização do Data Guard ou durante a operação do Data Guard, quando os comandos do ciclo de vida são digitados. As etapas para identificar e resolver os problemas são diferentes, dependendo do cenário em que eles são usados.

Existem três operações do ciclo de vida: switchover, failover e restabelecimento. O broker do Data Guard é usado para todos esses comandos. A interface de linha de comando do broker (dgmgrl) é a principal ferramenta usada para identificar e solucionar os problemas. Embora você possa usar arquivos de log para identificar causas raiz, a ferramenta dgmgrl é mais rápida e fácil de usar para verificar e identificar um problema.

A configuração e a ativação do Data Guard envolvem várias etapas. Os arquivos de log são criados para cada etapa. Se alguma das etapas falhar, revise o arquivo de log relevante para identificar e corrigir o problema.

  • Validação do Cluster de VMs na nuvem principal e do banco de dados
  • Validação do Cluster de VMs na nuvem stand-by
  • Recriando e copiando arquivos para o banco de dados stand-by (arquivo de senha e wallets)
  • Criando o Data Guard por meio da Rede (Comande Duplicação do RMAN)
  • Configurando o broker do Data Guard
  • Finalizando a configuração

Usando arquivos de log para diagnosticar e solucionar problemas do Data Guard

As ferramentas usadas para identificar o problema e os locais dos arquivos de log relevantes são diferentes, dependendo do cenário em que elas são usadas.

Use os procedimentos a seguir para coletar arquivos de log relevantes para investigar problemas. Se não conseguir resolver o problema após investigar os arquivos de log, entre em contato com o My Oracle Support.

Observação

Ao preparar arquivos coletados para o Suporte Técnico da Oracle, agrupe-os em um arquivo compactado, como um arquivo ZIP.

Em cada nó de computação associado à configuração do Data Guard, colete arquivos de log pertencentes ao problema que você teve.

  • Arquivos de log do estágio de ativação (como aqueles que documentam a operação Criar Banco de Dados Stand-by) e os logs do correspondente sistema principal ou stand-by.
  • Arquivos de log do ID do job de ativação. Por exemplo: 23.
  • Locais de arquivos de log de ativação por estágio de ativação e sistema Exadata (principal ou stand-by)
  • Arquivos de log de nome do banco de dados (db_name ou db_unique_name, dependendo do caminho do arquivo).
Observação

Verifique todos os nós dos sistemas Exadata principal e stand-by correspondentes. Os comandos executados em um sistema podem ter sido executados em qualquer um de seus nós.

O Implantador do Data Guard (DGdeployer) é o processo que executa a configuração. Ao configurar o banco de dados principal, ele cria o arquivo /var/opt/oracle/log/<dbname>/dgdeployer/dgdeployer.log.

Esse log deve conter a causa raiz de uma falha ao configurar o banco de dados principal.

  • O log principal do utilitário de linha de comando dbaasapi é: /var/opt/oracle/log/dbaasapi/db/dg/<job_ID>.log. Procure entradas que contenham dg_api.
  • Um log stand-by do utilitário de linha de comando dbaasapi é: /var/opt/oracle/log/dbaasapi/db/dg/<job_ID>.log. Nesse log, procure entradas que contenham dg_api.
  • O outro log stand-by é: /var/opt/oracle/log/<dbname>/dgcc/dgcc.log. Este log é o log de configuração do Data Guard.
  • O ODCE (Oracle Cloud Deployment Engine) cria o arquivo /var/opt/oracle/log/<dbname>/ocde/ocde.log. Esse log deve conter a causa de uma falha na criação do banco de dados stand-by.
  • O utilitário de linha de comando dbaasapi cria o arquivo var/opt/oracle/log/dbaasapi/db/dg/<job_ID>.log. Procure entradas que contenham dg_api.
  • O arquivo de log de configuração do Data Guard é /var/opt/oracle/log/<dbname>/dgcc/dgcc.log.
  • DGdeployer é o processo que executa a configuração. Ele cria o arquivo /var/opt/oracle/log/<dbname>/dgdeployer/dgdeployer.log a seguir. Esse log deve conter a causa raiz de uma falha ao configurar o banco de dados stand-by.
  • O utilitário de linha de comando dbaasapi cria o arquivo /var/opt/oracle/log/dbaasapi/db/dg/<job_ID>.log. Procure entradas que contenham dg_api.
  • O log de configuração do Data Guard é /var/opt/oracle/log/<dbname>/dgcc/dgcc.log.

DGdeployer é o processo que executa a configuração. Ao configurar o Data Guard, ele cria o arquivo /var/opt/oracle/log/<dbname>/dgdeployer/dgdeployer.log. Esse log deve conter a causa raiz de uma falha ao configurar o banco de dados principal.

Em cada nó dos sites principal e stand-by, colete arquivos de log para o nome do banco de dados relacionado (db_name).

Observação

Verifique todos os nós nos sistemas Exadata principal e stand-by. Uma operação de gerenciamento do ciclo de vida pode impactar os sistemas principal e stand-by.
  • Log de alerta de banco de dados: /u02/app/oracle/diag/rdbms/<dbname>/<dbinstance>/trace/alert_<dbinstance>.log
  • Log do Data Guard Broker: /u02/app/oracle/diag/rdbms/<dbname>/<dbinstance>/trace/drc<dbinstance>.log
  • Arquivo de log de ferramentas na nuvem para o Data Guard: /var/opt/oracle/log/<dbname>/odg/odg.log

Diagnosticando e Solucionando Problemas do Processo de Configuração do Data Guard

Os erros a seguir podem ocorrer nas diferentes etapas do processo de configuração do Data Guard. Embora alguns erros sejam exibidos na Console, a maioria das causas raiz pode ser encontrada nos arquivos de log

A senha digitada para ativar o Data Guard não correspondeu à senha do administrador principal para o usuário SYS. Esse erro ocorre durante o estágio Validar Principal de ativação.

O banco de dados pode não estar em execução. Esse erro ocorre durante o estágio Validar Principal de ativação. Verifique com srvctl e sql no host se o banco de dados está ativo e em execução em todos os nós.

Não foi possível configurar o banco de dados principal. Comandos inválidos do Data Guard ou falha na reconfiguração do listener podem causar esse erro.

Não foi possível criar a wallet de TDE. Não foi possível preparar os arquivos do armazenamento de chaves (wallet) do Oracle TDE (Transparent Database Encryption) para transporte até o site stand-by. Esse erro ocorre durante o estágio de criação da Wallet de TDE da ativação. Um dos itens a seguir pode causar falha neste estágio:

  • Não foi possível acessar os arquivos da wallet de TDE
  • Os comandos de ativação não puderam criar um arquivo compactado contendo os arquivos da wallet

Procedimento de diagnóstico e solução de problemas:

  1. Certifique-se de que o cluster esteja acessível. Para verificar o status de um cluster, execute o seguinte comando:
    crsctl check cluster -all
  2. Se o cluster estiver desativado, execute o seguinte comando para reiniciá-lo:
    crsctl start crs -wait
  3. Se esse erro ocorrer quando o cluster estiver acessível, verifique os logs para criar a Wallet de TDE (estágio de ativação) para determinar a causa e a solução do erro.

O arquivo compactado que contém a wallet de TDE provavelmente não foi transmitido para o site stand-by. Uma nova tentativa geralmente resolve o problema.

  • Os sites principal e stand-by podem não ser capazes de estabelecer comunicação entre si para configurar o banco de dados stand-by. Esses erros ocorrem durante o estágio de configuração do banco de dados stand-by da ativação. Nesse estágio, as configurações são executadas no banco de dados stand-by, incluindo a duplicação do rman do banco de dados principal. Para resolver esse problema:
    1. Verifique o status de conectividade dos sites principal e stand-by.
    2. Assegure-se de que o host possa se comunicar pela porta 1521 com todas as portas. Verifique a configuração de rede, incluindo NSGs (Grupos de Segurança de Rede), Listas de Segurança de Rede e a configuração de pareamento remoto de VCN, se aplicável. A melhor maneira de testar a comunicação entre o host e outros nós é acessar os bancos de dados usando o SQL*PLUS, de principal para stand-by e de stand-by para principal.
  • Os VIPs ou listeners SCAN talvez não estejam em execução. Use o teste acima para ajudar a identificar o problema.

Possíveis causas:

  • VIPs ou listeners SCAN podem não estar em execução. Você pode confirmar esse problema usando os comandos a seguir em qualquer nó do cluster.
    • [grid@exa1-****** ~]$ srvctl status
                  scan
    • [grid@exa1-****** ~]$ srvctl status
                    scan_listener
  • Os bancos de dados podem não estar acessíveis. Você pode confirmar esse problema tentando estabelecer conexão usando um alias existente do Oracle Net.

Procedimento de diagnóstico e solução de problemas:

  1. Como usuário do Sistema Operacional oracle, verifique a existência de um alias do Oracle Net para o CDB (banco de dados contêiner). Procure um alias em $ORACLE_HOME/network/admin/<dbname>/tnsnames.ora.

    O exemplo a seguir mostra uma entrada para um banco de dados contêiner denominado db12c:

    cat $ORACLE_HOME/network/admin/db12c/tnsnames.ora 
    DB12C = (DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = exa1-*****-scan.********.******.******.com)(PORT = 1521)) 
    (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = db12c.********.******.******.com) 
    (FAILOVER_MODE = (TYPE = select) (METHOD = basic))))
  2. Verifique se você pode usar o alias para se conectar ao banco de dados. Por exemplo, como sysdba, digite o seguinte comando:
    sqlplus sys@db12c

Uma possível causa desse erro é que as senhas do usuário sys ou system do Oracle Database para o banco de dados e para a wallet de TDE talvez não sejam iguais. Para comparar as senhas:

  1. Conecte-se ao banco de dados como usuário sys e verifique o status do TDE em
    V$ENCRYPTION_WALLET
    .
  2. Conecte-se ao banco de dados como usuário systeme verifique o status do TDE em
    V$ENCRYPTION_WALLET
    .
  3. Atualize as senhas aplicáveis para que correspondam. Faça log-in no host do sistema como opc e execute os seguintes comandos:
    1. Para alterar a senha SYS:
      sudo dbaascli database changepassword --dbname <database_name>
    2. Para alterar a senha da wallet de TDE:
      sudo dbaascli tde changepassword --dbname <database_name>

Para possíveis causas e soluções de problemas da wallet de TDE, consulte Wallet de TDE e Falhas de Backup.

Quando os comandos de switchover, failover e restabelecimento são executados, várias mensagens de erro podem ocorrer. Consulte a documentação do Oracle Database para obter essas mensagens de erro.

Observação

A Oracle recomenda o uso da interface de linha de comando (dgmgrl) do broker do Data Guard para validar as configurações.

  1. Como Usuário Oracle, conecte-se ao banco de dados principal ou stand-by com dgmgrl e verifique a configuração e o banco de dados:
    dgmgrl sys/<pwd>@<database>
    DGMGRL> VALIDATE CONFIGURATION VERBOSE
    DGMGRL> VALIDATE DATABASE VERBOSE <PRIMARY>
    DGMGRL> VALIDATE DATABASE VERBOSE <STANDBY>
  2. Consulte a documentação do Oracle Database para verificar a respectiva mensagem de erro. Por exemplo:
    • ORA-16766: O redo apply foi interrompido.
    • ORA-16853: O atraso para aplicação excedeu o limite especificado.
    • ORA-16664: Não é possível receber o resultado de um membro (no banco de dados stand-by).
    • ORA-12541: TNS: não há listener (no banco de dados principal)

Para saber a causa e a solução, analise os erros nas Mensagens de Erro do Banco de Dados.

Falhas de Aplicação de Patch nos Sistemas Exadata Cloud Infrastructure

As operações de aplicação de patch podem falhar por diversos motivos. Geralmente, uma operação falha porque um nó de banco de dados está inativo, não há espaço suficiente no sistema de arquivos ou a máquina virtual não pode acessar o armazenamento de objetos.

Determinando o Problema

Na Console, você pode identificar uma operação de aplicação de patch com falha, exibindo o histórico de um sistema Exadata Cloud Infrastructure ou de um banco de dados individual.

Um patch que não foi aplicado com sucesso exibe o status Failed e inclui uma breve descrição do erro que causou a falha. Se a mensagem de erro não contiver informações suficientes para indicar uma solução, use a CLI do banco de dados e os arquivos de log para coletar mais dados. Em seguida, consulte a seção aplicável neste tópico para obter uma solução.

Diagnóstico e Solução de Problemas

Diagnostique os problemas mais comuns que podem ocorrer durante o processo de aplicação de patch de qualquer um dos componentes do Exadata Cloud Infrastructure.

Problemas na VM do Servidor de Banco de Dados

Uma ou mais das condições a seguir na VM do servidor de banco de dados podem fazer com que as operações de aplicação de patch falhem.

Problemas de Conectividade na VM do Servidor de Banco de Dados

O conjunto de ferramentas da nuvem depende da configuração correta de rede e conectividade entre as máquinas virtuais de um determinado cluster de VMs. Se a configuração não for definida corretamente, isso poderá resultar em falhas em todas as operações que exigem processamento entre nós. Um exemplo pode não ser capaz de fazer download dos arquivos necessários para aplicar um determinado patch.

Conforme o caso, você pode executar as seguintes ações:

  • Verifique se a configuração de DNS está correta para que os endereços das máquinas virtuais relevantes possam ser resolvidos no cluster de VMs.
  • Consulte os logs relevantes do Conjunto de Ferramentas da Nuvem, conforme instruções na seção Obtendo Assistência Adicional, e entre em contato com o Suporte Técnico da Oracle para obter mais ajuda.
Problemas do Oracle Grid Infrastructure

Uma ou mais das condições a seguir no Oracle Grid Infrastructure pode fazer com que as operações de aplicação de patch falhem.

O Oracle Grid Infrastructure está Inativo

O Oracle Clusterware permite que os servidores se comuniquem uns com os outros de modo que possam funcionar como unidade coletiva. O programa de software do cluster deve estar ativo e em execução no Cluster de VMs para que as operações de aplicação de patch sejam concluídas. Às vezes, pode ser necessário reiniciar o Oracle Clusterware para resolver uma falha de aplicação de patch.

Nesses casos, verifique o status do Oracle Grid Infrastructure da seguinte forma:
./crsctl check cluster
CRS-4537: Cluster Ready Services is online
CRS-4529: Cluster Synchronization Services is online
CRS-4533: Event Manager is online
Se o Oracle Grid Infrastructure estiver inativo, reinicie executando os seguintes comandos:
crsctl start cluster -all
crsctl check cluster
Problemas nos Bancos de Dados Oracle

Um estado incorreto do banco de dados pode levar a falhas de aplicação de patch.

O Oracle Database está Inativo

O banco de dados deve estar ativo e em execução em todos os nós ativos para que as operações de aplicação de patch possam ser concluídas com sucesso no cluster.

Use o seguinte comando para verificar o estado do banco de dados e verifique se foram resolvidos quaisquer problemas que possam ter colocado o banco de dados em um estado incorreto:
srvctl status database -d db_unique_name -verbose

O sistema retorna uma mensagem incluindo o status da instância do banco de dados. O status da instância deve ser Aberto para que a operação de patch seja bem-sucedida.

Se o banco de dados não estiver em execução, use este comando para iniciá-lo:
srvctl start database -d db_unique_name -o open

Obtendo Assistência Adicional

Se não foi possível resolver o problema usando as informações deste tópico, execute os procedimentos a seguir para coletar informações relevantes sobre o banco de dados e de diagnóstico. Depois de obter essas informações, entre em contato com o Suporte Técnico da Oracle.

Tópicos Relacionados

Coletando Logs do Conjunto de Ferramentas da Nuvem

Use os arquivos de log relevantes que possam ajudar o Suporte Técnico da Oracle a investigar e resolver melhor um determinado problema.

Logs do DBAASCLI

/var/opt/oracle/log/dbaascli
  • dbaascli.log

Coletando Diagnósticos da Oracle

Para coletar as informações e os logs de diagnóstico relevantes da Oracle, execute o comando dbaascli diag collect.

Para obter mais informações sobre o uso desse utilitário, consulte Conjunto de Ferramentas do DBAAS: Usando o dbaascli para Coletar Logs do Conjunto de Ferramentas da Nuvem e Executar uma Verificação de Integridade do Conjunto de Ferramentas da Nuvem.

O Banco de Dados Stand-by Falha ao Reiniciar após o Switchover na Configuração do Oracle Data Guard do Oracle Database 11g

Descrição: Após a execução do switchover, o novo banco de dados stand-by (antigo principal) permanece desligado e falha ao reiniciar.

Ação: Após executar o switchover, faça o seguinte:

  1. Reinicie o banco de dados stand-by usando o comando srvctl start database -db <standby dbname>.
  2. Recarregue o listener como usuário grid em todos os nós de cluster principal e stand-by.
    • Para recarregar o listener usando alta disponibilidade, faça download do patch 25075940 e aplique-o ao home do Grid e, em seguida, execute lsnrctl reload -with_ha.
    • Para recarregar o listener, execute lsrnctl reload.

Após recarregar o listener, verifique se os serviços <dbname>_DGMGRL foram carregados no listener usando o comando lsnrctl status.

Para fazer download do patch 25075940

  1. Efetue Log-in em My Oracle Support.
  2. Clique em Patches e Atualizações.
  3. Selecione Número do Bug na lista drop-down Número/Nome ou Número do Bug (Simples).
  4. Informe o número do bug 34741066 e clique em Pesquisar.
  5. Nos resultados da pesquisa, clique no nome do patch mais recente.

    Você será redirecionado para a página Patch 34741066: LSNRCTL RELOAD -WITH_HA FAILED TO READ THE STATIC ENTRY IN LISTENER.ORA.

  6. Clique em Fazer Download.

Falha Intermitente na Criação do PDB Quando Vários PDBs São Criados em Paralelo

Descrição: A criação do PDB pode falhar para o subconjunto de PDBs quando vários PDBs estão sendo criados em paralelo.

Causa: A criação do PDB pode notar o seguinte erro intermitentemente.
ORA-03113: end-of-file on communication channel

Ação: Repita a criação do PDB com falha.