Oracle
 sql >> Datenbank >  >> RDS >> Oracle

ORA-01017 Oracle-Fehlerbehebungstipps

ORA-01017 ist einer der häufigsten Fehler beim Verbinden mit der Oracle-Datenbank.

Hier ist, was die Dokumentation zu diesem Fehler sagt

Hier ist die Checkliste, die ausgeführt werden muss, um ORA-01017 zu beheben:ungültiger Benutzername/ungültiges Passwort

(1) Das Hauptproblem mit einem ORA-01017 Fehler ist eine ungültige Kombination aus Benutzer-ID und Passwort. Sie müssen sicherstellen, dass Sie das richtige Passwort eingeben

Falls das Zielsystem 11g ist, kann das Passwort zwischen Groß- und Kleinschreibung unterscheiden

Sie können den Parameter im System überprüfen

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

Wenn der obige Parameter auf „true“ gesetzt ist, ist die Groß-/Kleinschreibung aktiviert. Sie können sie deaktivieren und die Verbindung erneut prüfen

SQL> ALTER SYSTEM SET SEC_CASE_SENSITIVE_LOGON = FALSE;

System altered.

Und der Versuch, eine Verbindung herzustellen. Wenn es funktioniert, dann wissen Sie, dass die Groß-/Kleinschreibung das Problem ist. Sie können das Benutzerpasswort ändern und es irgendwo notieren, um sich an das Passwort zu erinnern, bei dem die Groß-/Kleinschreibung beachtet wird, und dann den Systemparameter erneut aktivieren

SQL> ALTER user test identified by TEST1;

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

System altered.

(2) Es kann sein, dass die Benutzerkennung für das Zielsystem ungültig ist. Prüfen Sie, ob die  Nutzer-ID in der Spalte „Nutzername“ in der Ansicht „dba_users“ vorhanden ist.

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

(3) Überprüfen Sie Ihren Umgebungsparameter $ORACLE_SID oder $TWO_TASK. Wenn Ihre $ORACLE_SID auf die falsche Datenbank eingestellt ist, erhalten Sie möglicherweise ein ORA-01017 Fehler, weil Sie sich mit der falschen Oracle-Datenbank verbinden.

(4) Überprüfen Sie Ihre tnsnames.ora, um sicherzustellen, dass der TNS-Dienst auf die richtige Datenbank verweist. Sie können das auch mit dem tnsping-Befehl überprüfen

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) Möglicherweise erhalten Sie auch den Fehler ORA-01017 in der Dataguard-Umgebung und in der Standby-Umgebung

Stellen Sie sicher, dass das SYS-Benutzerkennwort sowohl auf der primären als auch auf der Standby-Seite identisch ist. Erstellen Sie die Oracle-Passwortdatei mit orapwd mit demselben Passwort sowohl auf der Primär- als auch auf der Standby-Seite

Bei der Oracle-Datenbank 12c benötigen wir im Fall der primären RAC-Datenbank eine Passwortdatei am freigegebenen Speicherort

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

(6) Manchmal kann es einen anderen Grund für den Fehler geben und ORA-01017 ist ein irreführender Fehler.

Sie können den Call-Stack verfolgen, indem Sie den Befehl truss oder trace verwenden

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) Dieser Fehler kann auch während der aktiven RMAN-Duplizierung auftreten

 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) Passwörter ohne Berücksichtigung der Groß- und Kleinschreibung und ORA-1017 Ungültiger Benutzername oder Passwort

Das Standardauthentifizierungsprotokoll von Oracle Database 12c Release 2 (12.2) ist 12 (Exclusive Mode). Dieses Protokoll erfordert für die Authentifizierung Passwörter mit Berücksichtigung der Groß-/Kleinschreibung. Überprüfen Sie Ihre Optionen, wenn Sie frühere Versionen von Passwörtern haben.

Ab Oracle Database 12c Release 2 (12.2) wird der Standardwert für den SQLNET.ORA-Parameter ALLOWED_LOGON_VERSION_SERVER auf 12 geändert. Dieser Parameter bezieht sich auf das Anmeldeauthentifizierungsprotokoll, das für den Server verwendet wird, nicht auf das Oracle Database-Release.

Standardmäßig unterstützt Oracle keine kennwortbasierte Authentifizierung ohne Berücksichtigung der Groß-/Kleinschreibung mehr; nur die neuen Passwortversionen (11G und 12C) sind erlaubt. Die 10G-Passwortversion ohne Berücksichtigung der Groß-/Kleinschreibung wird nicht mehr generiert.

Wenn Sie Konten haben, die 10G-Passwortversionen erfordern, können Sie von einem exklusiven Modus zu einem toleranteren Authentifizierungsprotokoll wechseln, um zu verhindern, dass Konten, die diese Passwortversion verwenden, aus der Datenbank gesperrt werden.

Die Passwortversion kann überprüft werden als

select username,password_version from dba_users;

Melden Sie sich als Administrator an.

Bearbeiten Sie die Datei SQLNET.ORA, um die Einstellung SQLNET.ALLOWED_LOGON_VERSION_SERVER von der Standardeinstellung 12 auf 11 oder niedriger zu ändern. Zum Beispiel:

SQLNET.ALLOWED_LOGON_VERSION_SERVER=11

(9)   ORA-01017 mit „sqlplus / as sysdba“

Dies kann passieren, wenn der Benutzer des Betriebssystems, in dem Sie versuchen, den obigen Befehl zu verwenden, kein Mitglied der dba-Gruppe ist.

Stellen Sie sicher, dass der Betriebssystembenutzer Teil der DBA-Gruppe ist.

Überprüfen Sie auch sqlnet.ora  . Wenn Sie  sqlnet.authentication_services=none haben, erhalten Sie möglicherweise auch diesen Fehler

Ich hoffe, Ihnen gefällt der Inhalt von ORA-01017 Ungültiger Benutzername/Passwort

Verwandte Artikel
ORA-00911 :Dieser Beitrag ist für häufige Ursachen von ORA-00911:ungültiges Zeichen in Oracle mit Beispielen und Lösungen, die Ihnen helfen, den Job abzuschließen.
ORA-29913 :Tipps zur Fehlerbehebung bei ORA-Fehlern wie ora- 29913:Fehler beim Ausführen des Callouts „odciexttableopen“, ora-29913:Fehler beim Ausführen des Callouts „odciexttablefetch“
ORA-00257:Erfahren Sie, wie Sie den Archivierungsfehler ORA-00257 beheben. Nur internen Fehler verbinden. Verschiedene Lösungen und Beispiele werden Schritt für Schritt bereitgestellt.
Durch Werte identifizierten Benutzer ändern:Erfahren Sie mehr über das in der Datenbank gespeicherte Oracle-Passwort, den Algorithmus und wie Sie sich als Benutzer anmelden, ohne das Oracle-Passwort mit Alter User zu ändern identifiziert durch Werte
ORA-28000 :ORA-28000 Das Konto ist gesperrt ist ein sehr häufiger Fehler. Sehen Sie sich diesen Beitrag an, wie Sie das Problem Schritt für Schritt und ohne Probleme lösen können
ORA-00904 :Dieser Beitrag enthält die Beschreibung und mögliche Lösungen für ORA-00904:Ungültige Kennung. Tipps zur Fehlerbehebung werden ebenfalls bereitgestellt
ORA -28002:In diesem Beitrag erfahren Sie, wie Sie ORA-28002 lösen. Das Kennwort läuft ab. Was kann getan werden, um dies vollständig zu vermeiden, indem Sie ein neues Profil erstellen
Oracle 12.2-Dokumentation