原先系统有4个控制文件,分别如下:'E:\oracle\product\10.2.0\oradata\sanding\control01.ctl',
'E:\oracle\product\10.2.0\oradata\sanding\control02.ctl',
'E:\oracle\product\10.2.0\oradata\sanding\control03.ctl',
'f:\control04.ctl',由于疏忽,在做实验的时候,执行了如下语句(红色的2条写成了一样的):alter system set control_files=
  2 'E:\oracle\product\10.2.0\oradata\sanding\control01.ctl',
  3 'E:\oracle\product\10.2.0\oradata\sanding\control02.ctl',
4 'E:\oracle\product\10.2.0\oradata\sanding\control02.ctl',

  5 'f:\control04.ctl' ,
  6 'f:\control05.ctl'  cope=spfile;现在启动了服务后,就再也登不进去了,一直提示“所有例程都无法建立新连接”咋办?

解决方案 »

  1.   

    shutdown immediate;
    startup pfile = 'xxxxx';
    alter system set control_files = 'xxxx';
    shutdown immediate;
    startup;
      

  2.   

    shutdown immediate
    startup pfile='...initsid.ora'
    alter system reset control_files scope=spfile sid='*'
    startup force
      

  3.   


    XXXXX是把所有的控制文件都输一遍?
      

  4.   

    可是我现在都没法连SQLPLUS啊?在哪输shutdown immediate;啊?
      

  5.   


    输入:shutdown immediate;
    提示“not logged on”
    再输入:startup pfile = 'xxxxx';
    提示“insufficient privileges”
      

  6.   

    要以 sysdba 的身份登陆
      

  7.   


    你敲击conn 就直接报错吗?
      

  8.   

    我输入:alter system reset control_files='......' scope=spfile提示第一行错误
      

  9.   


    可以连接,conn sys/123 as sysdba不过根据您的那句:alter system set control_files = 'xxxx';我输入alter ........scope=spfile会提示第一行错误
      

  10.   

    然后关闭数据库呢shutdown immediate;
    从pfile去启动。
      

  11.   


    不用理会“第一行错误吗?”如何从pFILE启动啊?
      

  12.   

    你直接运行shutdowm immediate什么现象。第一行的错误是什么呢?
      

  13.   


    运行“shutdown immediate”会如下提示:ORA-01507:?????
    oracle例程已经关闭
    在输入startup pfile=,,,,,,,,,,,,,,,,,,,,,,提示“ORACLE例程已启动
    TOTAL SYSTEM..................
    ..............................
    ...............................
    ora-01167:????????/??????
    ORA-00202:???:'e:\..............control01.ctl
      

  14.   

    1 2楼的真不知道你们怎么混到星星的
    sqlplus /nologstartup nomout;alter system set control_files=
      'E:\oracle\product\10.2.0\oradata\sanding\control01.ctl',
     'E:\oracle\product\10.2.0\oradata\sanding\control02.ctl',
     'E:\oracle\product\10.2.0\oradata\sanding\control03.ctl',
      'f:\control04.ctl' ,
      'f:\control05.ctl' cope=spfile;
    alter database open;
      

  15.   

    复制楼主是话是发现  楼主少了个s,应该是 scope=spfile
      

  16.   

    你的方法是可行,你看了LZ报的是什么错没有?
    你自己好好想想。。我使用pfile正常启动,然后修改spfile,然后重启思路有什么不对。可能有点绕。
    其实总的原因都不是这里,LZ报的错是'所有例程都无法建立新连接',表明监听没起来,后来我和他的
    沟通中,这表明LZ的没的没等监听起来就启动oracle报的错,后来发现他可以启动oracle,只是报了控制
    文件的错误,其实最直接的alter system.....然后关闭重启就行了。有误导的地方请zjwssg海涵。。呵呵。