情景:不用oracle用户登录,启动数据库,用OS上的普通用户hellowheat,用口令文件启动数据库
[hellowheat@mycentos ~]$ export ORACLE_HOME=/u01/oracle/product/10.2.0/db_1/
[hellowheat@mycentos ~]$ export ORACLE_SID=orcl
[hellowheat@mycentos product]$ env |grep ORA
ORACLE_SID=orcl
ORACLE_HOME=/u01/oracle/product/10.2.0/db_1/
之后要检查$ORACLE_HOME目录权限,不然hellowheat用户没权限进入
[hellowheat@mycentos product]$ /u01/oracle/product/10.2.0/db_1/bin/sqlplus /nolog
SQL*Plus: Release 10.2.0.1.0 - Production on Wed Oct 14 15:50:21 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
SQL> conn / as sysdba
ERROR:
ORA-09925: Unable to create audit trail file
Linux Error: 13: Permission denied
Additional information: 9925
ORA-01031: insufficient privileges
首先看到ORA-01031: insufficient privileges问题的话是oracle中的权限问题,要用口令文件
而ORA-09925: Unable to create audit trail file的话也是权限的问题,应该没有进入目录的权限,然后找到audit trail file下的目录,修改之。但是仍然出现这问题。最后查资料,看了说The message you describe usually indicates that the permissions of $ORACLE_HOME/bin/oracle are not correct.
[root@mycentos db_1]# chmod 6755 bin/oracle
最后使用口令文件登录,成功启动数据库
SQL> conn sys/oracle as sysdba
Connected to an idle instance.
SQL> startup
ORACLE instance started.
Total System Global Area 167772160 bytes
Fixed Size 1218316 bytes
Variable Size 79694068 bytes
Database Buffers 83886080 bytes
Redo Buffers 2973696 bytes
Database mounted.
Database opened.