Unable to discover Oracle server with read only permissions. (NETIQKB13459)

  • 7713459
  • 02-Feb-2007
  • 25-Jan-2011

Environment

NetIQ AppManager 6.x
NetIQ AppManager 7.0.x
Oracle 9.x

Situation

Unable to discover Oracle server with read only permissions.

Error generated by Discovery_Oracle Knowledge Script.

Error: 'Discovery failed for Database - OraHome92@NT12, Error:-SQL_STATE=S0002, native error=942, msg='[Oracle][ODBC][Ora]ORA-00942: table or view does not exist. Oracle user netiq may not have the sufficient privilege.'

Error: 'Discovery - Unable to get Server properties using database - OraHome92@NT27,SQLSTATE=IM004, native error=o, msg='[Microsoft][ODBC Driver Manager] Driver's SQLAllocHandle on SQL_HANDLE_ENV failed'.

Resolution

To resolve this discovery issue, grant the appropriate permissions:

  1. Verify your version of Oracle. This fix does not work with Oracle 8.1.7. For more information about supported Oracle versions, see Supported Products for AppManager Suite.
  2. Run the Oracle utility SQLPLUS.
  3. Connect to Oracle database as SYSDBA.

    sqlplus> Connect system/manager@ORAHOME901$CIRRUS90.TSQ2000.NETIQ.COM AS SYSDBA
  4. Run the following SQL queries at the sqlplus> prompt:

    create user NETIQ identified by netiq;
    GRANT connect to NETIQ;
    GRANT SELECT on sys.ts$ to NETIQ;
    GRANT SELECT on sys.seg$ to NETIQ;
    GRANT SELECT on sys.fet$ to NETIQ;
    GRANT SELECT on dba_rollback_segs to NETIQ;
    GRANT SELECT on dba_data_files to NETIQ;
    GRANT SELECT on dba_free_space to NETIQ;
    GRANT SELECT on dba_extents to NETIQ;
    GRANT SELECT on dba_tables to NETIQ;
    GRANT SELECT on SYS.v_$instance to NETIQ;
    GRANT SELECT ON SYS.V_$ARCHIVE_DEST TO NETIQ;
    GRANT SELECT ON SYS.V_$BGPROCESS TO NETIQ;
    GRANT SELECT ON SYS.V_$DATABASE TO NETIQ;
    GRANT SELECT ON SYS.V_$DATAFILE TO NETIQ;
    GRANT SELECT ON SYS.V_$LIBRARYCACHE TO NETIQ;
    GRANT SELECT ON SYS.V_$LOCK TO NETIQ;
    GRANT SELECT ON SYS.V_$PARAMETER TO NETIQ;
    GRANT SELECT ON SYS.V_$PROCESS TO NETIQ;
    GRANT SELECT ON SYS.V_$ROWCACHE TO NETIQ;
    GRANT SELECT ON SYS.V_$SESSION TO NETIQ;
    GRANT SELECT ON SYS.V_$SESSTAT TO NETIQ;
    GRANT SELECT ON SYS.V_$STATNAME TO NETIQ;
    GRANT SELECT ON SYS.V_$SYSSTAT TO NETIQ;
    GRANT SELECT ON SYS.V_$VERSION TO NETIQ;
    GRANT SELECT ON SYS.DBA_SEGMENTS TO NETIQ;
    GRANT SELECT ON SYS.DBA_TABLESPACES TO NETIQ;
    GRANT SELECT ON SYS.DBA_USERS TO NETIQ;
    GRANT SELECT ON SYS.V_$THREAD TO NETIQ;
    GRANT SELECT ON SYS.DBA_TEMP_FILES TO NETIQ;


    For more information, contact Technical Support at www.netiq.com/support.

Cause

The issue occurs when the user account does not have sufficient privileges to access the Oracle database (ORA-00942) and/or access to the directory that is the Default_home for the databases. The errors are Oracle specific, not AppManager error code.

Additional Information

Formerly known as NETIQKB13459

Currently, the solution will not work with Oracle 8.1.7 (and possibly earlier versions of 8i). For more information about supported Oracle versions, see Supported Products for AppManager Suite.