PDA

View Full Version : ORA-01031: insufficient privileges (Linux/Unix)


Geofrey Rainey
02-13-2008, 06:50 AM
Return code = 1031
For some operations Dbvisit logs on to the database as sysdba without a password. If Dbvisit errors with return code 1031, please check:

1) There is an Oracle password file. A password file is created with the command:
orapwd file=$ORACLE_HOME/dbs/orapw$ORACLE_SID password=<pwd> entries=<greater than0>
Also please ensure that the password is the same as the sys Oracle user.

NOTE: You may need to restart the Database for this password file to take affect.

2) OS account is a member of the Oracle DBA group.

3) If you have a sqlnet.ora file, then ensure
SQLNET.AUTHENTICATION_SERVICES = ALL

4) SQL> show parameter remote_login
remote_login_passwordfile EXCLUSIVE

5) Try logging on manually to the database with sqlplus to see if the same error exists. Use the same OS account as the Dbvisit OS user:
sqlplus "/ as sysdba"
(Ensure that the Oracle environment is set to the correct ORACLE_SID and ORACLE_HOME)
If the message: ORA-01031: insufficient privileges is displayed, then Dbvisit will also error with the same message.
Revisit items 1-4 above until the ORA-01031 is no longer displayed when logging onto the database.

fabien.morel
03-17-2010, 11:08 PM
Just to add some informations :

- This work also on windows
- SQLNET.AUTHENTICATION_SERVICES = (ALL) is not the correct parameter for everyone. This parameter include all authentication methods but in a certain order. For my own, it didn't work and the good parameter is : SQLNET.AUTHENTICATION_SERVICES=(TNSNAMES,NTS)

after doing that, it works fine !