#Dica - ORAchk - OS authentication is not enabled so please enter sysdba privileged user name for

O ORAchk é uma excelente ferramenta desenvolvida pela Oracle para validação de database e middleware. Para mais informações sobre a mesma, basta consultar a Doc ID 1268927.2.

Atualmente o ORAchk está na versão 18.4.0 e constantemente é atualizado com novas validações e melhorias.

Durante a execução do ORAchk 18.4.0 em um ambiente Oracle Rac 12c, ao entrar com o usuário de banco (solicitado devido a autenticação de SO não estar habilitada) ocorreu um erro de conexão (ORA-01034).

Para evitar este erro, deve-se especificar após o nome do usuário que possuí permissão sysdba a condição as sysdba.

Neste exemplo é passado o usuário lamim as sysdba.


[root@lamimsrvc01 tmp]# ./orachk


Clusterware stack is running from /orabin01/app/12.1.0.2/grid. Is this the correct Clusterware Home?[y/n][y] y

Checking ssh user equivalency settings on all nodes in cluster for root

Node srvoraprd02 is configured for ssh user equivalency for root user



Searching for running databases . . . . .

.  .
List of running databases registered in OCR

1. cdbprd1
2. None of above

Select databases from list for checking best practices. For multiple databases, select 1 for All or comma separated number like 1,2 etc [1-2][1]. 1
.  .
OS authentication to login as sysdba is not enabled so skipping cdbprd1 for pdb discovery
.  .
.  .  .

Checking Status of Oracle Software Stack - Clusterware, ASM, RDBMS

.  .
OS authentication is not enabled so please enter sysdba privileged user name for cdbprd1:-  lamim
Enter password for lamim@cdbprd1:-

SELECT 1 FROM DUAL
*
ERROR at line 1:
ORA-01034: ORACLE not available
Process ID: 0
Session ID: 0 Serial number: 0


OS authentication is not enabled so please enter sysdba privileged user name for cdbprd1:-  lamim as sysdba
Enter password for lamim as sysdba@cdbprd1:-
. . . .
.  .  . . . .  .  .  .  .  .  .  .  .  . . . .  .  .  .  .  .  .  .
-------------------------------------------------------------------------------------------------------
                                                 Oracle Stack Status
-------------------------------------------------------------------------------------------------------
  Host Name       CRS Installed  RDBMS Installed    CRS UP    ASM UP  RDBMS UP    DB Instance Name
-------------------------------------------------------------------------------------------------------
lamimsrvc01                Yes          Yes          Yes      Yes      Yes            cdbprd11
srvoraprd02                Yes          Yes          Yes      Yes      Yes            cdbprd12
-------------------------------------------------------------------------------------------------------



Restaurando e recuperando um backup da Oracle Cloud em outro ambiente

A utilização de ambientes Cloud está cada dia mais comum e com isso as demandas de atividades relacionadas a esta tecnologia também.

O objetivo deste artigo é demostrar o processo de restauração de um backup rman de um ambiente Oracle Database Cloud Service em um novo servidor, seja ele outro ambiente cloud, ou um ambiente on premise.

Nos ambientes Oracle Database Cloud Service, os backups são criptografados através do TDE (Transparent Data Encryption) e por isso o processo de restore em um novo ambiente se difere um pouco do processo tradicional.

É importante sempre realizar um backup do wallet file ewallet.p12, pois sem o mesmo não será possível realizar a restauração.

No cenário abaixo, estaremos restaurando um backup físico de um ambiente Oracle Database Cloud Service na versão 11.2.0.4 (PSU 11.2.0.4.180417) em uma maquina virtual também a versão 11.2.0.4 (PSU 11.2.0.4.180417). É importante que PSU do banco onde o restore estará sendo realizado esteja na versão 11.2.0.4.180417 ou superior devido a necessidade de utilização do TDE.
  • Host1 - srvcpsdb01 - Oracle Database Cloud Service.
  • Host2 - ora11g - Maquina virtual.

O primeiro passo é transferir os arquivos para o servidor onde o restore será realizado. Devemos transferir o backup rman e o wallet file. 
Para localizar o wallet file basta executar a consulta abaixo no ambiente cloud (srvcpsdb01), que a mesma mostrará o caminho onde o mesmo foi gerado.
SQL> set lines 210
SQL> col WRL_PARAMETER for a60
SQL> select * from v$encryption_wallet;

WRL_TYPE             WRL_PARAMETER                                                STATUS
-------------------- ------------------------------------------------------------ ------------------
file                 /u01/app/oracle/admin/cpsprd/tde_wallet                      OPEN

SQL> !
[oracle@srvcpsdb01 ~]$ ls -ltr /u01/app/oracle/admin/cpsprd/tde_wallet*
total 8
-rw-------. 1 oracle oinstall 2845 Feb  6 17:15 ewallet.p12
-rw-------. 1 oracle oinstall 2923 Feb  6 17:15 cwallet.sso
[oracle@srvcpsdb01 ~]$
Como podemos ver acima, o arquivo ewallet.p12 esta no diretório /u01/app/oracle/admin/cpsprd/tde_wallet, basta copia-lo ao servidor onde estaremos restaurando o backup (ora11g).

No servidor ora11g, os backups do rman e do wallet foram copiados para o diretório /u01/orabackup/bkpcps.
Banco=lamimtst-> hostname
ora11g
Banco=lamimtst->
Banco=lamimtst-> pwd
/u01/orabackup/bkpcps
Banco=lamimtst-> ls -ltr
total 3638008
-rw-r----- 1 oracle oinstall      98304 Feb  8 21:10 spf_CPSPRD_152_1_999658386.spf
-rw-r----- 1 oracle oinstall    1179648 Feb  8 21:10 df_CPSPRD_150_1_999658379.dbf
-rw-r----- 1 oracle oinstall 3721166848 Feb  8 21:10 df_CPSPRD_149_1_999657904.dbf
-rw-r----- 1 oracle oinstall    1179648 Feb  8 21:10 cf_CPSPRD_153_1_999658388.ctl
-rw-r----- 1 oracle oinstall    1691648 Feb  8 21:10 arch_CPSPRD_151_1_999658383.arc
-rw-r--r-- 1 oracle oinstall       2845 Feb 10 14:30 ewallet.p12
Banco=lamimtst->
Para configurar a autenticação do wallet seguiremos os passos abaixo:
  • Criar a estrutura de diretório do mesmo e copia-lo. 
Banco=lamimtst-> mkdir -p /u01/app/oracle/admin/cpsprd/tde_wallet
Banco=lamimtst-> cp /u01/orabackup/bkpcps/ewallet.p12 /u01/app/oracle/admin/cpsprd/tde_wallet
Banco=lamimtst-> ls -ltr /u01/app/oracle/admin/cpsprd/tde_wallet/*
-rw-r--r-- 1 oracle oinstall 2845 Feb 10 11:24 /u01/app/oracle/admin/cpsprd/tde_wallet/ewallet.p12
  • Modificar o arquivo sqlnet.ora especificando o caminho do wallet, conforme abaixo.

Banco=lamimtst-> vim $ORACLE_HOME/network/admin/sqlnet.ora
ENCRYPTION_WALLET_LOCATION =
   (SOURCE = (METHOD = FILE)
     (METHOD_DATA =
       (DIRECTORY = /u01/app/oracle/admin/cpsprd/tde_wallet)
     )
   )
  • Por último, vamos executar o utilitário orapki para gerar o wallet auto-login.

Banco=lamimtst-> orapki wallet create -wallet /u01/app/oracle/admin/cpsprd/tde_wallet -pwd "senha" -auto_login
Oracle PKI Tool : Version 11.2.0.4.0 - Production
Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.

Banco=lamimtst->
Concluídas estas etapas já é possível prosseguir normalmente com o restore/recover do ambiente no novo servidor. 
Conectar no rman, setar o dbid e restaurar o spfile.
Banco=lamimtst-> export ORACLE_SID=cpsprd Banco=lamimtst-> rman target / Recovery Manager: Release 11.2.0.4.0 - Production on Sat Feb 9 16:43:07 2019 Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved. connected to target database (not started) RMAN> set DBID=2940662000 executing command: SET DBID RMAN> startup nomount; startup failed: ORA-01078: failure in processing system parameters LRM-00109: could not open parameter file '/u01/app/oracle/product/11.2.0/dbhome_1/dbs/initcpsprd.ora' starting Oracle instance without parameter file for retrieval of spfile Oracle instance started Total System Global Area 1068937216 bytes Fixed Size 2260088 bytes Variable Size 281019272 bytes Database Buffers 780140544 bytes Redo Buffers 5517312 bytes RMAN> restore spfile from '/u01/orabackup/bkpcps/spf_CPSPRD_152_1_999658386.spf'; Starting restore at 09-FEB-19 allocated channel: ORA_DISK_1 channel ORA_DISK_1: SID=19 device type=DISK channel ORA_DISK_1: restoring spfile from AUTOBACKUP /u01/orabackup/bkpcps/spf_CPSPRD_152_1_999658386.spf channel ORA_DISK_1: SPFILE restore from AUTOBACKUP complete Finished restore at 09-FEB-19 RMAN> 
Restaurar o controlfile e montar a base
RMAN> restore controlfile from '/u01/orabackup/bkpcps/cf_CPSPRD_153_1_999658388.ctl';

Starting restore at 09-FEB-19
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=19 device type=DISK

channel ORA_DISK_1: restoring control file
channel ORA_DISK_1: restore complete, elapsed time: 00:00:04
output file name=/u02/app/oracle/oradata/cpsprd/control01.ctl
output file name=/u01/app/oracle/oradata/cpsprd/control02.ctl
Finished restore at 09-FEB-19

RMAN> alter database mount;

database mounted
released channel: ORA_DISK_1

RMAN> 
Realizar o restore/recover e abrir a base com open resetlogs.
RMAN> restore database;

Starting restore at 10-FEB-19
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=1 device type=DISK

channel ORA_DISK_1: starting datafile backup set restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_DISK_1: restoring datafile 00001 to /u02/app/oracle/oradata/cpsprd/system01.dbf
channel ORA_DISK_1: restoring datafile 00002 to /u02/app/oracle/oradata/cpsprd/sysaux01.dbf
channel ORA_DISK_1: restoring datafile 00003 to /u02/app/oracle/oradata/cpsprd/undotbs01.dbf
channel ORA_DISK_1: restoring datafile 00004 to /u02/app/oracle/oradata/cpsprd/users01.dbf
channel ORA_DISK_1: restoring datafile 00005 to /u02/app/oracle/oradata/cpsprd/eximioti01.dbf
channel ORA_DISK_1: restoring datafile 00006 to /u02/app/oracle/oradata/cpsprd/protheus_data01.dbf
channel ORA_DISK_1: restoring datafile 00007 to /u02/app/oracle/oradata/cpsprd/protheus_index01.dbf
channel ORA_DISK_1: restoring datafile 00008 to /u02/app/oracle/oradata/cpsprd/protheus_data02.dbf
channel ORA_DISK_1: restoring datafile 00009 to /u02/app/oracle/oradata/cpsprd/protheus_index02.dbf
channel ORA_DISK_1: restoring datafile 00010 to /u02/app/oracle/oradata/cpsprd/protheus_data03.dbf
channel ORA_DISK_1: reading from backup piece /u01/orabackup/bkpcps/df_CPSPRD_149_1_999657904.dbf
channel ORA_DISK_1: piece handle=/u01/orabackup/bkpcps/df_CPSPRD_149_1_999657904.dbf tag=BACKUPDATABASEFULLDIARIO
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:14:05
Finished restore at 10-FEB-19

RMAN> recover database;

Starting recover at 10-FEB-19
using channel ORA_DISK_1

starting media recovery

channel ORA_DISK_1: starting archived log restore to default destination
channel ORA_DISK_1: restoring archived log
archived log thread=1 sequence=86
channel ORA_DISK_1: reading from backup piece /u01/orabackup/bkpcps/arch_CPSPRD_151_1_999658383.arc
channel ORA_DISK_1: piece handle=/u01/orabackup/bkpcps/arch_CPSPRD_151_1_999658383.arc tag=BACKUPARCHIVELOGDIARIO
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:00:01
archived log file name=/u02/cpsprd/cpsprd_1_86_999536648.arc thread=1 sequence=86
unable to find archived log
archived log thread=1 sequence=87
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 02/10/2019 14:19:36
RMAN-06054: media recovery requesting unknown archived log for thread 1 with sequence 87 and starting SCN of 3705846

RMAN>
RMAN> alter database open resetlogs;

using target database control file instead of recovery catalog

RMAN> exit


Recovery Manager complete.
Banco=lamimtst-> sqlplus / as sysdba

SQL*Plus: Release 11.2.0.4.0 Production on Sun Feb 10 15:04:15 2019

Copyright (c) 1982, 2013, Oracle.  All rights reserved.


Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

SQL> select open_mode, database_role from v$database;

OPEN_MODE            DATABASE_ROLE
-------------------- ----------------
READ WRITE           PRIMARY

SQL>
Por hoje era isso. 
:)

#DICA - Oracle Autonomous Database for Dummies

O banco de dados Oracle, líder de mercado, agora oferece, em sua versão 18c, o Oracle Autonomous Database Cloud. Com um ajuste de desempenho, gerenciamento e provisionamento de banco de dados totalmente automatizado, o Oracle Autonomous Database Cloud facilita a operação de banco de dados para que você possa se concentrar em tarefas de maior valor e direcionar seus esforços para novas oportunidades de monetização dos seus dados.

Conheça mais sobre o Oracle Autonomous Database, através do ebook disponibilizado gratuitamente pela Oracle através do link abaixo:

https://go.oracle.com/LP=78880

Instalando um novo Database Home no Oracle Database Appliance X7-2 S

Neste artigo, será realizado o processo de instalação de um novo Database Home (Oracle Database 12.1.0.2) em um ODA X7-2 S. Posteriormente, também será efetuada a criação de uma nova instancia.

Conforme recomendação da Oracle, todo o processo será criado pelo Oracle Appliance Manager Web Console.

Primeiramente, vamos confirmar o modelo e a versão do ODA. Utilizaremos os comandos odacli describe-component para verificar a versão dos componentes e do sistema e o comando oradaacli show env_hw, para verificar o modelo. 
Ambos os comandos devem ser executados com o usuário root.
[root@tst-oda-db bin]# /opt/oracle/dcs/bin/odacli describe-component
System Version
---------------
12.2.1.4.0

Component                                Installed Version    Available Version
---------------------------------------- -------------------- --------------------
OAK                                       12.2.1.4.0            up-to-date
GI                                        12.2.0.1.180417       up-to-date
DB {
[ OraDB12201_home1,OraDB12201_home3,      12.2.0.1.180417       up-to-date
OraDB12201_home4 ]
[ OraDB12102_home1 ]                      12.1.0.2.180417       up-to-date
}
DCSAGENT                                  18.2.1.0.0            up-to-date
ILOM                                      4.0.2.20.b.r123704    up-to-date
BIOS                                      41021300              up-to-date
OS                                        6.9                   up-to-date
FIRMWARECONTROLLER                        QDV1RE14              up-to-date
[root@tst-oda-db bin]#
[root@tst-oda-db ~]# cd /opt/oracle/oak/bin
[root@tst-oda-db bin]# ./odaadmcli show env_hw
BM ODA X7-2 Small
[root@tst-oda-db bin]#
Conforme podemos validar acima, o ambiente é um ODA X7 S Bare Metal com System Version 12.2.1.4.0. 
De posse destas informações, acessaremos a DOC 888888.1 no My Oracle Support e efetuaremos o download da versão desejada. 
Neste caso, selecionaremos em RDBMS Clone Files a Versão 12.1.0.2.180417.
No campo Select a Release, indicaremos o System Version atual (consultado anteriormente 12.2.1.4.0).
Concluído o download, basta descompacta-lo e enviar para o diretório /opt (em caso de ambientes RAC, deve ser enviado para cada um dos nodes).
[root@tst-oda-db opt]# pwd
/opt
[root@tst-oda-db opt]# ls -ltr /opt/odacli-dcs-12.2.1.4.0-180617-DB-12.1.0.2.zip
-rw-r--r-- 1 root root 4181332041 Jul  6 03:44 /opt/odacli-dcs-12.2.1.4.0-180617-DB-12.1.0.2.zip
Após enviar o arquivo, vamos executar a atualização do repositório através do comando oracli update-repository.
[root@tst-oda-db opt]# ls -ltr /opt/odacli-dcs-12.2.1.4.0-180617-DB-12.1.0.2.zip
-rw-r--r-- 1 root root 4181332041 Jul  6 03:44 /opt/odacli-dcs-12.2.1.4.0-180617-DB-12.1.0.2.zip
[root@tst-oda-db opt]# /opt/oracle/dcs/bin/odacli update-repository -f /opt/odacli-dcs-12.2.1.4.0-180617-DB-12.1.0.2.zip; sleep 120
{
  "jobId" : "4784f226-e2e9-4988-9a92-125cbcf6fc21",
  "status" : "Created",
  "message" : "/opt/odacli-dcs-12.2.1.4.0-180617-DB-12.1.0.2.zip",
  "reports" : [ ],
  "createTimestamp" : "December 18, 2018 11:53:04 AM AMT",
  "resourceList" : [ ],
  "description" : "Repository Update",
  "updatedTime" : "December 18, 2018 11:53:04 AM AMT"
}
Para validar se o update foi executado com sucesso, pode-se executar o comando odacli list-jobs, que vai listar o status dos últimos processos.
[root@tst-oda-db bin]# /opt/oracle/dcs/bin/odacli list-jobs

ID                                       Description                                                                 Created                             Status
---------------------------------------- --------------------------------------------------------------------------- ----------------------------------- ----------
4b26f49f-205f-44c7-9dfe-8c5af207398c     Repository Update                                                           October 25, 2018 8:57:46 AM AMT     Success
9ea6f6d4-a894-4c09-a47c-5154d20a92db     Repository Update                                                           October 25, 2018 9:01:35 AM AMT     Success
a39ef460-bae4-4912-b07f-5987d42dd576     Storage Firmware Patching                                                   October 25, 2018 9:03:51 AM AMT     Success
4b8d0b2e-1eb9-41a2-ab4a-e1896c8ee981     Server Patching                                                             October 25, 2018 9:05:41 AM AMT     Success
01aff8cd-47c2-4520-9939-b7e8915cd851     Repository Update                                                           October 25, 2018 9:29:45 AM AMT     Success
dac52df3-c128-4a72-a534-260727da669f     Network service Deletion with name btbond1 and with id 62cc9363-841b-4fbf-8fc0-6c66310cf460 October 25, 2018 9:50:23 AM AMT     Success
b112bc81-df74-4404-86e0-2eccb89b158c     Provisioning service creation                                               October 25, 2018 10:38:52 AM AMT    Success
e6418eac-fbec-4ede-876f-dc048312e437     Database service creation with db name: CDBCURR                             November 1, 2018 7:43:34 AM AMT     Success
917c2ee5-27d4-4455-97dc-25c61869b0c1     Database service deletion with db name: CDBCURR with id : 01bc5c4e-8302-47b9-89a2-86748c5b2e2e November 1, 2018 8:01:09 AM AMT     Success
68c45799-52eb-450a-b332-fa85a0f84b44     Database service creation with db name: CDBCURR                             November 1, 2018 8:05:49 AM AMT     Success
37b134ce-d9b8-45bc-8d4a-97d9bc79dc0b     Database service deletion with db name: CDBCURR with id : 26bd7aaa-699d-4803-9346-ee3b43bede57 November 1, 2018 8:42:14 AM AMT     Success
925e7782-035d-4f87-8cea-5fadfbab258e     Database service creation with db name: CDBCURR                             November 1, 2018 10:21:14 AM AMT    Success
744a9821-1223-4e9d-a138-bde440cf3684     Database service creation with db name: CDBNCI                              November 1, 2018 10:36:36 AM AMT    Success
57c0118e-75c3-420b-adfc-12838d4419d0     Server Patching                                                             November 6, 2018 10:11:59 AM AMT    Success
81db2597-6a4b-454d-95ef-689aa6f057f9     Database service creation with db name: TASY                                November 6, 2018 10:57:00 AM AMT    Success
dd9b7310-2fe6-4eea-a2a4-e0d27530132e     Database service creation with db name: CDBHOMOL                            December 10, 2018 2:41:57 PM AMT    Success
4784f226-e2e9-4988-9a92-125cbcf6fc21     Repository Update                                                           December 18, 2018 11:53:04 AM AMT   Success
ac0bffa4-2528-4c90-87f4-a8d18bc90a3a     Database Home OraDB12102_home1 creation with version :12.1.0.2.180417       December 20, 2018 8:49:59 AM AMT    Success
d8ee208f-b560-4bd7-b450-1851df565338     Database service deletion with db name: TASY with id : 26b6dab4-f82b-4223-bd1a-10caf01ef114 December 20, 2018 9:00:29 AM AMT    Success
f8e1e008-5797-4140-bf41-0e6c472f716f     Database service creation with db name: tasy                                December 20, 2018 9:45:30 AM AMT    Success
30fc40e3-ced0-4d62-97ae-95b4ea5c17e9     Database service deletion with db name: tasy with id : 96c92544-5ba0-434d-9103-7a3e1b3e027f December 20, 2018 11:41:55 AM AMT   Success
5b85b23c-e9d5-418e-8bb8-a83ac66bc3d0     Database service creation with db name: TASY                                December 20, 2018 11:49:11 AM AMT   Success
fd689c56-9691-4cb4-affe-0b7adac6c7f6     Database service deletion with db name: TASY with id : 5c6af8d9-2084-49d7-b5f8-f4c61019bb14 December 20, 2018 12:10:17 PM AMT   Success
73cae1fe-8d4d-4490-9400-3fdfe2e46627     Database service creation with db name: TASY                                December 20, 2018 12:14:38 PM AMT   Success

[root@tst-oda-db bin]#
Concluídas todas as etapas acima, acessaremos o Oracle Appliance Manager Web Console através do IP Publico ( https://IP_PUBLICO:7093/mgmt/index.html), com o usuário oda-admin e a senha do mesmo (senha padrão: welcome1 ) .

Apos acessar com o usuário ora-admin, selecionaremos a opção Database, Database Home e Create Database Home.
Em Create Database Home, aparecerá a versão que foi dispobilizada. Basta selecioná-la e escolher a o Database Home Edition (Enterprise ou Standard) e clicar em create.

Para acompanhar o status do processo, basta clicar no link gerado que a página será redirecionada.

Ao final, podemos verificar que o novo home já esta disponível na listagem de Database Homes disponíveis.
Desta forma, concluímos o deploy da versão 12.1. Agora, para criação do database, basta acessar a aba database,  clicar em database e create database.

Na próxima tela, basta preencher os dados com as informações do database que desejamos criar e clicar em create.
Também podemos acompanhar o status clicando no link gerado quando for confirmada a criação do database.

Fonte:https://docs.oracle.com/cd/E88132_01/doc.122/e88393.pdf

#Dica - Removendo um database via linha de comando

A pedido de um leitor, estarei criando este breve artigo com o processo de remoção de um database via linha de comando.
O processo é bastante simples porém como todo processo é preciso muita cautela.

O primeiro passa é "setar" o ORACLE_SID da instância que vamos realizar a atividade
[oracle@lamimtst files]$ export ORACLE_SID=lamimtst
Após definir o SID, vamos conectar na mesma e inicia-la em modo exclusive restrict.
[oracle@lamimtst files]$  sqlplus

SQL*Plus: Release 12.2.0.1.0 Production on Mon Oct 29 15:30:52 2018

Copyright (c) 1982, 2017, Oracle.  All rights reserved.

Enter user-name: / as sysdba
Connected to an idle instance.

SQL> startup mount exclusive restrict;
ORACLE instance started.

Total System Global Area 1.4764E+10 bytes
Fixed Size                 15809624 bytes
Variable Size            6979322792 bytes
Database Buffers         7751073792 bytes
Redo Buffers               17743872 bytes
Database mounted.
SQL>
SQL> show parameter db_name;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_name                              string      lamimtst

SQL>
SQL> drop database;

Database dropped.

Disconnected from Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
SQL>
Simples, rápido, prático. Sempre é recomendada uma validação antes da execução de qualquer atividade. Principalmente em ambientes produtivos.


#Dica- Erros ORA-31693, ORA-02354, ORA-39776, ORA-00600 durante import de tabela com campo long no Oracle 12.1

Durante um processo de import de um owner via datapump, tive a ocorrência de vários erros em tabelas que continham campo do tipo long.

Abaixo apresento o cenário do processo:

  • Export owner via datapump na versão Oracle 12.2;
  • Import owner via datapump na versão Oracle 12.1;
O export era gerado com sucesso e os erros ocorriam apenas no import.
Processing object type SCHEMA_EXPORT/TABLE/TABLE_DATA
ORA-31693: Table data object "LAMIM"."LONGRAWTABLE" failed to load/unload and is being skipped due to error:
ORA-02354: error in exporting/importing data
ORA-39776: fatal Direct Path API error loading table "LAMIM"."LONGRAWTABLE"
ORA-00600: internal error code, arguments: [6965], [10], [21], [], [], [], [], [], [], [], [], []
Para contornar este erro o workaraound recomendado pela Oracle via chamado é adicionar a condição ACCESS_METHOD=CONVENTIONAL  no processo de import.
Após adicionar a condição recomendada pela Oracle o processo seguiu sem erro. Porém vale destacar que de forma mais lenta.

#Dica - Alterando o gateway default no Oracle Linux


Para realizarmos a alteração do gateway default em um ambiente Oracle Linux devemos alterar o arquivo de configuração da interface de rede.

É possível consultar o gateway default em uso através do comando route.

[root@lamimtst files]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         172.22.0.3      0.0.0.0         UG    0      0        0 em1
172.22.0.0      *               255.255.254.0   U     0      0        0 em1
No exemplo abaixo, estaremos alterado o default gateway de 172.22.0.3 para 172.22.0.2 da interface de rede em1.
[root@lamimtst files]# ifconfig
em1       Link encap:Ethernet  HWaddr 18:66:DA:99:2C:42
          inet addr:172.22.0.20  Bcast:172.22.1.255  Mask:255.255.254.0
          inet6 addr: fe80::1a66:daff:fe99:2c42/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:20138355375 errors:0 dropped:2593782 overruns:27391 frame:0
          TX packets:20880226435 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:3410493372618 (3.1 TiB)  TX bytes:6995001982923 (6.3 TiB)
          Memory:91c00000-91cfffff

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:41663998 errors:0 dropped:0 overruns:0 frame:0
          TX packets:41663998 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:10264674852 (9.5 GiB)  TX bytes:10264674852 (9.5 GiB)

[root@lamimtst files]# cat /etc/sysconfig/network-scripts/ifcfg-em1
DEVICE=em1
TYPE=Ethernet
UUID=6ee8aafe-4256-4179-b8bb-80f0415bcad6
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=none
HWADDR=18:66:DA:99:2C:42
IPADDR=172.22.0.20
PREFIX=23
GATEWAY=172.22.0.3
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
NAME="System em1"
DNS1=172.22.0.3
Para isso basta alterar o GATEWAY de 172.22.0.3 para 172.22.0.2 e realizar um restart da interface de rede para que a alteração seja aplicada.
[root@lamimtst files]# service network restart
Shutting down interface em1:                               [  OK  ]
Shutting down loopback interface:                          [  OK  ]
Bringing up loopback interface:                            [  OK  ]
Bringing up interface em1:  Determining if ip address 172.22.0.20 is already in use for device em1...
                                                           [  OK  ]
[root@lamimtst files]#
[root@lamimtst files]#
[root@lamimtst files]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         172.22.0.2      0.0.0.0         UG    0      0        0 em1
172.22.0.0      *               255.255.254.0   U     0      0        0 em1
Caso não exista um GATEWAY definido para a interface de rede específica, o ambiente pode estar utilizando um gateway "global" que é configurado em /etc/sysconfig/network.