Solucionar problemas de banco de dados do Amazon RDS Custom para Oracle - Amazon Relational Database Service

Solucionar problemas de banco de dados do Amazon RDS Custom para Oracle

O modelo de responsabilidade compartilhada do RDS Custom fornece acesso ao nível de shell do SO e acesso pelo administrador do banco de dados. O RDS Custom executa recursos na sua conta, ao contrário do Amazon RDS, que executa recursos em uma conta do sistema. A extensão do acesso aumenta a responsabilidade. Nas seções a seguir, você vai aprender a solucionar problemas em instâncias de banco de dados do Amazon RDS Custom.

nota

Esta seção explica como solucionar problemas do RDS Custom para Oracle. Para solucionar problemas do RDS Custom para Oracle, consulte Solucionar problemas de banco de dados do Amazon RDS Custom para SQL Server.

Visualizar eventos personalizados do RDS Custom

O procedimento para visualizar eventos é o mesmo para instâncias de banco de dados do RDS Custom e do Amazon RDS. Para ter mais informações, consulte Visualizar eventos do Amazon RDS.

Para visualizar a notificação de eventos do RDS Custom utilizando a AWS CLI, execute o comando describe-events. O RDS Custom introduz vários novos eventos. As categorias dos eventos são as mesmas que as do Amazon RDS. Para visualizar a lista de eventos, consulte Categorias de eventos e mensagens de eventos do Amazon RDS.

O exemplo a seguir recupera detalhes dos eventos que ocorreram para a instância de banco de dados do RDS Custom especificada.

aws rds describe-events \ --source-identifier my-custom-instance \ --source-type db-instance

Assinar eventos do RDS Custom

O procedimento para assinar eventos é o mesmo para instâncias de banco de dados do RDS Custom e do Amazon RDS. Para ter mais informações, consulte Inscrever-se em notificações de eventos do Amazon RDS.

Para assinar a notificação de eventos do RDS Custom usando a CLI, execute o comando create-event-subscription. Inclua os seguintes parâmetros necessários:

  • --subscription-name

  • --sns-topic-arn

O exemplo a seguir cria uma assinatura para eventos de backup e recuperação para uma instância de banco de dados do RDS Custom na conta atual da AWS. As notificações são enviadas para um tópico do Amazon Simple Notification Service (Amazon SNS), especificado por --sns-topic-arn.

aws rds create-event-subscription \ --subscription-name my-instance-events \ --source-type db-instance \ --event-categories '["backup","recovery"]' \ --sns-topic-arn arn:aws:sns:us-east-1:123456789012:interesting-events

Solucionar problemas com a criação de uma versão de mecanismo personalizado para o RDS Custom for Oracle

Quando a criação da CEV falha, o RDS Custom emite RDS-EVENT-0198 com a mensagem Creation failed for custom engine version major-engine-version.cev_name e inclui detalhes sobre a falha. Por exemplo, o evento imprime arquivos ausentes.

A criação da CEV pode falhar devido aos seguintes problemas:

  • O bucket do Amazon S3 que contém seus arquivos de instalação não está na mesma região da AWS que a CEV.

  • Quando você solicita a criação da CEV em um Região da AWS pela primeira vez, o RDS Custom cria um bucket do S3 para armazenar recursos do RDS Custom (como artefatos de CEV, logs de AWS CloudTrail e logs de transações).

    A criação da CEV falhará se o RDS Custom não conseguir criar o bucket do S3. O autor da chamada não tem permissões do S3, conforme descrito em Etapa 5: Conceder as permissões necessárias ao usuário ou ao perfil do IAM, ou o número de buckets do S3 atingiu o limite.

  • O autor da chamada não tem permissões para obter arquivos do bucket do S3 que contém os arquivos da mídia de instalação. Essas permissões estão descritas em Etapa 7: Adicionar permissões do IAM necessárias.

  • Sua política do IAM tem uma condição aws:SourceIp. Certifique-se de seguir as recomendações em A AWS nega acesso à AWS com base no IP da fonte no Guia do usuário do AWS Identity and Access Management. Certifique-se também de que o autor da chamada tenha as permissões do S3 descritas em Etapa 5: Conceder as permissões necessárias ao usuário ou ao perfil do IAM.

  • Os arquivos da mídia de instalação listados no manifesto da CEV não estão no bucket do S3.

  • As somas de verificação SHA-256 dos arquivos de instalação são desconhecidas para o RDS Custom.

    Confirme se as somas de verificação SHA-256 dos arquivos fornecidos correspondem à soma de verificação SHA-256 no site da Oracle. Se as somas de verificação corresponderem, entre em contato com o AWS Support e forneça o nome da CEV com falha, o nome do arquivo e a soma de verificação.

  • A versão do OPatch é compatível com seus arquivos de patch. Você pode receber a seguinte mensagem: OPatch is lower than minimum required version. Check that the version meets the requirements for all patches, and try again. Para aplicar um patch Oracle, você deve usar uma versão compatível do utilitário OPatch. É possível encontrar a versão necessária do utilitário Opatch no arquivo readme do patch. Baixe o utilitário OPatch mais recente do My Oracle Support e tente criar sua CEV novamente.

  • Os patches especificados no manifesto da CEV estão na ordem incorreta.

É possível visualizar eventos do RDS no console do RDS (no painel de navegação, escolha Events) ou utilizando o comando AWS CLI da describe-events. A duração padrão é de 60 minutos. Se nenhum evento for retornado, especifique uma duração maior, como mostra o exemplo a seguir.

aws rds describe-events --duration 360

Atualmente, o serviço MediaImport, que importa arquivos do Amazon S3 para criar CEVs, não está integrado ao AWS CloudTrail. Portanto, se você ativar o registro de dados em log para o Amazon RDS no CloudTrail, as chamadas para o serviço MediaImport, como o evento CreateCustomDbEngineVersion não serão registradas.

Porém, é possível ver chamadas do gateway de API que acessa seu bucket do Amazon S3. Essas chamadas são provenientes do serviço MediaImport para o evento CreateCustomDbEngineVersion.

Corrigir configurações não compatíveis no RDS Custom para Oracle

Devido ao modelo de responsabilidade compartilhada, é sua responsabilidade corrigir problemas de configuração que colocam a instância de banco de dados do RDS Custom para Oracle no estado unsupported-configuration. Se o problema for com a infraestrutura da AWS, use o console ou a AWS CLI para corrigi-lo. Se o problema for com o sistema operacional ou a configuração do banco de dados, faça login no host para corrigi-lo.

nota

Esta seção explica como corrigir configurações não compatíveis no RDS Custom para Oracle. Para obter informações sobre o RDS Custom para SQL Server, consulte Corrigir configurações não compatíveis no RDS Custom para SQL Server.

As tabelas a seguir incluem descrições de notificações e eventos que o perímetro de suporte envia e como corrigi-los. Essas notificações e o perímetro de suporte estão sujeitos a alterações. Para obter informações básicas sobre o perímetro de suporte, consultePerímetro de suporte do RDS Custom. Para obter informações sobre descrições de eventos, consulte Categorias de eventos e mensagens de eventos do Amazon RDS.

ID do evento Configuração Mensagem de evento do RDS Ação

SP-O0000

Configuração manual incompatível

The RDS Custom DB instance status is set to [Unsupported configuration] because of: reason.

Para resolver esse problema, crie um caso no Suporte.

Recurso da AWS (infraestrutura)

ID do evento Configuração Mensagem de evento do RDS Ação

SP-O1001

Volumes do Amazon Elastic Block Store (Amazon EBS)

The following EBS volumes were added to EC2 instance ec2_id: volume_id. To resolve the issue, detach the specified volumes from the instance.

O RDS Custom cria dois tipos de volume do EBS, além do volume raiz criado com base na imagem de máquina da Amazon (AMI), e os associa à instância do EC2:

  • O volume binário onde os binários do software de banco de dados estão localizados

  • Os volumes de dados onde os arquivos do banco de dados estão localizados

Ao criar a instância de banco de dados, as configurações de armazenamento que você especifica configuram os volumes de dados.

O perímetro de suporte monitora o seguinte:

  • Os volumes iniciais do EBS criados com a instância de banco de dados ainda estão associados à instância.

  • Se os volumes iniciais do EBS ainda têm as mesmas configurações inicialmente definidas: tipo de armazenamento, tamanho, IOPS provisionadas e taxa de transferência de armazenamento.

  • Nenhum outro volume do EBS está anexado à instância de banco de dados.

Use o comando da CLI a seguir para comparar o tipo de volume dos detalhes do volume do EBS e os detalhes da instância de banco de dados do RDS Custom para Oracle:

aws rds describe-db-instances \ --db-instance-identifier db-instance-name | grep StorageType

SP-O1002

Volumes do Amazon Elastic Block Store (Amazon EBS)

EBS volume volume_id has been detached from EC2 instance [ec2_id]. You can't detach the original volume from this instance. To resolve the issue, re-attach volume_id to ec2_id.

O RDS Custom cria dois tipos de volume do EBS, além do volume raiz criado com base na imagem de máquina da Amazon (AMI), e os associa à instância do EC2:

  • O volume binário onde os binários do software de banco de dados estão localizados

  • Os volumes de dados onde os arquivos do banco de dados estão localizados

Ao criar a instância de banco de dados, as configurações de armazenamento que você especifica configuram os volumes de dados.

O perímetro de suporte monitora o seguinte:

  • Os volumes iniciais do EBS criados com a instância de banco de dados ainda estão associados à instância.

  • Se os volumes iniciais do EBS ainda têm as mesmas configurações inicialmente definidas: tipo de armazenamento, tamanho, IOPS provisionadas e taxa de transferência de armazenamento.

  • Nenhum outro volume do EBS está anexado à instância de banco de dados.

Use o comando da CLI a seguir para comparar o tipo de volume dos detalhes do volume do EBS e os detalhes da instância de banco de dados do RDS Custom para Oracle:

aws rds describe-db-instances \ --db-instance-identifier db-instance-name | grep StorageType

SP-O1003

Volumes do Amazon Elastic Block Store (Amazon EBS)

The original EBS volume volume_id attached to EC2 instance ec2_id has been modified as follows: size [X] to [Y], type [N] to [M], or IOPS [J] to [K]. To resolve the issue, revert the modification.

O RDS Custom cria dois tipos de volume do EBS, além do volume raiz criado com base na imagem de máquina da Amazon (AMI), e os associa à instância do EC2:

  • O volume binário onde os binários do software de banco de dados estão localizados

  • Os volumes de dados onde os arquivos do banco de dados estão localizados

Ao criar a instância de banco de dados, as configurações de armazenamento que você especifica configuram os volumes de dados.

O perímetro de suporte monitora o seguinte:

  • Os volumes iniciais do EBS criados com a instância de banco de dados ainda estão associados à instância.

  • Se os volumes iniciais do EBS ainda têm as mesmas configurações inicialmente definidas: tipo de armazenamento, tamanho, IOPS provisionadas e taxa de transferência de armazenamento.

  • Nenhum outro volume do EBS está anexado à instância de banco de dados.

Use o comando da CLI a seguir para comparar o tipo de volume dos detalhes do volume do EBS e os detalhes da instância de banco de dados do RDS Custom para Oracle:

aws rds describe-db-instances \ --db-instance-identifier db-instance-name | grep StorageType

SP-O1004

Status da instância do Amazon EC2

Automated recovery left EC2 instance [ec2_id] in an impaired state. To resolve the issue, see Troubleshooting instance recovery failures.

Para conferir o status de uma instância de banco de dados, use o console ou execute o seguinte comando AWS CLI:

aws rds describe-db-instances \ --db-instance-identifier db-instance-name |grep DBInstanceStatus

SP-O1005

Atributos da instância do Amazon EC2

EC2 instance [ec2_id] was modified as follows: attribute [att1] changed from [val-old] to [val-new], attribute [att2] changed from [val-old] to [val-new]. To resolve the issue, revert to the original value.

SP-O1006

Status da instância do Amazon EC2

EC2 instance [ec2_id] was terminated or can't be found. To resolve the issue, delete the RDS Custom DB instance.

O perímetro de suporte monitora notificações de alteração de estado da instância do EC2. A instância do EC2 deve estar sempre em execução.

Para excluir a instância de banco de dados
  1. Para conferir o status de uma instância de banco de dados, use o console ou execute o seguinte comando AWS CLI:

    aws rds describe-db-instances \ --db-instance-identifier db-instance-name |grep DBInstanceStatus
  2. Exclua a instância de banco de dados do RDS Custom para Oracle.

SP-O1007

Status da instância do Amazon EC2

EC2 instance [ec2_id] was stopped. To resolve the issue, start the instance.

O perímetro de suporte monitora notificações de alteração de estado da instância do EC2. A instância do EC2 deve estar sempre em execução.

Para reiniciar a instância de banco de dados
  1. Para conferir o status de uma instância de banco de dados, use o console ou execute o seguinte comando AWS CLI:

    aws rds describe-db-instances \ --db-instance-identifier db-instance-name |grep DBInstanceStatus
  2. Inicie a instância de banco de dados.

  3. Remonte os volumes binários e de dados.

SP-1008

Permissões do Amazon SQS

Permissions are missing for Amazon SQS. Check the permissions for the IAM instance profile, VPC endpoint policy, and dependent service connections, and then try again.

Você pode resolver esse problema garantindo que o perfil do IAM associado ao host tenha as seguintes permissões:

"SQS:SendMessage" "SQS:ReceiveMessage" "SQS:DeleteMessage" "SQS:GetQueueUrl"

SP-1009

Amazon Simple Queue Service (Amazon SQS)

The SQS queue [%s] was deleted and couldn't be recovered. To resolve this issue, recreate the queue.

Crie novamente a fila do Amazon SQS.

Sistema operacional

ID do evento Configuração Mensagem de evento do RDS Ação

SP-O2001

Status do agente do RDS Custom

The RDS Custom agent isn't running on EC2 instance [ec2_id]. Make sure the agent is running on [ec2_id].

No RDS Custom para Oracle, a instância de banco de dados sairá do perímetro de suporte se o agente do RDS Custom parar. O agente publica a métrica IamAlive para o Amazon CloudWatch a cada 30 segundos. Um alarme será acionado se a métrica não for publicada por 30 segundos. O perímetro de suporte também monitora o estado do processo do agente do RDS Custom no host a cada 30 minutos.

Para reiniciar o agente do RDS Custom
  1. Faça login no host e verifique se o agente do RDS Custom esteja em execução.

  2. Execute o comando a seguir para encontrar o status do agente.

    service rdscustomagent status
  3. Use o comando a seguir para iniciar o agente.

    service rdscustomagent start

Quando o agente do RDS Custom estiver sendo executado novamente, a métrica IamAlive será publicada no Amazon CloudWatch, e o alarme mudará para o estado OK. Essa opção notifica o perímetro de suporte em que o agente está em execução.

SP-O2002

Status do agente do AWS Systems Manager (agente do SSM)

The Systems Manager agent on EC2 instance [ec2_id] is unreachable. Make sure that you that have correctly configured the network, agent, and IAM permissions.

O SSM Agent sempre deve estar em execução. O agente do RDS Custom é responsável por garantir que o agente do Systems Manager esteja em execução. Se o SSM Agent foi encerrado e, depois, reiniciado, o agente do RDS Custom publica uma métrica no CloudWatch. O agente do RDS Custom tem um alarme na métrica definido para acionamento quando tiver ocorrido uma reinicialização em cada um dos três minutos anteriores. O perímetro de suporte também monitora o estado do processo do SSM Agent no host a cada 30 minutos.

Para ter mais informações, consulte Solucionar problemas com o SSM Agent.

SP-O2003

Status do agente do AWS Systems Manager (agente do SSM)

The Systems Manager agent on EC2 instance [ec2_id] crashed multiple times. For more information, see the SSM Agent troubleshooting documentation.

Para ter mais informações, consulte Solucionar problemas com o SSM Agent.

SP-O2004

Fuso horário do SO

The time zone on EC2 instance [ec2_id] was changed. To resolve this issue, revert the timezone to the previous setting of [previous-time-zone]. Then use an RDS options group to change the time zone.

A automação do RDS detectou que o fuso horário no host foi alterado sem o uso de um grupo de opções. Essa alteração em nível de host pode causar falhas na automação do RDS, portanto, a instância do EC2 é colocada no estado unsupported-configuration.

Para corrigir a configuração do fuso horário
  1. Faça login no host do EC2 e verifique o fuso horário do sistema operacional da seguinte forma:

    timedatectl
  2. Pause a automação do RDS Custom. Para obter mais informações, consulte Pausar e retomar sua instância de banco de dados do RDS Custom.

  3. Interrompa a instância de banco de dados.

  4. Reverta a alteração de fuso horário no sistema operacional.

  5. Inicie a instância de banco de dados.

  6. Retome a automação do RDS Custom.

A instância de banco de dados fica disponível em 30 minutos. Para não sair do perímetro no futuro, modifique o fuso horário por meio de um grupo de opções. Para obter mais informações, consulte Fuso horário da Oracle.

SP-O2005

Configurações de sudo

The sudo configurations on EC2 instance [ec2_id] lack necessary permissions. To resolve this issue, revert the recent changes to the sudo configurations.

O perímetro de suporte verifica se certos usuários do sistema operacional têm permissão para executar determinados comandos no host. Ele monitora as configurações sudo e as compara com o estado suportado.

Se as configurações de sudo não tiverem suporte, o RDS Custom tentará substituí-las e voltará ao estado anterior com suporte. Se a tentativa for bem-sucedida, o RDS Custom enviará a seguinte notificação:

O RDS Custom substituiu sua configuração com sucesso.

Se a substituição não for bem-sucedida, sua instância de banco de dados permanecerá no estado de configuração não suportado. Para resolver esse problema, reverta as alterações no arquivo sudoers.d/ ou corrija as permissões.

Como investigar as alterações nas configurações sudo
  1. Faça login no host.

  2. Execute o seguinte comando:

    visudo -c -f /etc/sudoers.d/individual_sudo_files
  3. Modifique as configurações de sudo conforme necessário.

Depois que o perímetro de suporte determina que as configurações de sudo têm suporte, a instância de banco de dados do RDS Custom para Oracle fica disponível em até 30 minutos.

SP-O2006

Acessibilidade do bucket do S3

RDS Custom automation can't download files from the S3 bucket on EC2 instance [ec2_id]. Check your networking configuration and make sure the instance allows connections to and from S3.

SP-2007

Versão da solução de software de alta disponibilidade

The HA solution of your instance differs from the expected version. To resolve this issue, create an AWS Support case.

Crie um caso no AWS Support:

Banco de dados

ID do evento Configuração Mensagem de evento do RDS Ação

SP-O3001

Destino de atraso de arquivo do banco de dados

The ARCHIVE_LAG_TARGET parameter on EC2 instance [ec2_id] is out of the recommended range value_range. To resolve the issue, set the parameter to a value within value_range.

O perímetro de suporte monitora o parâmetro de banco de dados ARCHIVE_LAG_TARGET para verificar se a hora da última restauração da instância de banco de dados está dentro de limites razoáveis.

Para alterar a meta de atraso para logs redo arquivados
  1. Faça login no host do EC2.

  2. Conectar-se à instância de banco de dados do RDS Custom para Oracle

  3. Altere o parâmetro ARCHIVE_LAG_TARGET para um valor de 60 a 7.200. Por exemplo, use a instrução SQL a seguir.

    ALTER SYSTEM SET ARCHIVE_LAG_TARGET=300 SCOPE=BOTH;

A instância de banco de dados fica disponível em 30 minutos.

SP-O3002

Função do Oracle Data Guard

The database role [role_name] isn't supported for Oracle Data Guard on EC2 instance [ec2_id]. To resolve the issue, set the DATABASE_ROLE parameter to either PRIMARY or PHYSICAL STANDBY.

O perímetro de suporte monitora a função de banco de dados atual a cada 15 segundos e envia uma notificação do CloudWatch quando ela tiver sido alterada. O parâmetro DATABASE_ROLE do Oracle Data Guard deve ser PRIMARY ou PHYSICAL STANDBY.

Para restaurar o perfil de banco de dados do Oracle Data Guard para um valor compatível
  1. Verifique o perfil do Oracle Data Guard executando a seguinte instrução:

    SELECT DATABASE_ROLE FROM V$DATABASE;
  2. Se a instância de banco de dados for autônoma, use qualquer uma das instruções a seguir para alterá-la de volta para o perfil PRIMARY:

    ALTER DATABASE COMMIT TO SWITCHOVER PRIMARY; ALTER DATABASE ACTIVATE STANDBY DATABASE;

    Se a instância de banco de dados for uma réplica, use a seguinte instrução para alterá-la de volta para o perfil PHYSICAL STANDBY:

    ALTER DATABASE CONVERT TO PHYSICAL STANDBY;

Depois que o perímetro de suporte determinar que a função de banco de dados é compatível, a instância de banco de dados do RDS Custom para Oracle ficará disponível em 15 segundos.

SP-O3003

Integridade do banco de dados

The SMON process of the Oracle database is in a zombie state. To resolve the issue, manually recover the database on EC2 instance [ec2_id], open the database, and then immediately back it up. For more help, contact Suporte.

O perímetro de suporte monitora o estado da instância de banco de dados. Ele também monitora quantas reinicializações ocorreram durante a hora anterior e ao longo do dia. Você é notificado quando a instância está em um estado em que ela ainda existe, mas não é possível interagir com ela.

Para fazer com que o perímetro de suporte avalie o estado da instância
  1. Faça login no host e determine o estado do banco de dados.

    ps -eo pid,state,command | grep smon
  2. Se necessário, reinicie a instância de banco de dados. Se a reinicialização falhar, passe para a próxima etapa.

  3. Se necessário, reinicie o host do EC2.

Após a reinicialização da instância de banco de dados, o agente do RDS Custom detecta que a instância de banco de dados não está mais em um estado sem resposta. Em seguida, ele notifica o perímetro de suporte para reavaliar o estado dessa instância.

SP-O3004

Modo de log de banco de dados

The database log mode on EC2 instance [ec2_id] was changed to [value_b]. To resolve the issue, set the log mode to [value_a].

Para alterar o modo de log da instância de banco de dados para ARCHIVELOG
  1. Faça login no host do EC2.

  2. Conecte-se ao banco de dados e execute a seguinte instrução:

    SELECT LOG_MODE FROM V$DATABASE;

    Ou é possível executar o seguinte comando no SQL*Plus:

    ARCHIVE LOG LIST
  3. Execute o comando do SQL*Plus a seguir para iniciar um desligamento consistente.

    SHUTDOWN IMMEDIATE

O agente do RDS Custom reinicia automaticamente a instância de banco de dados e define o modo de log como ARCHIVELOG. A instância de banco de dados fica disponível em 30 minutos.

SP-O3005

Caminho inicial do Oracle

The Oracle home on EC2 instance [ec2_id] was changed to new_path. To resolve the issue, revert the setting to old_path.

SP-O3006

Nome exclusivo do banco de dados

The database unique name on EC2 instance [ec2_id] was changed to new_value. To resolve the issue, revert the name to old_value.

Para alterar o nome exclusivo do banco de dados da instância de banco de dados
  1. Faça login no host do EC2.

  2. Conecte-se ao banco de dados e execute a seguinte instrução:

    SELECT DB_UNIQUE_NAME FROM V$DATABASE;
  3. Especifique o nome exclusivo do banco de dados original usando o comando ALTER SYSTEM SET DB_UNIQUE_NAME.

  4. Execute a instrução SQL a seguir para iniciar um desligamento consistente.

    SHUTDOWN IMMEDIATE;

O agente do RDS Custom reinicia automaticamente a instância de banco de dados e define o modo de log como ARCHIVELOG. A instância de banco de dados fica disponível em 30 minutos.

Solucionar problemas de upgrade do RDS Custom para Oracle

O upgrade de uma instância do RDS Custom para Oracle pode falhar. Veja a seguir técnicas que podem ser utilizadas durante upgrades de instâncias de banco de dados do RDS Custom para Oracle:

  • Examine os arquivos de log de saída de atualização no diretório /tmp na instância de banco de dados. Os nomes dos logs dependem da versão do mecanismo de banco de dados. Por exemplo, você pode ver logs que contêm as strings catupgrd ou catup.

  • Examine o arquivo alert.log localizado no diretório /rdsdbdata/log/trace.

  • Execute o seguinte comando da grep no diretório root para acompanhar o processo de upgrade do SO. Esse comando mostra onde os arquivos de log estão sendo gravados e determina o estado do processo de upgrade.

    ps -aux | grep upg

    Veja a seguir um exemplo de saída.

    root 18884 0.0 0.0 235428 8172 ? S< 17:03 0:00 /usr/bin/sudo -u rdsdb /rdsdbbin/scripts/oracle-control ORCL op_apply_upgrade_sh RDS-UPGRADE/2.upgrade.sh rdsdb 18886 0.0 0.0 153968 12164 ? S< 17:03 0:00 /usr/bin/perl -T -w /rdsdbbin/scripts/oracle-control ORCL op_apply_upgrade_sh RDS-UPGRADE/2.upgrade.sh rdsdb 18887 0.0 0.0 113196 3032 ? S< 17:03 0:00 /bin/sh /rdsdbbin/oracle/rdbms/admin/RDS-UPGRADE/2.upgrade.sh rdsdb 18900 0.0 0.0 113196 1812 ? S< 17:03 0:00 /bin/sh /rdsdbbin/oracle/rdbms/admin/RDS-UPGRADE/2.upgrade.sh rdsdb 18901 0.1 0.0 167652 20620 ? S< 17:03 0:07 /rdsdbbin/oracle/perl/bin/perl catctl.pl -n 4 -d /rdsdbbin/oracle/rdbms/admin -l /tmp catupgrd.sql root 29944 0.0 0.0 112724 2316 pts/0 S+ 18:43 0:00 grep --color=auto upg
  • Execute a seguinte consulta SQL para verificar o estado atual dos componentes e localizar a versão do banco de dados e as opções instaladas na instância de banco de dados.

    SET LINESIZE 180 COLUMN COMP_ID FORMAT A15 COLUMN COMP_NAME FORMAT A40 TRUNC COLUMN STATUS FORMAT A15 TRUNC SELECT COMP_ID, COMP_NAME, VERSION, STATUS FROM DBA_REGISTRY ORDER BY 1;

    A saída será semelhante à seguinte.

    COMP_NAME STATUS PROCEDURE ---------------------------------------- -------------------- -------------------------------------------------- Oracle Database Catalog Views VALID DBMS_REGISTRY_SYS.VALIDATE_CATALOG Oracle Database Packages and Types VALID DBMS_REGISTRY_SYS.VALIDATE_CATPROC Oracle Text VALID VALIDATE_CONTEXT Oracle XML Database VALID DBMS_REGXDB.VALIDATEXDB 4 rows selected.
  • Execute a seguinte consulta SQL para verificar se há objetos inválidos que possam interferir no processo de upgrade.

    SET PAGES 1000 LINES 2000 COL OBJECT FOR A40 SELECT SUBSTR(OWNER,1,12) OWNER, SUBSTR(OBJECT_NAME,1,30) OBJECT, SUBSTR(OBJECT_TYPE,1,30) TYPE, STATUS, CREATED FROM DBA_OBJECTS WHERE STATUS <>'VALID' AND OWNER IN ('SYS','SYSTEM','RDSADMIN','XDB');

Solucionar problemas de promoção de réplicas no RDS Custom para Oracle

Você pode promover réplicas gerenciadas do Oracle no RDS Custom para Oracle usando o console, o comando promote-read-replica do AWS CLI ou a API do PromoteReadReplica. Se você excluir sua instância de banco de dados primária e todas as réplicas estiverem íntegras, o RDS Custom para Oracle promoverá automaticamente suas réplicas gerenciadas a instâncias autônomas. Se uma réplica tiver pausado a automação ou estiver fora do perímetro de suporte, corrija a réplica para que o RDS Custom possa promovê-la automaticamente. Para obter mais informações, consulte Promover uma réplica do RDS Custom para Oracle a uma instância de banco de dados autônoma.

O fluxo de trabalho de promoção de réplicas pode ficar travado na seguinte situação:

  • A instância de banco de dados primária está no estado STORAGE_FULL.

  • O banco de dados principal não pode arquivar todos os logs de redo on-line.

  • Existe uma lacuna entre os arquivos de log de redo arquivados na réplica do Oracle e no banco de dados primário.

Como responder ao fluxo de trabalho travado
  1. Sincronize a lacuna de logs de redo na réplica da instância de banco de dados Oracle.

  2. Force a promoção de sua réplica de leitura para o log de redo mais recente aplicado. Execute os seguintes comandos no SQL*Plus:

    ALTER DATABASE ACTIVATE STANDBY DATABASE; SHUTDOWN IMMEDIATE STARTUP
  3. Entre em contato com o Suporte e peça que a instância de banco de dados passe para o status available.