• ORA-01102 cannot mount database in EXCLUSIVE mode


    出现ORA-1102错误可能有以下几种可能:
    一、在多数据库系统中,已经有其他节点启动了实例,将多数据库共享的资源占用了;
    二、说明Oracle被异常关闭时,有资源没有被释放,一般有以下几种可能
    1、 Oracle的共享内存段或信号量没有被释放;
    2、 Oracle的后台进程(如SMON、PMON、DBWn等)没有被关闭;
    3、 用于锁内存的文件lk<sid>和sgadef<sid>.dbf文件没有被删除。
     

    关于"ORA-01102 cannot mount database in EXCLUSIVE mode ”问题,官方描述是这样的,贴下来,记录之:

    Problem Explanation: 
    ====================  
    A database is started in EXCLUSIVE mode by default.  Therefore, the  
    ORA-01102 error is misleading and may have occurred due to one of the  
    following reasons: 
      - there is still an "sgadef<sid>.dbf" file in the "ORACLE_HOME/dbs" 
        directory  
      - the processes for Oracle (pmon, smon, lgwr and dbwr) still exist 
      - shared memory segments and semaphores still exist even though the  
        database has been shutdown 
      - there is a "ORACLE_HOME/dbs/lk<db_name>" file 
    Solution Description: 
    ===================== 
    Verify that the database was shutdown cleanly by doing the following: 
    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 <Process_ID_Number> 
    3. Verify that no shared memory segments and semaphores that are owned  
       by "oracle" still exist 
       % ipcs -a 
       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<db_name>" file does not exist 
       if exit,remove it use ‘rm’ command.
    5. Startup the instance 
    转载请说明出处 |QQ:327488733@qq.com
  • 相关阅读:
    好玩的SQL
    Oracle常用函数
    树控件DeleteAllItems之前先SelectItem(NULL)
    MFC控件位置调整
    C++中一个0xC0000005访问冲突问题
    为MFC按钮添加各种图片
    LVN_ITEMCHANGED(OnItemchanged)通知响应多次的问题
    android 里边的mk文件的解析
    定义属于自己的标题栏
    block 影响代码执行由上往下执行顺序 从而影响功能的解决
  • 原文地址:https://www.cnblogs.com/zhenxing/p/3681896.html
Copyright © 2020-2023  润新知