Cenário
Realizado backup de uma base na versão 11gR2 e restore do backup em novo servidor com versão 12cR1, os arquivos da wallet foram copiados do servidor de origem para o servidor de destino na localização correta. A wallet foi configurada com AUTOLOGIN, então a coluna STATUS na view V$ENCRYPTION_WALLET apresentava o valor “OPEN” assim que a instância era iniciada, mas a coluna WALLET_TYPE apresentava o valor “UNKNOWN”.
Isso ocorre porque a wallet não foi criada no padrão 12c, utilizando os comandos “ADMINISTER KEY”.
Solução
1) Remover AUTOLOGIN
Verificando caminho da wallet:
SQL> SELECT WRL_PARAMETER FROM V$ENCRYPTION_WALLET;
WRL_PARAMETER
-----------------------------------------------------
/u01/app/oracle/admin/dbprod_16xy7/wallet
Removendo o arquivo cwallet.sso no diretório retornado na consulta anterior:
$ cd /u01/app/oracle/admin/dbprod_16xy7/wallet $ rm -rf cwallet.sso
2) Fechar AUTOLOGIN Keystore
SQL> ADMINISTER KEY MANAGEMENT SET KEYSTORE CLOSE;
keystore altered.
3) Abrir PASSWORD Keystore
SQL> ADMINISTER KEY MANAGEMENT
SET KEYSTORE OPEN IDENTIFIED BY "SenhaAtualWallet";
keystore altered.
4) Criar nova AUTOLOGIN Keystore
SQL> ADMINISTER KEY MANAGEMENT CREATE AUTO_LOGIN KEYSTORE
FROM KEYSTORE '/u01/app/oracle/admin/dbprod_16xy7/wallet'
IDENTIFIED BY "SenhaAtualWallet";
keystore altered.
5) Fechar PASSWORD Keystore para voltar a usar AUTOLOGIN Keystore
SQL> ADMINISTER KEY MANAGEMENT
SET KEYSTORE CLOSE IDENTIFIED BY "SenhaAtualWallet";
keystore altered.
Resultado:
SQL> SELECT STATUS, WALLET_TYPE FROM V$ENCRYPTION_WALLET;
STATUS WALLET_TYP
-------------------- ----------
OPEN AUTOLOGIN
[…] alternativa equivalente para a versão 12c, podemos seguir as instruções do post “TDE: WALLET_TYPE com valor UNKNOWN na view V$ENCRYPTION_WALLET após upgrade de 11g para 12c“, mas executando o seguinte comando depois do passo 3 e antes do passo […]