C:\HOMEWARE>sqlplus / as sysdba SQL*Plus: Release 11.2.0.1.0 Production on Mon Mar 28 13:22:53 2011 Copyright (c) 1982, 2010, Oracle. All rights reserved. ERROR: ORA-01031: insufficient privileges
En effet lorsque le paramètre SQLNET.AUTHENTICATION_SERVICES de votre fichier SQLNET.ora est positionné à NONE ou pas positionné du tout (NONE est la valeur par défaut), alors vous ne pouvez pas vous connecter en SYSDBA sans préciser de mot de passe.
Pour préciser à oracle que l'authentification se fait par l'OS windows il faut mettre ce paramètre à NTS:
SQLNET.AUTHENTICATION_SERVICES = (NTS)
Ainsi, vous n'êtes plus obligé de préciser le mot de passe:
C:\HOMEWARE>sqlplus / as sysdba SQL*Plus: Release 11.2.0.1.0 Production on Tue Mar 29 15:04:51 2011 Copyright (c) 1982, 2010, Oracle. All rights reserved. Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL>
Je tente de changer le NONE en NTS en vain... Le fichier est utilisé et je ne sais pas par quoi. Comment dois-je faire?
RépondreSupprimerJ'ai réussi à modifier le sqlnet.ora... Mais, votre méthode ne marche pas...
RépondreSupprimerMerci. Au contraire des 2 messages précédents, cela fonctionne très bien chez moi sous Oracle 10.2.01.0 / Windows Server 2003. NTS est une valeur propre au monde Microsoft. Sous Unix/Linux : connexion possible sans mot de passe avec différent de NONE ou NTS ou encore sans le paramètre SQLNET.AUTHENTICATION_SERVICES.
RépondreSupprimerD'après la doc d'Oracle :
Authentication Methods Available with Oracle Net Services:
...
nts for Windows native operating system authentication.
C'est bon pour moi. Vérifier aussi que le compte est dans le groupe ora_dba
SupprimerJ'ai aussi dû me déconnecter et reconnecter