Close Menu
  • Home
  • Databases
    • Oracle
      • ASM
      • Data Guard
      • RAC
  • Performance
  • Tools
  • Troubleshooting
  • Python
  • Shell Script
Search

Oracle RAC 12.2 no VMware Workstation — Post 3: Instalação do Grid Infrastructure

2026-04-05 Oracle By Henrique

Oracle RAC 12.2 no VMware Workstation — Post 1: Configuração do VMware e Openfiler

2026-04-05 Oracle By Henrique

Oracle RAC 12.2 no VMware Workstation – Post 2: Configuração do Oracle Linux e iSCSI

2026-04-05 Oracle By Henrique
YouTube LinkedIn RSS
  • Sobre
  • Contato
  • Legal
    • Aviso Legal
    • Política de Cookies
    • Política de Privacidade
    • Termos de Uso
  • RSS
  • Português
    • Inglês
Execute StepExecute Step
YouTube LinkedIn RSS
  • Home
  • Databases
    • Oracle
      • ASM
      • Data Guard
      • RAC
  • Performance
  • Tools
  • Troubleshooting
  • Python
  • Shell Script
Execute StepExecute Step
Home » ORA-15221 — Como Corrigir “ASM Operation Requires compatible.asm of String or Higher”
ASM

ORA-15221 — Como Corrigir “ASM Operation Requires compatible.asm of String or Higher”

HenriqueBy Henrique2026-03-217 Mins Read
Share
Facebook Twitter LinkedIn Pinterest Email Telegram WhatsApp

This post is also available in: English (Inglês)

Ao tentar executar uma operação no Oracle ASM — como criar um SPFILE no disk group, habilitar ACFS ou usar flex ASM — o seguinte erro pode aparecer:

SQL> create spfile='+DATA/ASM/spfileASM.ora' from pfile;

ORA-15221: ASM operation requires compatible.asm of 11.2.0.0.0 or higher

A operação é bloqueada porque o atributo de compatibilidade do disk group é mais antigo do que a versão mínima exigida pela feature que você está tentando usar.

Neste artigo, vou explicar o que são os atributos de compatibilidade do ASM, por que esse erro aparece, como corrigir e — principalmente — o alerta crítico que você precisa saber antes de alterar.

💡 Na prática: Encontrei esse erro ao tentar criar um SPFILE em um disk group ASM que tinha compatible.asm em 10.1.0.0.0, rodando em um Grid Infrastructure 11g. A correção é simples, mas irreversível — uma vez alterada a compatibilidade, não é possível voltar.


O Que São os Atributos de Compatibilidade do ASM

Cada disk group ASM possui dois atributos de compatibilidade que controlam quais features estão disponíveis:

AtributoO que controla
compatible.asmVersão mínima do software ASM (Grid Infrastructure) necessária para acessar o disk group
compatible.rdbmsVersão mínima do software RDBMS (Database) necessária para acessar o disk group

Esses atributos existem para proteger contra situações onde um disk group é alterado com features de uma versão mais nova e depois alguém tenta acessar com uma versão mais antiga — o que causaria corrupção de dados.

Como verificar os valores atuais

-- Conectar na instância ASM
sqlplus / as sysasm

SELECT group_number, name, compatibility, database_compatibility
FROM v$asm_diskgroup;

Exemplo de saída:

GROUP_NUMBER NAME      COMPATIBILITY DATABASE_COMPATIBILITY
------------ --------- ------------- ----------------------
           1 DATA      10.1.0.0.0    10.1.0.0.0
           2 REDO      10.1.0.0.0    10.1.0.0.0
           3 ARCHIVE   10.1.0.0.0    10.1.0.0.0

Se a compatibilidade está em 10.1.0.0.0 e você tenta uma operação que exige 11.2.0.0.0 ou superior, o ORA-15221 aparece.


Por Que o Erro ORA-15221 Ocorre

O erro ocorre quando você tenta usar uma feature do ASM que exige uma versão de compatibilidade maior do que a configurada no disk group.

Features e versões mínimas necessárias

Featurecompatible.asm mínimo
SPFILE no disk group11.2.0.0.0
ACFS (ASM Cluster File System)11.2.0.0.0
Flex ASM12.1.0.0.0
ASM Filter Driver (ASMFD)12.1.0.0.0
Flex disk groups12.2.0.0.0
Disk group com sector size 4K nativo12.2.0.0.0
Extended disk groups (Exadata)12.1.0.0.0

Cenários comuns

  • Ambiente migrado de 10g/11g para 19c — o Grid foi atualizado, mas os disk groups mantiveram a compatibilidade antiga
  • Disk groups criados em versões antigas e nunca atualizados
  • Novo DBA assume um ambiente legado e tenta usar features modernas

Diagnóstico

Antes de alterar, verifique o estado completo do ambiente.

1. Verificar compatibilidade atual de todos os disk groups

SELECT group_number, name, type,
       compatibility AS asm_compat,
       database_compatibility AS rdbms_compat,
       state
FROM v$asm_diskgroup
ORDER BY group_number;

2. Verificar a versão do Grid Infrastructure (ASM)

SELECT banner_full FROM v$version WHERE banner_full LIKE '%Grid%';

Ou no shell:

$GRID_HOME/bin/crsctl query has releaseversion
# ou
$GRID_HOME/OPatch/opatch lspatches

3. Verificar a versão do RDBMS dos bancos que usam os disk groups

-- Em cada instância de banco que usa os disk groups
SELECT banner_full FROM v$version;

Regra: O compatible.asm não pode ser maior que a versão do Grid Infrastructure instalado. O compatible.rdbms não pode ser maior que a versão do RDBMS mais antigo que acessa o disk group.


Solução

Passo 1 — Determinar a versão mínima necessária

Identifique qual operação você quer executar e qual compatible.asm ela exige (veja a tabela acima).

Para a maioria dos ambientes modernos (Grid 19c), definir compatible.asm como 19.0.0.0.0 habilita todas as features. Mas nem sempre é a melhor escolha — veja o alerta abaixo.

⚠ ALERTA CRÍTICO: A alteração é IRREVERSÍVEL

Uma vez que você aumenta o compatible.asm de um disk group, NÃO é possível voltar para uma versão anterior. Essa é uma operação sem rollback. Se depois você precisar acessar o disk group com uma versão mais antiga do Grid, não será possível.

Antes de alterar, confirme:

  • Todos os nós do cluster têm a versão do Grid >= a compatibilidade que você vai definir
  • Nenhum plano de downgrade está previsto para o Grid Infrastructure
  • Backup atualizado do ambiente está disponível
  • Em ambientes RAC, todos os nós devem estar com o Grid na mesma versão ou superior

Passo 2 — Alterar a compatibilidade

Para um disk group individual:

ALTER DISKGROUP DATA SET ATTRIBUTE 'compatible.asm' = '19.0.0.0.0';

Para todos os disk groups de uma vez (gerar os comandos automaticamente):

SELECT 'ALTER DISKGROUP ' || name ||
       ' SET ATTRIBUTE ''compatible.asm'' = ''19.0.0.0.0'';'
FROM v$asm_diskgroup;

Saída:

ALTER DISKGROUP DATA SET ATTRIBUTE 'compatible.asm' = '19.0.0.0.0';
ALTER DISKGROUP REDO SET ATTRIBUTE 'compatible.asm' = '19.0.0.0.0';
ALTER DISKGROUP ARCHIVE SET ATTRIBUTE 'compatible.asm' = '19.0.0.0.0';

Execute cada comando individualmente para acompanhar:

ALTER DISKGROUP DATA SET ATTRIBUTE 'compatible.asm' = '19.0.0.0.0';
-- Diskgroup altered.

ALTER DISKGROUP REDO SET ATTRIBUTE 'compatible.asm' = '19.0.0.0.0';
-- Diskgroup altered.

ALTER DISKGROUP ARCHIVE SET ATTRIBUTE 'compatible.asm' = '19.0.0.0.0';
-- Diskgroup altered.

Passo 3 — Atualizar também o compatible.rdbms (se necessário)

Se você também precisa de features que exigem compatible.rdbms mais alto:

SELECT 'ALTER DISKGROUP ' || name ||
       ' SET ATTRIBUTE ''compatible.rdbms'' = ''19.0.0.0.0'';'
FROM v$asm_diskgroup;

Cuidado: O compatible.rdbms deve ser menor ou igual à versão do banco de dados mais antigo que acessa os disk groups. Se você tem um banco 12c acessando o mesmo disk group, não coloque compatible.rdbms em 19.0.0.0.0.

Passo 4 — Validar

SELECT group_number, name,
       compatibility AS asm_compat,
       database_compatibility AS rdbms_compat
FROM v$asm_diskgroup
ORDER BY group_number;

As versões devem refletir os novos valores.

Passo 5 — Executar a operação original

-- Agora deve funcionar sem erro
CREATE SPFILE = '+DATA/ASM/spfileASM.ora' FROM PFILE;
-- File created.

Checklist Rápido

-- 1. Verificar compatibilidade atual
SELECT name, compatibility, database_compatibility FROM v$asm_diskgroup;

-- 2. Verificar versão do Grid
-- (no shell) $GRID_HOME/bin/crsctl query has releaseversion

-- 3. Verificar versão do RDBMS mais antigo que acessa os disk groups
SELECT banner_full FROM v$version;

-- 4. Alterar (IRREVERSÍVEL!)
ALTER DISKGROUP <nome> SET ATTRIBUTE 'compatible.asm' = '<versão>';

-- 5. Validar
SELECT name, compatibility, database_compatibility FROM v$asm_diskgroup;

Conclusão

O erro ORA-15221 aparece quando você tenta usar uma feature do ASM que exige uma versão de compatibilidade maior do que a configurada no disk group. É especialmente comum em ambientes que foram migrados de versões antigas (10g, 11g) para Grid 19c sem atualizar os atributos de compatibilidade.

A correção é simples — um ALTER DISKGROUP resolve. Mas o ponto crítico é:

  1. Entender que a alteração de compatible.asm é irreversível
  2. Verificar que todos os nós do cluster têm o Grid na versão correta
  3. Verificar que o compatible.rdbms não vai excluir bancos mais antigos que acessam os disk groups
  4. Ter backup antes de alterar
  5. Alterar e validar

Na dúvida, altere para a versão mínima necessária para a operação que você precisa — não precisa ir para a versão máxima se não for usar as features mais recentes.


Referências:

  • Oracle Error Help — ORA-15221
  • Oracle ASM Administrator’s Guide — Disk Group Compatibility
  • MOS Note 1369107.1 — How to Advance ASM Disk Group Compatibility
asm compatible-asm disk-group ora-15221 oracle troubleshooting
Share. Facebook Twitter Pinterest LinkedIn Tumblr Email WhatsApp
Previous ArticleORA-12777 — Como Corrigir “Non-Continuable Error” com ORACLE_BASE Unset Após Copiar Oracle Home
Next Article DBMS_SPACE.CREATE_INDEX_COST – Como Estimar o Tamanho de um Índice Antes de Criá-lo

Related Posts

Oracle

OPATCHAUTO-72126 — Diretório de Destino Já Existe no Out-of-Place Patching

2026-03-26
Read More
Oracle

PRCA-1057 — Password File do ASM Não Encontrado pelo CRS

2026-03-25
Read More
Oracle

ORA-01623 — Redo Log de Thread Órfã Após Migração de RAC para Single Instance

2026-03-23
Read More
Add A Comment
Leave A Reply Cancel Reply

Demo
Follow Me
  • Email
  • GitHub
  • LinkedIn
  • RSS
  • YouTube

INS-06006 – Passwordless SSH Connectivity Not Set Up

2026-02-2614 Views

Limpeza da biblioteca de software OEM: Purge seguro e controle de crescimento de swlib

2026-02-215 Views

ORA-29548 – Como corrigir o erro “Java System Class Reported” no Oracle Database

2026-03-053 Views
Demo
Tags
alter-sequence asm chrony compatible-asm cv-assume-distid database-vault datapatch disk-group dvsys enterprise manager grid-infrastructure how-to identity-column ins-08101 inventory java lab ntp oem oem-13c opatchauto opatchauto-72083 ora-01400 ora-15221 ora-29548 oracle oracle-rac oracle-sequence patch de dados patching prvg-01017 rhel-8 runcluvfy software-library storage troubleshooting
Execute Step
YouTube LinkedIn RSS
  • Home
  • Sobre
  • Contato
  • RSS
  • Português
    • English (Inglês)
© 2026 ExecuteStep. Designed by ThemeSphere.

Type above and press Enter to search. Press Esc to cancel.

Ad Blocker Enabled!
Ad Blocker Enabled!
Our website is made possible by displaying online advertisements to our visitors. Please support us by disabling your Ad Blocker.