首页 > 其他 > 详细

ORA 01102

时间:2017-09-25 18:32:51      阅读:335      评论:0      收藏:0      [点我收藏+]

     因为数据库已经做了一次shutdown,在startup时出现ora-01102依然提示排他模式。那么很容易想到的就是此时数据库的共享内存没有被真正释放。 

The "lk<sid>" and "sgadef<sid>.dbf" files are used for locking shared memory. It seems that even though no memory is allocated, Oracle thinks memory is still locked. By removing the "sgadef" and "lk" files you remove any knowledge oracle has of shared memory that is in use. Now the database can start.


方法:

1. Verify that there is not a "sgadef<sid>.dbf" file in the directory "ORACLE_HOME/dbs".

        % ls $ORACLE_HOME/dbs/sgadef<sid>.dbf  If this file does exist, remove it.

        % rm $ORACLE_HOME/dbs/sgadef<sid>.dbf

2. Verify that there are no background processes owned by "oracle"

       % ps -ef | grep ora_ | grep $ORACLE_SID

If background processes exist, remove them by using the Unix

command "kill". For example:

     % kill -9 <rocess_ID_Number>

3. Verify that no shared memory segments and semaphores that are owned by "oracle" still exist

% ipcs -b

If there are shared memory segments and semaphores owned by "oracle", remove the shared memory segments

        % ipcrm -m <Shared_Memory_ID_Number>

and remove the semaphores

       % ipcrm -s <Semaphore_ID_Number>

NOTE: The example shown above assumes that you only have one

database on this machine. If you have more than one

database, you will need to shutdown all other databases

before proceeding with Step 4.

4. Verify that the "$ORACLE_HOME/dbs/lk<sid>" file does not exist

本文出自 “ORACLE” 博客,请务必保留此出处http://2012ivan.blog.51cto.com/5241776/1968422

ORA 01102

原文:http://2012ivan.blog.51cto.com/5241776/1968422

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!