Tenho o Oracle 12c instalado em dois servidores. No servidor UAT
tenho uma instância RMCAT
que hospeda um catálogo de recuperação RMAN. No servidor EXT
eu tenho duas instâncias extdev02
e extuat01
. Eu posso usar o seguinte comando no servidor UAT
para conectar ao meu RMCAT
catálogo e destino de extdev02
, mas quando tento me conectar a extuat01
ele dá umORA-01017
UAT> rman target= sys/tiger@extdev02 catalog= rmuser/tigerman@rmcat
Recovery Manager: Release 12.1.0.2.0 - Production on Wed May 30 22:59:26 2018
Copyright (c) 1982, 2014, Oracle and/or its affiliates. All rights reserved.
connected to target database: EXTDEV02 (DBID=4287636681)
connected to recovery catalog database
RMAN> exit
Recovery Manager complete.
UAT> rman target= sys/tiger@extuat01 catalog= rmuser/tigerman@rmcat
Recovery Manager: Release 12.1.0.2.0 - Production on Wed May 30 22:59:42 2018
Copyright (c) 1982, 2014, Oracle and/or its affiliates. All rights reserved.
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-00554: initialization of internal recovery manager package failed
RMAN-04005: error from target database:
ORA-01017: invalid username/password; logon denied
Recebo resultados OK tnsping
do UAT
servidor para ambas as instâncias no EXT
, e posso me conectar a um usuário não dba do UAT
servidor para ambas as instâncias. Eu recriei o arquivo de senha do Oracle usando orapw
na EXT
instância do servidor EXTUAT01
e isso não ajudou.
Os nomes das instâncias são extdev02
e extuat01
no servidor EXT
. Aqui estão meus arquivos de senha nesse servidor:
/u01/app/oracle/product/12.1.0.2/db_1/dbs> ls -o orapw*
-rw-r-----. 1 oracle 18432 Jun 1 00:07 orapwextuat01
/u01/app/oracle/product/12.1.0.2/db_0/dbs> ls -o orapw*
-rw-r-----. 1 oracle 7680 Feb 6 20:22 orapwextdev02
Observe que eles estão em dois diretórios ORACLE_HOME diferentes. O valor para remote_login_passwordfile
é EXCLUSIVE
para ambas as instâncias
Problema Resolvido
O servidor UAT que hospeda a instância do catálogo RMAN RMCAT
foi reinicializado há alguns dias para adicionar memória e agora posso me conectar! Se eu tivesse uma máquina de retorno, voltaria e veria se tentar reiniciar o ouvinte no host UAT teria ajudado; em qualquer caso, funciona. Obrigado pelas sugestões; Estou colocando as respostas apenas para a posteridade.
Comentários respondidos
- Não é um ambiente de instância Grid nem RAC nem Dataguard.
- selecionando de v$pwfile_users:
extdev02:
AtlasExt:SYS@extdev02> select * from v$pwfile_users;
USERNAME SYSDBA SYSOPER SYSASM SYSBACKUP SYSDG SYSKM CON_ID
--------- ------- ------- ------- ---------- ------- ------ ------
SYS TRUE TRUE FALSE FALSE FALSE FALSE 0
extuat01 (nota: eu executei orapw especificando sysbackup sem sucesso)
AtlasExt:SYS@extuat01> select * from v$pwfile_users;
USERNAME SYSDBA SYSOPER SYSASM SYSBACKUP SYSDG SYSKM CON_ID
--------- ------- ------- ------- ---------- ------ -------- ------
SYS TRUE TRUE FALSE FALSE FALSE FALSE 0
SYSBACKUP FALSE FALSE FALSE TRUE FALSE FALSE 0
- Não consegui conectar do UAT à instância EXT
extuat01
via SQL*Plus; mas após a reinicialização eu estava:
extdev02 do UAT:
AtlasUAT:SYS@extdev02> select host_name, instance_name from v$instance;
HOST_NAME INSTANCE_NAME
------------------------- ----------------
plsekatlasexta01 extdev02
extuat01 do UAT:
18:25:07 AtlasUAT:SYS@extuat01> select host_name, instance_name from v$instance;
HOST_NAME INSTANCE_NAME
------------------------- ----------------
plsekatlasexta01 extuat01
- Os processos extuat01 e extdev01 verificados estavam sendo executados na mesma casa:
PID pmon encontrado:
plsekatlasexta01> ps -fu oracle | grep pmon | grep -v grep
oracle 1976 1 0 Jun01 ? 00:00:43 ora_pmon_extuat01
oracle 32373 1 0 May16 ? 00:02:45 ora_pmon_extdev02
plsekatlasexta01> cat /proc/1976/environ | tr '\000' '\n' | grep -E 'ORACLE_(HOME|SID)'
ORACLE_HOME=/u01/app/oracle/product/12.1.0.2/db_1
ORACLE_SID=extuat01
plsekatlasexta01> cat /proc/32373/environ | tr '\000' '\n' | grep -E 'ORACLE_(HOME|SID)'
ORACLE_HOME=/u01/app/oracle/product/12.1.0.2/db_0
ORACLE_SID=extdev02
O servidor UAT que hospeda a instância do catálogo RMAN
RMCAT
foi reinicializado há alguns dias para adicionar memória e agora posso me conectar às duas instâncias de banco de dados no servidor EXT.Não me lembro se tentei recarregar/reiniciar o listener TNS no host UAT quando não estava funcionando, mas agora que o servidor foi reiniciado está funcionando; Suponho que a reinicialização fez o ouvinte funcionar. Obrigado a todos pelos comentários úteis.