首页 > 代码库 > ORA-09925 Linux-x86_64 Error: 2: No such file or directory
ORA-09925 Linux-x86_64 Error: 2: No such file or directory
DBCA***数据库所有实例后,本想用RMAN duplicate方式克隆DB,因此在$ORACLE_BASE目录下创建了相关的目录admin/dupl/adump ,admin/dupl/dpump 在使用sqlplus正常连接空闲实例,手贱却执行了startup命令,oracle果断出现ORA-09925错误 [oracle@tips ~]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.3.0 Production on Mon Nov 26 04:27:58 2012 Connected to an idle instance. SQL> startup ORA-09925: Unable to create audit trail file Linux-x86_64 Error: 2: No such file or directory Additional information: 9925 SQL> exit [oracle@tips ~]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.3.0 Production on Mon Nov 26 04:18:28 2012 Copyright (c) 1982, 2011, Oracle. All rights reserved. ERROR: ORA-09925: Unable to create audit trail file Linux-x86_64 Error: 2: No such file or directory Additional information: 9925 ORA-01075: you are currently logged on Enter user-name: ERROR: ORA-01017: invalid username/password; logon denied 解决思路 1.首先确定$ORACLE_BASE目录下的adump是否存在,文件名,路径是否正确,权限是否正确 admin下的格式是$ORACLE_SID/adump [oracle@tips ~]$ cd $ORACLE_BASE [oracle@tips oracle]$ ls admin cfgtoollogs checkpoints diag fast_recovery_area oradata product [oracle@tips oracle]$ cd admin/dupl/ adump/ dpdump/ [oracle@tips oracle]$ cd admin/dupl/ [oracle@tips dupl]$ ls -ld adump/ drwxr-xr-x 2 oracle oinstall 4096 Nov 26 04:19 adump 排除adump目录有无问题,排除adump权限问题 2.检查是否空间adump使用的分区是否已经过满 [oracle@tips dupl]$ df -h Filesystem Size Used Avail Use% Mounted on /dev/sda1 34G 24G 8.0G 75% / /dev/sda2 99M 5.8M 88M 7% /home tmpfs 1.0G 0 1.0G 0% /dev/shm /dev/sdb1 60G 4.6G 52G 9% /u01 排除分区过满问题 3.检查共享内存段是否被stuck,在操作系统级别查看 [oracle@tips ~]$ ipcs -a ------ Shared Memory Segments -------- key shmid owner perms bytes nattch status 0x00000000 3342337 root 644 80 2 0x00000000 3375107 root 644 16384 2 0x00000000 3407876 root 644 280 2 0x00000000 3506182 oracle 640 33554432 17 0x00000000 3538951 oracle 640 5016387584 17 0x0d99ce94 3571720 oracle 640 2097152 17 ------ Semaphore Arrays -------- key semid owner perms nsems 0x59451e7c 131073 oracle 640 154 ------ Message Queues -------- key msqid owner perms used-bytes messages 尽管没有任何数据文件,参数文件,我们可以在系统中仍可以看到,系统确实分配了共享内存段和信号量,oracle也启动了相关进程 [oracle@tips dupl]$ ps -ef | grep ora_ oracle 4977 1 0 04:28 ? 00:00:00 ora_pmon_dupl oracle 4979 1 0 04:28 ? 00:00:00 ora_psp0_dupl oracle 4981 1 0 04:28 ? 00:00:00 ora_vktm_dupl oracle 4985 1 0 04:28 ? 00:00:00 ora_gen0_dupl oracle 4987 1 0 04:28 ? 00:00:00 ora_diag_dupl oracle 4989 1 0 04:28 ? 00:00:00 ora_dbrm_dupl oracle 4991 1 0 04:28 ? 00:00:00 ora_dia0_dupl oracle 4993 1 1 04:28 ? 00:00:00 ora_mman_dupl oracle 4995 1 0 04:28 ? 00:00:00 ora_dbw0_dupl oracle 4997 1 0 04:28 ? 00:00:00 ora_lgwr_dupl oracle 4999 1 0 04:28 ? 00:00:00 ora_ckpt_dupl oracle 5001 1 0 04:28 ? 00:00:00 ora_smon_dupl oracle 5003 1 0 04:28 ? 00:00:00 ora_reco_dupl oracle 5005 1 0 04:28 ? 00:00:00 ora_mmon_dupl oracle 5007 1 0 04:28 ? 00:00:00 ora_mmnl_dupl oracle 5009 1 0 04:28 ? 00:00:00 ora_d000_dupl oracle 5011 1 0 04:28 ? 00:00:00 ora_s000_dupl oracle 5022 4912 0 04:28 pts/2 00:00:00 grep ora_ 由以上数据表明,系统分配了共享内存段,所以即使$ORACLE_BASE目录下有adump,权限也正确, 但是共享内存和信号量已经被卡住,仍会导致使用sqlplus时ORA-09925错误 解决方案有两种 1.重新系统操作系统,释放共享内存段和信号量,(重新启动系统耗时长) 2.在操作系统级别使用ipcsrm -m ,ipcsrm -s ***共享内存段和信号量即可 [oracle@tips ~]$ ipcrm -m 3506182 [oracle@tips ~]$ ipcrm -m 3538951 [oracle@tips ~]$ ipcrm -m 3571720 [oracle@tips ~]$ ipcrm -s 131073 [oracle@tips ~]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.3.0 Production on Mon Nov 26 04:19:28 2012 Copyright (c) 1982, 2011, Oracle. All rights reserved. Connected to an idle instance.
本文出自 “O Record” 博客,请务必保留此出处http://evils798.blog.51cto.com/8983296/1420947
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。