ORA-28040: aucune exception relative au protocole d'authentification assorti
j'essaie de connecter mon projet grails à la base de données Oracle ( Oracle 12c ) dans le système windows(8). Cependant, chaque fois que j'exécute mon application, j'obtiens l'exception suivante:
Caused by: org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (ORA-28040: No matching authentication protocol
)
Caused by: java.sql.SQLException: ORA-28040: No matching authentication protocol
D'après une suggestion sur internet, j'ai aussi essayé d'éditer mon *.ora fichier mais il ne fonctionne pas.
j'ai ajouté l'extrait suivant dans sqlnet.ora dossier:
SQLNET.ALLOWED_LOGON_VERSION=10
SQLNET.ALLOWED_LOGON_VERSION_CLIENT=10
SQLNET.ALLOWED_LOGON_VERSION_SERVER=10
ici j'ai essayé d'assigner (10,11,12) mais aucun d'eux ne fonctionne.
est-ce que quelqu'un peut m'aider avec ça ?
7 réponses
j'ai supprimé le ojdbc14.jar fichier ojdbc6.jar à la place et il a travaillé pour moi
voici un texte que j'ai trouvé à experts-échange :
Bug 14575666
dans 12.1, la valeur par défaut pour le SQLNET.ALLOWED_LOGON_VERSION paramètre a été mis à jour à 11. Cela signifie que les clients de la base de données utiliser des pilotes thin JDBC pré-11g les pilotes thin ne peuvent pas s'authentifier à la base de données 12.1 serveurs à moins que theSQLNET.Le paramètre ALLOWED_LOGON_VERSION est défini à ancien défaut de 8.
cela provoquera une création de base de données RAC 10.2.0.5 Oracle en utilisant DBCA pour echec avec L'ORA-28040: pas d'erreur de protocole d'authentification correspondant Oracle 12.1 ASM et Oracle Grid Infrastructure environments.
solution de contournement: mettre SQLNET.ALLOWED_LOGON_VERSION=8 dans la oracle/network/admin / sqlnet.ora fichier.
sauf pour ajouter ce qui suit à sqlnet.ora
SQLNET.ALLOWED_LOGON_VERSION_CLIENT = 8
SQLNET.ALLOWED_LOGON_VERSION_SERVER = 8
j'ai aussi ajouté ce qui suit au Client et au serveur, ce qui a résolu mon problème""
SQLNET.AUTHENTICATION_SERVICES = (NONE)
Voir aussi post ORA-28040: Pas de correspondance protocole d'authentification
ajouter
SQLNET.ALLOWED_LOGON_VERSION_SERVER = 8
est la solution parfaite SQL.répertoire ora ..\product\12.1.0 \ dbhome_1\NETWORK\ADMIN
j'utilisais eclipse et après avoir essayé toutes les autres réponses, ça n'a pas marché pour moi.
En fin de compte, ce qui a fonctionné pour moi a été le déplacement du ojdb7.jar
vers le haut dans le chemin de construction. Cela se produit lorsque plusieurs pots ont des classes contradictoires.
- sélectionner le projet dans
Project Explorer
- clic droit sur
Project -> Build Path -> Configure Build Path
- passez à
Order and Export
et sélectionnezojdbc.jar
- , Cliquez sur le bouton
TOP
pour le déplacer vers le haut
Pls consulter ce lien pour Oracle 12c serveur: http://www.redstk.com/ora-28040-no-matching-authentication-protocol-after-upgrade-to-12c/
j'ai résolu ce problème en utilisant ojdbc8.pot. Oracle 12c est compatible avec ojdbc8.jar