J’essaie de connecter mon projet grails à la firebase database Oracle ( Oracle 12c ) dans le système Windows (8). Cependant, chaque fois que je lance 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
Selon la suggestion Internet, j’ai également essayé de modifier mon fichier * .ora mais il ne fonctionne pas.
J’ai ajouté l’extrait suivant dans le fichier sqlnet.ora :
SQLNET.ALLOWED_LOGON_VERSION=10 SQLNET.ALLOWED_LOGON_VERSION_CLIENT=10 SQLNET.ALLOWED_LOGON_VERSION_SERVER=10
Ici j’ai essayé d’atsortingbuer (10,11,12) mais aucun d’eux ne fonctionne.
Quelqu’un peut-il m’aider s’il vous plaît avec ceci?
J’ai supprimé le fichier ojdbc14.jar et utilisé plutôt ojdbc6.jar et cela a fonctionné pour moi
Voici un texte que j’ai trouvé chez des experts-échange :
Bug 14575666
Dans 12.1, la valeur par défaut du paramètre SQLNET.ALLOWED_LOGON_VERSION a été mise à jour. Cela signifie que les clients utilisant des pilotes légers JDBC antérieurs à 11g ne peuvent s’authentifier sur les serveurs de firebase database 12.1 que si le paramètre SQLNET.ALLOWED_LOGON_VERSION est défini sur 8.
Cela entraînera l’échec de la création de la firebase database Oracle RAC 10.2.0.5 à l’aide de DBCA avec ORA-28040: Aucune erreur de protocole d’authentification correspondante dans les environnements 12.1 Oracle ASM et Oracle Grid Infrastructure.
Solution: définissez SQLNET.ALLOWED_LOGON_VERSION = 8 dans le fichier oracle / network / admin / sqlnet.ora.
Sauf pour l’ajout de ce qui suit à sqlnet.ora
SQLNET.ALLOWED_LOGON_VERSION_CLIENT = 8 SQLNET.ALLOWED_LOGON_VERSION_SERVER = 8
J’ai également ajouté les éléments suivants au client et au serveur, ce qui a résolu mon problème
SQLNET.AUTHENTICATION_SERVICES = (NONE)
Voir aussi le post ORA-28040: Pas de protocole d’authentification correspondant
Ajouter
SQLNET.ALLOWED_LOGON_VERSION_SERVER = 8
est la solution parfaite du répertoire sql.ora .. \ product \ 12.1.0 \ dbhome_1 \ NETWORK \ ADMIN
J’utilisais eclipse et après avoir essayé toutes les autres réponses, cela ne fonctionnait pas pour moi. En fin de compte, ce qui a fonctionné pour moi a été de déplacer le ojdb7.jar
vers le haut dans le chemin de ojdb7.jar
. Cela se produit lorsque plusieurs jars ont les mêmes classes en conflit.
- Sélectionnez un projet dans l’
Project Explorer
- Faites un clic droit sur
Project -> Build Path -> Configure Build Path
- Allez dans l’onglet
Order and Export
et sélectionnezojdbc.jar
- Cliquez sur le bouton
TOP
pour le déplacer vers le haut
Veuillez consulter ce lien pour le serveur Oracle 12c: http://www.redstk.com/ora-28040-no-matching-authentication-protocol-after-upgrade-to-12c/
J’ai résolu ce problème en utilisant ojdbc8.jar. Oracle 12c est compatible avec ojdbc8.jar