quinta-feira, 13 de junho de 2019

Criando Tablespace Encryptadas no Oracle 11g - Ora-28374: Typed Master Key Not Found In Wallet (Doc ID 757936.1)
Creating Encrypted Tablespace in 11.1 DB Fails 

#OracledoBrasil
#Oracle

Exemplo do problema encontrado:

CREATE TABLESPACE Tablespace_Name DATAFILE
*
ERROR at line 1:
ORA-28374: typed master key not found in wallet


1 --- Verificar se o wallet está aberto:
1 --- Verify that the wallet is open

SELECT WRL_TYPE,WRL_PARAMETER,STATUS FROM V$ENCRYPTION_WALLET;

2 --- Validando a senha do wallet
2 --- Validating the wallet password

orapki wallet display -wallet /oracle/wallet -pwd wallet_password

3 --- Verificar se há colunas criptografadas usando o wallet atual:
3 --- Check for any encrypted columns using the current wallet:

SELECT OWNER,TABLE_NAME, COLUMN_NAME FROM DBA_ENCRYPTED_COLUMNS;
SELECT TABLESPACE_NAME, STATUS, CONTENTS, ENCRYPTED FROM DBA_TABLESPACES;

4 --- Feche o wallet atual:
4 --- Close the encryption wallet:

ALTER SYSTEM SET WALLET CLOSE;

5 --- Crie um novo wallet de criptografia
5 --- Create a new encryption wallet :

ALTER SYSTEM SET ENCRYPTION KEY IDENTIFIED BY "&wallet_password";
or
ALTER SESSION SET ENCRYPTION KEY IDENTIFIED BY "&wallet_password";

6 --- Agora você deve conseguir criar a tablespace criptografado, por exemplo:
6 --- You should now be able to create your encrypted tablespace, for example:

CREATE TABLESPACE &tablespace_name DATAFILE SIZE 50M ENCRYPTION DEFAULT STORAGE (ENCRYPT);


Se em algum momento receber uma mensagem com o seguinte erro:
ORA-28367: wallet does not exist
É possível que os parâmetros no sqlnet.ora estejam incorretos, ou talvez seu TNS_ADMIN esteja configurado para que o sqlnet.ora não esteja sendo acessado. 
O sqlnet.ora precisa ter um parâmetro de entrada semelhante a isso:
==========
ENCRYPTION_WALLET_LOCATION=
  (
  SOURCE=(METHOD=FILE)
    (
    METHOD_DATA=(DIRECTORY=/u01/app/oracle/admin/orcl/tde_wallet/orcl)  # Caminho do wallet da etapa 1
    )
  )

Fonte:
https://support.oracle.com
https://asktom.oracle.com/pls/apex/f?p=100:11:::NO:RP:P11_QUESTION_ID:9537878200346737616

terça-feira, 21 de maio de 2019

Instalação e Configuração do Oracle Database Cloud Backup Module (Versão OCI)

#OracleCloud
#OracleOCI
#OracledoBrasil
#Oracle

1 - Criar diretórios:
Sempre com user oracle:

#-->: mkdir -p $ORACLE_BASE/opc
#-->: cd $ORACLE_BASE/opc
#-->: mkdir -p lib/$ORACLE_SID
#-->: mkdir -p wallet/$ORACLE_SID

2 - Baixar o arquivo opc_installer.zip no link abaixo:
https://www.oracle.com/technetwork/database/availability/oracle-cloud-backup-2162729.html


3 - Transferir o arquivo para o servidor Oracle Cloud e descompactar:

#-->: cd $ORACLE_BASE/opc
#-->: unzip opc_installer.zip

4 - Gerar as chaves conforme a documentação abaixo:
https://docs.cloud.oracle.com/iaas/Content/API/Concepts/apisigningkey.htm

Comandos:

#-->: mkdir ~/.oci
#-->: openssl genrsa -out ~/.oci/oci_api_key.pem 2048
#-->: chmod go-rwx ~/.oci/oci_api_key.pem
#-->: openssl rsa -pubout -in ~/.oci/oci_api_key.pem -out ~/.oci/oci_api_key_public.pem

5 - O conteúdo da chave pública deve ser copiado para as “API Keys”:
Identity -> Users -> User Details
#-->: cat ~/.oci/oci_api_key_public.pem



6 - Com isso será gerado o “Fingerprint” (Será usado no comando de criação do serviço opc)

7 - O “Tenancy OCID” pode ser encontrado em:
Administration -> Tenancy Details




8 - O “User OCID” pode ser encontrado em “User Settings”:
Identity > User > Details > Add Public Key




9 - Comando para instalação do modulo:

#-->:  java -jar oci_install.jar -host https://objectstorage.us-ashburn-1.oraclecloud.com \
  -pvtKeyFile /home/oracle/.oci/oci_api_key.pem \
  -pubFingerPrint aa:aa:aa:aa:aa:aa:aa:aa:aa:aa:aa:aa:aa:aa:aa:aa \
  -uOCID ocid1.user.oc1..aaaaaaaasxhhhhhxhxhxhxhxhxhxhxhoycziwwwwwoooowwwwokt6v \
  -tOCID ocid1.tenancy.oc1..aaaaaaaaxhxhoycziwwwwhxhxhxhxhxhoycziwwxhxhxhxwhxhoyc \
  -walletDir /u01/app/oracle/opc/wallet/orcl \
  -libDir /u01/app/oracle/opc/lib/orcl \
  -bucket backupdb \
  -configFile /u01/app/oracle/product/11.2.0.4/dbhome_1/dbs/opcorclora
  

10 - Configuração do RMAN:

CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE;
CONFIGURE DEFAULT DEVICE TYPE TO SBT;
CONFIGURE COMPRESSION ALGORITHM 'MEDIUM';
CONFIGURE DEVICE TYPE SBT_TAPE PARALLELISM 1 BACKUP TYPE TO COMPRESSED BACKUPSET;
CONFIGURE CHANNEL DEVICE TYPE SBT PARMS='SBT_LIBRARY=/u01/app/oracle/opc/lib/orcl/libopc.so ,SBT_PARMS=(OPC_PFILE=/u01/app/oracle/product/11.2.0.4/db_1/dbs/opcorcl.ora)';
set encryption on identified by "SENHA" only;


fonte:
https://www.oracle.com/technetwork/pt/articles/cloudcomp/migracao-dbs-a-oci-p2-5478403-ptb.html

. Fabiano Souza (DBA Oracle PrimeDB)

UOL Tecnologia