sql >> Base de Datos >  >> RDS >> Oracle

ORA-01017 Sugerencias para la resolución de errores de Oracle

ORA-01017 es uno de los errores comunes que se observan al conectarse a la base de datos de Oracle.

Esto es lo que dice la documentación sobre este error

Esta es la lista de verificación para ejecutar para resolver el ORA-01017:nombre de usuario/contraseña no válidos

(1) El problema principal con un ORA-01017 el error es una combinación de ID de usuario y contraseñas no válida. Tienes que asegurarte de que estás ingresando la contraseña correcta

En caso de que el sistema de destino sea 11g, la contraseña puede distinguir entre mayúsculas y minúsculas

Puede comprobar el parámetro en el sistema

SQL> SHOW PARAMETER SEC_CASE_SENSITIVE_LOGON
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
sec_case_sensitive_logon             boolean     TRUE
SQL>

Cuando el parámetro anterior se establece en verdadero, la distinción entre mayúsculas y minúsculas está activada. Puede desactivarla y verificar la conexión nuevamente

SQL> ALTER SYSTEM SET SEC_CASE_SENSITIVE_LOGON = FALSE;

System altered.

Y el intento de conexión. Si funciona, entonces sabe que el problema es la distinción entre mayúsculas y minúsculas, es posible que desee modificar la contraseña de usuario y escribirla en algún lugar para recordar la contraseña que distingue entre mayúsculas y minúsculas y luego habilitar nuevamente el parámetro del sistema

SQL> ALTER user test identified by TEST1;

User altered.
SQL> ALTER SYSTEM SET SEC_CASE_SENSITIVE_LOGON = TRUE;

System altered.

(2) Puede ser que la ID de usuario no sea válida para el sistema de destino. Compruebe si el  ID de usuario existe como la columna de nombre de usuario en la vista dba_users.

select username from dba_users where username ='<user name>';

(3) Verifique su parámetro ambiental $ORACLE_SID o $TWO_TASK. Si su $ORACLE_SID está configurado en la base de datos incorrecta, es posible que obtenga un ORA-01017 error porque se está conectando a la base de datos Oracle incorrecta.

(4) Verifique su tnsnames.ora para asegurarse de que el servicio TNS esté apuntando a la base de datos correcta. Puede usar el comando tnsping para verificar eso también

TNS Ping Utility for Linux: Version 11.2.0.4.0 - Production on 22-JUNE-2016 23:01:06

Copyright (c) 1997, 2014, Oracle.  All rights reserved.

Used parameter files:
/oracle/product/11.2.0.4/network/admin/sqlnet.ora

Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = techgoeasy.com)(PORT = 1521))
(CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = TEST)))
OK (0 msec)

(5) Es posible que obtenga el error ORA-01017 en el entorno de protección de datos y también en el entorno de espera

Asegúrese de que la contraseña de usuario de SYS sea la misma tanto en el lado principal como en el de espera. Cree el archivo de contraseña de Oracle usando orapwd con la misma contraseña en el lado principal y en espera

Con la base de datos Oracle 12c, en el caso de la base de datos RAC principal, debemos tener un archivo de contraseña en la ubicación compartida

orapwd file='+DATA/TEST/PASSWORDFILE/oraTEST' entries=10 dbuniquename=TEST password=<sys pass>

(6) A veces, puede haber otra razón para el error y ORA-01017 es un error engañoso.

Puede rastrear la pila de llamadas usando truss o comando de rastreo

Linux:
strace -o /tmp/strace_user.output -cfT sqlplus Scott/[email protected]

AIX, Solaris:
truss -fea -o /tmp/truss_user.output sqlplus scott/[email protected]

HP-UX:
tusc -afpo /tmp/tusc_user.output -aef sqlplus scott/[email protected]

(7) Este error también se puede encontrar durante la duplicación activa de RMAN

 Cause The SYS password is not the same between the original/source database and auxiliary/duplicate database. 
SOLUTION Perform the following steps:
 1) Copy the password file from the original/source database to the auxiliary/duplicate database. 
 2) Run the following OS command "cksum" to check whether the password files are the same on both the original/source database and auxiliary/duplicate database. 
cksum {password_file_name}

(8) Contraseñas que no distinguen entre mayúsculas y minúsculas y ORA-1017 Nombre de usuario o Contraseña no válidos

El protocolo de autenticación predeterminado de Oracle Database 12c versión 2 (12.2) es 12 (modo exclusivo). Este protocolo requiere contraseñas que distinguen entre mayúsculas y minúsculas para la autenticación. Revise sus opciones si tiene versiones de contraseñas anteriores.

A partir de Oracle Database 12c versión 2 (12.2), el valor predeterminado para el parámetro SQLNET.ORA ALLOWED_LOGON_VERSION_SERVER se cambia a 12. Este parámetro hace referencia al protocolo de autenticación de inicio de sesión utilizado para el servidor, no a la versión de Oracle Database.

De forma predeterminada, Oracle ya no admite la autenticación basada en contraseña que no distingue entre mayúsculas y minúsculas; solo se permiten las nuevas versiones de contraseña (11G y 12C). La versión de contraseña 10G que no distingue entre mayúsculas y minúsculas ya no se genera.

Si tiene cuentas que requieren versiones de contraseña 10G, para evitar que las cuentas que usan esa versión de contraseña se bloqueen de la base de datos, puede cambiar de un modo exclusivo a un protocolo de autenticación más permisivo.

La versión de la contraseña se puede comprobar como

select username,password_version from dba_users;

Inicie sesión como administrador.

Edite el archivo SQLNET.ORA para cambiar la configuración de SQLNET.ALLOWED_LOGON_VERSION_SERVER del valor predeterminado, 12, a 11 o inferior. Por ejemplo:

SQLNET.ALLOWED_LOGON_VERSION_SERVER=11

(9)   ORA-01017 utilizando "sqlplus/as sysdba"

Esto puede suceder si el usuario del sistema operativo en el que intenta utilizar el comando anterior no es miembro del grupo dba.

Asegúrese de que el usuario del sistema operativo sea parte del grupo DBA.

Compruebe también sqlnet.ora . Si tiene  sqlnet.authentication_services=none, entonces también puede recibir este error

Espero que te guste el contenido de ORA-01017 nombre de usuario/contraseña no válido

Artículos relacionados
ORA-00911:esta publicación es para causas comunes de ORA-00911:carácter no válido en Oracle con ejemplos y resolución para ayudarlo a completar el trabajo
ORA-29913:consejos para la solución de problemas de errores ORA como ora- 29913:error al ejecutar la llamada odciexttableopen, ora-29913:error al ejecutar la llamada odciexttablefetch
ORA-00257:aprenda a solucionar el error del archivador ORA-00257. Conectar solo error interno. Varias resoluciones y ejemplos proporcionados paso a paso.
alterar usuario identificado por valores:Obtenga información sobre la contraseña de Oracle, almacenada en la base de datos, algoritmo, cómo iniciar sesión como usuario sin cambiar la contraseña de Oracle usando alterar usuario identificado por valores
ORA-28000 :ORA-28000 la cuenta está bloqueada es un error muy común. Consulte esta publicación sobre cómo resolverlo paso a paso fácilmente sin ningún problema
ORA-00904:esta publicación para la descripción y las posibles soluciones de ORA-00904:identificador no válido. También se proporcionan consejos para la solución de problemas
ORA -28002:esta publicación sobre cómo resolver ORA-28002, la contraseña caducará. Qué se puede hacer para evitarlo creando un nuevo perfil
Documentación de Oracle 12.2