SQL> create controlfile database orcl noresetlogs
  2  logfile
  3    'D:\oracle\product\10.2.0\oradata\orcl\REDO01.LOG' size 50m,
  4    'D:\oracle\product\10.2.0\oradata\orcl\REDO02.LOG' size 50m,
  5    'D:\oracle\product\10.2.0\oradata\orcl\REDO03.LOG' size 50m
  6  datafile
  7    'D:\oracle\product\10.2.0\oradata\orcl\EXAMPLE01.DBF',
  8    'D:\oracle\product\10.2.0\oradata\orcl\SYSAUX01.DBF',
  9    'D:\oracle\product\10.2.0\oradata\orcl\SYSTEM01.DBF',
 10    'D:\oracle\product\10.2.0\oradata\orcl\TEMP01.DBF',
 11    'D:\oracle\product\10.2.0\oradata\orcl\UNDOTBS01.DBF',
 12    'D:\oracle\product\10.2.0\oradata\orcl\USERS01.DBF',
 13    'G:\ssl\orcl\tablespace\MYTEST.DBF',
 14    'G:\ssl\orcl\tablespace\USER01.DBF',
 15    'G:\ssl\orcl\tablespace\USER02.DBF',
 16    'G:\ssl\orcl\tablespace\USER03.DBF',
 17    'G:\ssl\orcl\tablespace\USER04.DBF'
 18    character set ZHS16GBK
 19  ;错误提示如下:
create controlfile database orcl noresetlogs
*
第 1 行出现错误:
ORA-01503: CREATE CONTROLFILE ??
ORA-01160: ???? data file
ORA-01110: ???? : 'D:\oracle\product\10.2.0\oradata\orcl\TEMP01.DBF'

我在网上搜到类似的问题,给出的解答是增加DB_BLOCK_SIZE的值。我的DB_BLOCK_SIZE的值是8192,我把它改成10240后,输入Create Controlfile命令又出现下述错误:
create controlfile database orcl noresetlogs
*
第 1 行出现错误:
ORA-25157: ?????? 10240 ??

有没有人能帮我解决这个问题,谢谢!

解决方案 »

  1.   

    create controlfile database orcl noresetlogs 

    第 1 行出现错误: ----------------------------是不是语法有错误?
      

  2.   

    那个DB_BLOCK_SIZE 不能那样直接改吧,语法检查一下吧
      

  3.   

    CREATE CONTROLFILE REUSE DATABASE "demo" NORESETLOGS NOARCHIVELOG
        MAXLOGFILES 32
        MAXLOGMEMBERS 2
        MAXDATAFILES 32
        MAXINSTANCES 1
        MAXLOGHISTORY 449
    LOGFILE
      GROUP 1 '/path/oracle/dbs/t_log1.f'  SIZE 500K,
      GROUP 2 '/path/oracle/dbs/t_log2.f'  SIZE 500K
    # STANDBY LOGFILE
    DATAFILE
      '/path/oracle/dbs/t_db1.f',
      '/path/oracle/dbs/dbu19i.dbf',
      '/path/oracle/dbs/tbs_11.f',
      '/path/oracle/dbs/smundo.dbf',
      '/path/oracle/dbs/demo.dbf'
    CHARACTER SET WE8DEC
    ;--reuse 或是 set, 你漏掉了?
      

  4.   

    10    'D:\oracle\product\10.2.0\oradata\orcl\TEMP01.DBF', 
    在DATAFILE项里不能给出临时文件,去掉上面这一行,并把DB_BLOCK_SIZE设回原来的值,重新创建即可。
    自己解决了,不过还是要谢谢大家的支持,散分收工了,呵呵!