Estava analisando o arquivo alert.log do ASM, quando encontrei a seguinte mensagem “ASM Health Checker found 1 new failures”. Após executar o comando “ALTER DISKGROUP <disk group name> CHECK;” para verificar se havia alguma inconsistência no disk group , foi encontrado que de fato havia . Com isso, após a execução do comando “ALTER DISKGROUP <disk group name> CHECK ALL REPAIR;” que faz uma análise e repara a corrupção encontrada, o alerta foi resolvido. Segue a execução: Checando e reparando a corrupção: brunors*The views expressed here are my own and…
Author: brunors
ORA-19566: exceeded limit of 0 corrupt blocks for file usando SET MAXCORRUPT for datafile
Durante a execução de um backup foi reportado o seguinte erro: Blocos corrompidos: Uma ação paliativa para garantir pelo menos o backup é utilizar a sintaxe “SET MAXCORRUPT for datafile ” para o datafile que está corrompido. Com isso , o backup terminará sem erros. No entanto, a corrupção dos blocos permanecerá. Execução com a sintaxe “SET MAXCORRUPT” no backup. Note que coloquei o ID do datafile que apresentou erro, no caso 118, e o número aceitável de até 4 blocos corrompidos. Execução finalizada com sucesso… brunors*The views expressed here…
RMAN-06059: expected archived log not found, loss of archived log compromises recoverability
Estava executando um backup utilizando Zero Data Loss Recovery Appliance – ZDLRA com Recovery Manager (RMAN), quando a execução foi abortada reportando o seguinte erro: “RMAN-06059: expected archived log not found, loss of archived log compromises recoverability” Para resolver este erro, basta efetuar os seguintes passos: Rodar o comando “CROSSCHECK ARCHIVELOG ALL;’ no banco de dados target do RMAN que apresentou erro; Após a finalização do primeiro passo, deletar os archives expirados executando o seguinte comando “DELETE EXPIRED ARCHIVELOG ALL;” ; Reprocessar o backup que apresentou erro anteriormente. Sendo assim,…
ORA-32018: parameter cannot be modified in memory on another instance
Quando administramos um banco de dados Oracle com RAC (Real Application Clusters), há a necessidade de sempre ter atenção quando se vai efetuar a alteração de um parâmetro. Há parâmetros que só são alterados após uma reinicialização do banco de dados e há aqueles que podem ser alterados dinamicamente (parâmetro Modifiable= ALTER SYSTEM na documentação da Corporação Oracle) na instância inicializada. No entanto, para estes parâmetros dinâmicos há aqueles parâmetros que não há a possiblidade de se alterar no nó principal do cluster e nos demais ao mesmo tempo e, com…
ORA-01950: no privileges on tablespace ‘BKTTBS’
Durante a criação de uma tabela, foi reportado o seguinte erro: “ORA-01950: no privileges on tablespace ‘BKTTBS’”. Este erro acontece devido ao fato de o usuário que estar criando a tabela não ter espaço de quota suficiente de criação na tablespace onde a tabela irá residir. Para solucionar este problema, você pode conceder espaço ilimitado de criação para o usuário na tablespace, como no exemplo abaixo: ou também você pode definir o espaço de quota para o usuário na tablespace, como por exemplo 10M: brunors*The views expressed here are…
ORA-10635: Invalid segment or tablespace type
Durante a execução de uma tentativa de desfragmentação de dados de uma tabela que continha um BLOB (um tipo de LOB), obtive o seguinte erro “ORA-10635: Invalid segment or tablespace type”. Durante a análise para verificar o erro, peguei o DDL da tabela verifiquei que possuía SECUREFILE. Sendo assim, não sendo possível o uso de SHRINK SPACE, somente efetuando um shrink no securefile LOB usando Online Redefinition (DBMS_REDEFINITION) [Doc ID 1394613.1]. É importante mencionar que o erro “ORA-10635: Invalid segment or tablespace type” também é comum quando a tabela possui…
ORA-65140: invalid common profile name
Durante a criação de um profile para posteriormente associar um usuário criado ao mesmo, recebi o seguinte erro “ORA-65140: invalid common profile name”. Isto acontece quando se tenta criar um profile sem o prefixo c## no CDB em um banco de dados Oracle 12c. Para resolver este problema, basta simplesmente adicionar o prefixo antes do nome do profile e reexecutar o comando. Com isso, seguem os exemplos: Tentativa de criar o usuário sem o prefixo c## no CDB: Criação com sucesso do profile com o prefixo c##: Associando um…
Configurando o percentual de espaço de armazenamento para o SMB (SQL MANAGEMENT BASE) no Oracle 11g
O SQL Management Base (SMB) faz parte do dicionário de dados e , por isso, seu armazemento é efetuado na tablespace SYSAUX. No SMB é armazenado o histórico de planos de execução SQL e , dentro deste se encontra o SQL Plan Baseline. Só aqui já é possível imaginar a importância do SMB nas suas análises diárias de tuning. No entanto, se o armazenamento for insuficente, é possível aumentar? Bom, pensando rapidamente a ideia inicial seria aumentar a SYSAUX … seguindo a lógica de que o SMB fica dentro da…
Qual o percentual da flash recovery area que está em uso no banco de dados Oracle?
É comum verificar o percentual de uso da flash recovery area (FRA) quando a mesma se encontra configurada na base de dados. Para verificar o percentual de uso da mesma, pode-se usar a V$FLASH_RECOVERY_AREA_USAGE. Com isso, segue um exemplo neste post: Verificando se a flash recovery area se encontra configurada: Note que está configurado a flash recovery area para utilizar o disk group DG_FRA e com o valor máximo de uso para 800G. Outro ponto interessante, que o valor máximo é diferente do valor total do disk group, que pode…
Conectando em um PDB a partir de um CDB – Oracle versão 12C
A partir do banco de dados Oracle versão 12C algumas coisas mudaram em relação à sua versão anterior, 11G. Uma delas é a introdução de PDB e CDB que faz com que a administração da base de dados se torne um pouco diferente. Imagine uma caixa grande com outras caixas menores dentro dela, imaginou? Pois bem, a caixa maior entenda como o CDB e as caixas menores como o PDB, explicando de uma maneira bem sucinta. Neste post, estarei explicando como se conectar em um PDB a partir de um…