zoukankan      html  css  js  c++  java
  • 修改spfile导致oracle无法启动

    今天尝试着调整一下数据库的性能,由于疏忽没有做好备份(spfile.ora),直接修改了MEMORY_TARGET参数,
    alter system set MEMORY_TARGET=4096m;
    导致重启ORACLE时不能连接ORACLE时报:
    ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务
    开始是以为数据库崩溃,因为无法登陆,也不能通过指定pfile启动,都恨不得重装数据库了,后来一想,既然报的是“服务名”,就从这里着手吧,发现未设置对服务名的监听(Oracle10g默认安装后不自动设置监听):

    1. 打开<OracleHome>/network/admin/listener.ora文件,找到:
       SID_LIST_LISTENER =
       (SID_LIST =
         (SID_DESC =
           (SID_NAME = PLSExtProc)
           (ORACLE_HOME = D:oracleproduct10.2.0db_1)
           (PROGRAM = extproc)
         )
       )

    2. 添加:
       (SID_DESC =
         (GLOBAL_DBNAME = WLAN)
         (ORACLE_HOME = D:oracleproduct10.2.0db_1)  
         (SID_NAME = WLAN)
        )

    3. 最后变成:
       SID_LIST_LISTENER =
       (SID_LIST =
         (SID_DESC =
           (SID_NAME = PLSExtProc)
           (ORACLE_HOME = D:oracleproduct10.2.0db_1)
           (PROGRAM = extproc)
         )
         (SID_DESC =
           (GLOBAL_DBNAME = CORCL)
           (ORACLE_HOME = D:oracleproduct10.2.0db_1)  
           (SID_NAME = CORCL)
          )
       )

    4. 保存文件,重启服务中的TNSListener,登录成功!

    从cmd窗口登录成功
    conn sys/wlan@wlan as sysdba;

    然后通过pfile启动数据库
    startup pfile='D:oracleproduct10.2.0admindbspfileinit.ora';

    成功启动,然后创建spfile
    create spfile from pfile='D:oracleproduct10.2.0admindbspfileinit.ora';

    重新启动数据库,OK,启动成功,登录成功!大功告成!

    通过此事,得到教训,做任何事情都必须做好备份。
     
     
  • 相关阅读:
    ajax请求跨域和表单重复提交解决方案
    HTTP请求(HttpClient和PostMan)
    HTTP协议
    Oracle学习整理(二)
    oracle学习整理(一)
    MySQL的慢查询日志
    mysql索引优化
    Explain
    打好太极拳科学压腿的方法
    太极拳的压腿基本功
  • 原文地址:https://www.cnblogs.com/opps/p/4747624.html
Copyright © 2011-2022 走看看