Diagnosticar e Solucionar Problemas de Falhas de Backup
Os backups de bancos de dados podem falhar por vários motivos. Geralmente, um backup falha porque o host do banco de dados não pode acessar o armazenamento de objetos ou há problemas no host ou na configuração do banco de dados.
Este artigo inclui informações para ajudá-lo a determinar a causa da falha e corrigir o problema. As informações são organizadas em várias seções, com base na condição do erro.
Caso já saiba a causa, você pode ignorar o tópico com a solução sugerida. Caso contrário, use o tópico Identificar a Causa da Falha para começar.
Os seguintes tópicos são abordados neste artigo:
- Identificar a Causa da Falha
- Problemas do Agente de Serviço do Banco de Dados
- Problemas de Conectividade do Serviço Object Store
- Problemas do Host
- Problemas do Oracle Clusterware
- Problemas do Banco de Dados
- Problemas da Wallet de TDE
- Outras Causas de Falhas de Backup
- Obter Ajuda Adicional
Dica:
Você também pode criar conexões de console serial para diagnosticar e solucionar problemas no seu sistema no modo de usuário único. Para obter informações sobre como criar uma conexão de console serial na Console do OCI, consulte Gerenciar a Conexão da Console Serial com o Sistema de Banco de Dados.Identificar a Causa da Falha
Na Console do OCI, um backup do banco de dados com falha exibe o status Com falha ou é interrompido no estado Backup em Andamento ou Em Criação. 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.
Os seguintes tópicos são abordados:
Identificar a Causa Principal da Falha de Backup
-
Faça log-in no host como usuário root e navegue até
/opt/oracle/dcs/bin/
. -
Determine a sequência de operações executadas no banco de dados.
dbcli list-jobs | grep -i <dbname>
Observe o ID do último job listado com status diferente de Sucesso.
-
Com o ID do job que você observou da etapa anterior, use o seguinte comando para verificar os detalhes desse job:
dbcli describe-job -i <job_ID> -j
Geralmente, a execução deste comando é suficiente para revelar a origem da falha.
-
Se você precisar de mais informações, verifique o arquivo
/opt/oracle/dcs/log/dcs-agent.log
.Você pode localizar o ID do job neste arquivo usando o timestamp retornado pelo relatório de jobs na etapa 2.
-
Se os detalhes do problema sugerirem um problema do RMAN, analise os logs do RMAN no diretório a seguir.
/opt/oracle/dcs/log/<hostname>/rman/bkup/<db_unique_name>/rman_backup/<yyyy-mm-dd>
Observação:
Se a falha no banco de dados estiver em um banco de dados RAC de 2 nós, execute as etapas 3 e 4 em ambos os nós.Problemas do Agente de Serviço do Banco de Dados
Seu banco de dados OCI faz uso de uma estrutura de agentes para permitir que você gerencie seu banco de dados por meio da plataforma na nuvem. Às vezes, pode ser necessário reiniciar o programa dcsagent se ele tiver o status interromper/aguardando para resolver uma falha de backup.
Os seguintes tópicos são abordados:
Reiniciar o Database Service Agent
Observação:
Useinitctl
em vez de systemctl
ao usar OL6.
-
Em um prompt de comando, verifique o status do agente:
systemctl status initdcsagent
-
Se o agente estiver no estado interromper/aguardando, tente reiniciá-lo:
systemctl start initdcsagent
-
Verifique o status do agente novamente para confirmar se ele tem o status de início/execução:
systemctl status initdcsagent
Problemas do Oracle Clusterware
O Oracle Clusterware permite que os servidores se comuniquem uns com os outros de modo que possam funcionar como unidade coletiva. Ocasionalmente, talvez seja necessário reiniciar o programa Clusterware para resolver uma falha de backup.
Uma ou mais das seguintes condições no host do banco de dados podem fazer com que os backups falhem.
Reiniciar o Oracle Clusterware
-
No prompt de comando, verifique o status do Oracle Clusterware:
crsctl check crs
crsctl stat res -t
-
Se o Oracle Clusterware não estiver on-line, tente reiniciar o programa:
crsctl start crs
-
Verifique o status do Oracle Clusterware para confirmar se ele está on-line:
crsctl check crs
Problemas de Conectividade do Serviço Object Store
O backup do seu banco de dados no OCI Object Storage requer que o host possa estabelecer conexão com o ponto final Swift aplicável. Você pode testar essa conectividade usando um usuário Swift.
Os seguintes tópicos são abordados:
Certifique-se de que o Host do Banco de Dados Pode Estabelecer Conexão com o Object Store
- Crie um usuário Swift em sua tenancy. Para obter mais informações, consulte Como Trabalhar com Tokens de Autenticação em Gerenciando Credenciais do Usuário.
-
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>
- Para obter mais informações sobre a região correta a ser usada, consulte Perguntas mais Frequentes sobre o Object Storage.
- Para obter mais informações sobre o namespace do serviço Object Storage, consulte Noções Básicas dos Namespaces do serviço Object Storage.
- Se não for possível estabelecer conexão com o armazenamento de objetos, consulte Backup de um Banco de Dados Usando a Console para saber como configurar a conectividade do armazenamento de objetos.
Problemas do Host
Os seguintes tópicos são abordados:
Uma ou mais das seguintes condições no host do banco de dados podem fazer com que os backups falhem.
Comandos Interativos no Perfil Oracle
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 oracle ou da grade, as operações do serviço de banco de dados, 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.
O Sistema de Arquivos Está Cheio
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.
Versão incorreta do Oracle Database Cloud Backup Module
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 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 banco de dados com a atualização do pacote mais recente.
Alterações no Arquivo de Perfil do Site (glogin.sql)
A personalização do arquivo de perfil do site ($ORACLE_HOME/sqlplus/admin/glogin.sql
) pode causar falha nos backups gerenciados no OCI. Consulte Configuração do SQL*Plus. Especificamente, comandos interativos podem levar a falhas de backup. A Oracle recomenda não modificar este arquivo nos bancos de dados hospedados no OCI.
Problemas do Banco de Dados
Um estado ou configuração incorreto do banco de dados pode levar a falhas de backup.
Os seguintes tópicos são abordados:
- Banco de Dados Não Executado durante o Backup
- Verificar se o Banco de Dados está Ativo e em Execução
- Modo de Arquivamento Definido como NOARCHIVELOG
- Verificar e Definir o Modo de Arquivamento
- Falhas de Backup e Processo de Arquivador de Banco de Dados Paralisado
- Erros de Tablespace Temporário
- Falhas de Configuração e Backup do RMAN
- Definições de Configuração do RMAN que Não Devem Ser Alteradas
- Falhas de Backup e Política do RMAN
- Configurar a Definição de Política de Retenção do RMAN
- Perda de Arquivo de Wallet do Object Storage e Falhas de Backup
- Confirme se o Arquivo Wallet do Object Storage Existe e Tem as Permissões Corretas
Banco de Dados Não Executado durante o 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.
Verificar se o Banco de Dados está Ativo e em Execução
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 Abrir 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 Abrir, use os seguintes comandos para acessar o prompt de comando do SQL*Plus e defina o status como Abrir:
sqlplus / as sysdba
alter database open;
Modo de Arquivamento Definido como NOARCHIVELOG
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.
Verificar e Definir o Modo de Arquivamento
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 Montar (e não o status Abrir) 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 Montar 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:
-
Faça shutdown de todas as instâncias de banco de dados.
srvctl stop database -d
-
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
-
Acesse o prompt de comando do SQL*Plus.
sqlplus / as sysdba
-
Ative o modo de log de arquivamento e saia.
alter database archivelog;
exit;
-
Interrompa o banco de dados.
srvctl stop instance -d <db_unique_name> -i <instance_name>
-
Reinicie todas as instâncias do banco de dados.
srvctl start database -d <db_unqiue_name>
-
No prompt de comando do SQL*Plus, verifique se o modo de arquivamento está definido como
ARCHIVELOG
.select log_mode from v$database;
Falhas de Backup e Processo de Arquivador de Banco de Dados Paralisado
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 a seguir.
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 for alterado após você resolver o problema subjacente com o dispositivo ou o recurso cheio ou indisponível, tente executar uma das seguintes soluções alternativas:
- Reinicie o banco de dados usando o comando
srvctl
para atualizar o status do banco de dados no clusterware - Faça upgrade do banco de dados para os níveis de conjunto de patches mais recentes
Erros de Tablespace Temporário
Se as estatísticas da tabela fixa não estiverem atualizadas no banco de dados, os backups poderão falhar com erros que se referem ao tablespace temporário presente no arquivo dcs-agent.log
. Por exemplo:
select status from v$rman_status where COMMAND_ID=<backup_id>
Saída:
ERROR at line 1:
ORA-01652: unable to extend temp segment by 128 in tablespace TEMP
Obtenha suas estatísticas de tabela fixa como a seguir para resolver este problema.
conn / as sysdba
exec dbms_stats.gather_fixed_objects_stats();
Falhas de Configuração e Backup do RMAN
A edição de determinados parâmetros de configuração do RMAN pode levar a falhas de backup no OCI. Para verificar a configuração do RMAN, use o comando show all
no prompt de linha de comando do RMAN.
Consulte a lista de parâmetros a seguir para obter detalhes sobre as definições de configuração do RMAN que não devem ser alteradas para bancos de dados no OCI.
Definições de Configuração do RMAN que Não Devem Ser Alteradas
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' MAXPIECESIZE 2 G FORMAT '%d_%I_%U_%T_%t' PARMS
'SBT_LIBRARY=/opt/oracle/dcs/commonstore/pkgrepos/oss/odbcs/libopc.so
ENV=(OPC_PFILE=/opt/oracle/dcs/commonstore/objectstore/opc_pfile/1578318329/opc_tiger_iad3c8.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;
Falhas de Backup e Política do RMAN
A configuração de política de retenção do RMAN pode ser a origem de falhas de backup. O uso da configuração da política de retenção REDUNDANCY, em vez da política RECOVERY WINDOW, pode levar a falhas de backup. Use a configuração RECOVERY WINDOW OF 30 DAYS.
Configurar a Definição de Política de Retenção do RMAN
-
Localize o ID do banco de dados usando o seguinte comando:
dbcli list-databases
-
Localize o valor
BackupConfigId
do banco de dados usando o seguinte comando:dbcli describe-database -i <database_id>
-
Atualize a configuração da política de retenção para
RECOVERY WINDOW OF 30 DAYS
:dbcli update-backupconfig -i <backup_config_id> --recoverywindow 30
Perda de Arquivo de Wallet do Object Storage e Falhas de Backup
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.
Confirme se o Arquivo de Wallet do Object Storage Existe e Tem as Permissões Corretas
-
Localize o ID do banco de dados usando o seguinte comando:
dbcli list-databases
-
Localize o valor
BackupConfigId
do banco de dados usando o seguinte comando:dbcli describe-database -i <database_id>
-
Localize o valor
BackupLocation
do banco de dados usando o seguinte comando:dbcli describe-backupconfig <backup_config_id>
-
Encontre o caminho do arquivo de parâmetros de configuração de backup (
opc_<backup_location_value>_BC.ora
) usando o seguinte comando:locate opc_<backup_location_value>_BC.ora
Por exemplo:
locate opc_b9naijWMAXzi9example_BC.ora
Saída:
/opt/oracle/dcs/commonstore/objectstore/opc_pfile/13aef284-9d6b-4eb6-8751-2988a9example/opc_b9naijWMAXzi9example_BC.ora
-
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 comandocat
:cat <backup_config_parameter_file>
Por exemplo:
cat opc_b9naijWMAXzi9example_BC.ora
Saída:
OPC_HOST=https://swiftobjectstorage.us-ashburn-1.oraclecloud.com/v1/dbbackupiad OPC_WALLET='LOCATION=file:/opt/oracle/dcs/commonstore/objectstore/wallets/13aef284-9d6b-4eb6-8751-2988aexample CREDENTIAL_ALIAS=alias_opc' OPC_CONTAINER=b9naijWMAXzi9example
-
Confirme se o arquivo
cwallet.sso
existe no diretório especificado no parâmetroOPC_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 /opt/oracle/dcs/commonstore/objectstore/wallets/<backup_config_id>
Por exemplo:
ls -ltr /opt/oracle/dcs/commonstore/objectstore/wallets/13aef284-9d6b-4eb6-8751-2988aexample
Saída:
total 4 -rw------- 1 oracle oinstall 0 Apr 20 06:45 cwallet.sso.lck -rw------- 1 oracle oinstall 1941 Apr 20 06:45 cwallet.sso
Problemas da Wallet de TDE
Os seguintes tópicos são abordados:
- Especificação Incorreta do Local da Wallet de TDE
- Verificar a Especificação do Local da Wallet de TDE
- A Variável de Ambiente ORACLE_UNQNAME Não Foi Definida Quando o Banco de Dados Foi Iniciado Usando o SQL*Plus
- O Banco de Dados Plugável Foi Adicionado com uma Chave de Criptografia Principal Configurada Incorretamente
- Verificar Configuração Relacionada à Wallet de TDE
- Arquivo da Wallet de TDE Ausente
- Arquivo da Wallet de Log-in Automático Ausente
Especificação Incorreta do Local da Wallet de TDE
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=/opt/oracle/dcs/commonstore/wallets/tde/$ORACLE_UNQNAME)))
Observação:
Nesta entrada de local da wallet,$ORACLE_UNQNAME
corresponde a uma variável de ambiente e não deve ser substituída por um valor real.
Verificar a Especificação do Local da Wallet de TDE
Use o comando cat
para verificar a especificação de local da wallet de TDE. Por exemplo:
cat $ORACLE_HOME/network/admin/sqlnet.ora
Saída:
ENCRYPTION_WALLET_LOCATION=(SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY=/opt/oracle/dcs/commonstore/wallets/tde/$ORACLE_UNQNAME)))
A Variável de Ambiente ORACLE_UNQNAME
Não Foi Definida Quando o Banco de Dados Foi Iniciado Usando o SQL*Plus
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>
O Banco de Dados Plugável Foi Adicionado com uma Chave de Criptografia Principal Configurada Incorretamente
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. Essa chave de criptografia é armazenada em um só armazenamento de chaves usado por todos os contêineres. 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:
-
Verifique a coluna
STATUS
na viewv$encryption_wallet
, conforme mostrado no seguinte exemplo:alter session set container=pdb2;
select WRL_TYPE,WRL_PARAMETER,STATUS,WALLET_TYPE from v$encryption_wallet;
Saída:
WRL_TYPE WRL_PARAMETER STATUS WALLET_TYPE --------- ------------------------------------------------------- ------------------ ----------- FILE /opt/oracle/dcs/commonstore/wallets/tde/example_iadxyz/ OPEN_NO_MASTER_KEY AUTOLOGIN
-
Confirme se o PDB está no modo aberto READ WRITE e se ele não está restrito, conforme mostrado no seguinte exemplo:
show pdbs
Saída:
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 mostrarNO
). 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 a documentação sobre banco de dados plugável da sua versão do Oracle Database. -
Execute os seguintes comandos
DBCLI
para alterar o status paraOPEN
:sudo su –
dbcli list-database
dbcli update-tdekey -i <database_ID> -n <PDB_name> -p
O comando
update-tdekey
mostrado solicitará a senha de administrador. -
Confirme 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.
Verificar Configuração Relacionada à Wallet de TDE
Vários parâmetros de configuração relacionados à wallet de TDE podem causar falha nos backups.
-
Verifique se o parâmetro de nome exclusivo do banco de dados do ambiente (ORACLE_UNQNAME) está definido corretamente usando o seguinte comando:
srvctl getenv database -d <db_unique_name>
Por exemplo:
srvctl getenv database -d orclbkp_iadxyz
Saída:
orclbkp_iadxyz: ORACLE_UNQNAME=orclbkp_iadxyz TZ=UTC
-
Verifique as definições
sqlnet.ora
para confirmar se o arquivo tem um parâmetro ENCRYPTION_WALLET_LOCATION com o valor DIRECTORY correto. Use o seguinte comando:cat $ORACLE_HOME/network/admin/sqlnet.ora
Por exemplo:
cat $ORACLE_HOME/network/admin/sqlnet.ora
Saída:
ENCRYPTION_WALLET_LOCATION=(SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY=/opt/oracle/dcs/commonstore/wallets/tde/$ORACLE_UNQNAME)))
-
Verifique se o status da wallet é aberto e se o tipo da wallet é log-in automático verificando a view
v$encryption_wallet
. Por exemplo:select status, wrl_parameter,wallet_type from v$encryption_wallet;
Saída:
STATUS WRL_PARAMETER WALLET_TYPE ------- -------------------------------------------------------- ------------ OPEN /opt/oracle/dcs/commonstore/wallets/tde/example_iadxyz/ AUTOLOGIN
Para bancos de dados plugáveis (PDBs), certifique-se de alternar para o contêiner apropriado antes de consultar a view
v$encryption_wallet
. Por exemplo:sqlplus / as sysdba
alter session set container=pdb1;
select WRL_TYPE,WRL_PARAMETER,STATUS,WALLET_TYPE from v$encryption_wallet;
Saída:
WRL_TYPE WRL_PARAMETER STATUS WALLET_TYPE --------- ------------------------------------------------------ ------- ------------ FILE /opt/oracle/dcs/commonstore/wallets/tde/tiger_iad3c8/ OPEN AUTOLOGIN
Arquivo da Wallet de TDE Ausente
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 de acordo com o seguinte exemplo:
ls -ltr /opt/oracle/dcs/commonstore/wallets/tde/$ORACLE_UNQNAME/ewallet.p12
Saída:
-rwx------ 1 oracle oinstall 5680 Apr 18 13:09 /opt/oracle/dcs/commonstore/wallets/tde/orclbkp_iadxzy/ewallet.p12
O arquivo da wallet de TDE deve ter permissões de arquivo com o valor octal "700" (-rwx------
), e o proprietário desse arquivo deve fazer parte do grupo do sistema operacional oinstall
.
Arquivo da Wallet de Log-in Automático Ausente
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 de acordo com o seguinte exemplo:
ls -ltr /opt/oracle/dcs/commonstore/wallets/tde/$ORACLE_UNQNAME/cwallet.sso
Saída:
-rwx------ 1 oracle oinstall 5725 Apr 18 13:09 /opt/oracle/dcs/commonstore/wallets/tde/orclbkp_iadxyz/cwallet.sso
O arquivo da wallet de log-in automático deve ter permissões de arquivo com o valor octal "700" (-rwx------
), e o proprietário desse arquivo deve fazer parte do grupo do sistema operacional oinstall
.
Outras Causas de Falhas de Backup
Os seguintes tópicos são abordados:
Ponto de Montagem Não Montado do Commonstore
O ponto de montagem /opt/oracle/dcs/commonstore
deve ser montado; caso contrário, haverá falha nos backups.
Verificar o Ponto de Montagem Commonstore
Certifique-se de que o ponto de montagem /opt/oracle/dcs/commonstore
esteja montado, conforme mostrado no seguinte exemplo:
srvctl config filesystem -volume commonstore -diskgroup data
Saída:
Volume device: /dev/asm/commonstore-5
Diskgroup name: data
Volume name: commonstore
Canonical volume device: /dev/asm/commonstore-5
Accelerator volume devices:
Mountpoint path: /opt/oracle/dcs/commonstore
Mount point owner: oracle
Mount users:
Type: ACFS
Confirme se o ora.data.commonstore.acfs
Está On-line
-
O estado do
ora.data.commonstore.acfs
deve estar on-line; caso contrário, haverá falha nos backups. Confirme, como mostrado no seguinte exemplo:crsctl stat resource ora.data.commonstore.acfs -v
Saída:
NAME=ora.data.commonstore.acfs TYPE=ora.acfs.type LAST_SERVER=orcl STATE=OFFLINE TARGET=OFFLINE ... STATE_DETAILS=admin unmounted /opt/oracle/dcs/commonstore ...
-
Lista o conteúdo do diretório
commonstore
para confirmar se ele está montadols -ltr /opt/oracle/dcs/commonstore
-
Se o valor STATE_DETAILS for
unmounted
, monte o sistema de arquivos conforme mostrado no seguinte exemplo:srvctl start filesystem -volume commonstore -diskgroup data
-
Confirme se a alteração foi bem-sucedida, conforme mostrado no seguinte exemplo:
crsctl stat resource ora.data.commonstore.acfs -v
Saída:
NAME=ora.data.commonstore.acfs TYPE=ora.acfs.type LAST_SERVER=orcl STATE=ONLINE on orcl TARGET=ONLINE CARDINALITY_ID=ONLINE ... STATE_DETAILS=mounted on /opt/oracle/dcs/commonstore
-
Lista o conteúdo do diretório
commonstore
para confirmar se ele está montado, conforme mostrado no seguinte exemplo:ls -ltr /opt/oracle/dcs/commonstore
Saída:
total 220 drwx------ 2 root root 65536 Apr 18 10:50 lost+found drwx------ 3 oracle oinstall 20480 Apr 18 11:02 wallets drwxr-xr-x 3 root root 20480 Apr 20 06:41 pkgrepos drwxr-xr-x 4 oracle oinstall 20480 Apr 20 06:41 objectstore
O Banco de Dados não está Registrado Corretamente
Haverá falha nos backups se o banco de dados não estiver registrado no dcs-agent
. Esse cenário poderá ocorrer se você migrar manualmente o banco de dados para o OCI e não executar o comando dbcli register-database
.
Para verificar se o banco de dados está registrado corretamente, verifique as informações retornadas executando o comando srvctl config database
e o comando dbcli list-databases
. Se um dos comandos não retornar um registro do banco de dados, entre em contato com o Oracle Support Services.
Para obter instruções sobre como registrar o banco de dados, consulte os seguintes tópicos:
- Registre o Banco de Dados no Sistema de Banco de Dados em Recuperar um Banco de Dados do OCI Object Store Classic
- Comandos de Banco de Dados em Referência da CLI do Oracle Database
Obter Ajuda 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.
Os seguintes tópicos são abordados:
Coletar Informações do Banco de Dados para Uso em Relatórios de Problemas
Use os comandos a seguir para coletar detalhes sobre seu banco de dados. Registre a saída de cada comando para referência.
dbcli list-databases
dbcli describe-database -i <database_id>
dbcli describe-component
Coletar Informações de Diagnóstico sobre Jobs com Falha
-
Faça log-in no host como o usuário-raiz e navegue até o diretório
/opt/oracle/dcs/bin/
. -
Execute os dois comandos a seguir para gerar informações sobre o job com falha:
dbcli list-jobs
dbcli describe-job -i <job_ID> -j
O <job_ID> no segundo comando deve ser o ID do job com falha mais recente reportado no primeiro comando.
-
Execute o script do coletor de diagnósticos para criar um arquivo zip com as informações de diagnóstico para o Oracle Support Services.
diagcollector.py
Esse comando cria um arquivo chamado
diagLogs -<timestamp>.zip
no diretório/tmp
.
Coletar Arquivos de Log do Agente DCS
Para coletar arquivos de log do agente DCS, faça o seguinte:
- Faça log-in como usuário opc.
-
Execute o seguinte comando:
sudo /opt/oracle/dcs/bin/diagcollector.py
O sistema retorna uma mensagem indicando que os logs do agente estão disponíveis em um arquivo zip em um diretório especificado. Por exemplo:
Logs are being collected to: /tmp/dcsdiag/diagLogs-1234567890.zip
Coletar Detalhes da Configuração de TDE
- Execute o comando
srvctl getenv database -d <db_unique_name>
e registre a saída para referência. -
Registre a saída da view
v$encryption_wallet
. Por exemplo:select status, wrl_parameter,wallet_type from v$encryption_wallet;
Saída:
STATUS WRL_PARAMETER WALLET_TYPE -------- ------------------------------------------------------- --------- OPEN /opt/oracle/dcs/commonstore/wallets/tde/example_iadxyz/ AUTOLOGIN
-
Registre a saída do comando
ls -ltr <wrl_parameter>
. Por exemplo:ls -ltr /opt/oracle/dcs/commonstore/wallets/tde/example_iadxyz/
Saída:
total 28 -rw----- 1 oracle asmadmin 2400 May 2 09:42 ewallet_2018050209420381_defaultTag.p12 -rw----- 1 oracle asmadmin 5680 May 2 09:42 ewallet.p12 -rw----- 1 oracle asmadmin 5723 May 2 09:42 cwallet.sso
Coletar o Arquivo de Relatório de Backup do RMAN
Gere o Arquivo de Relatório de Backup do RMAN usando o seguinte comando:
dbcli create-rmanbackupreport -i <db_id> -w detailed -rn <report_name>
Por exemplo:
dbcli create-rmanbackupreport -i 57fvwxyz-9dc4-45d3-876b-5f850example -w detailed -rn bkpreport1
Localize o arquivo de relatório usando o comando dbcli describe-rmanbackupreport -in <report_name>
. O local do relatório é fornecido na saída. Por exemplo:
dbcli describe-rmanbackupreport -in bkpreport1
Saída:
Backup Report details
----------------------------------------------------------------
ID: b55vwxyz-c49f-4af3-a956-acccdexample
Report Type: detailed
Location: Node patchtst: /opt/oracle/dcs/log/patchtst/rman/bkup/example_iadxyz/rman_list_backup_detail
/2018-05-02/rman_list_backup_detail_2018-05-02_11-46-51.0359.log
Database ID: 57fvwxyz-9dc4-45d3-876b-5f850example
CreatedTime: May 2, 2018 11:46:38 AM UTC