你的oracle什么版本
还缺init.ora

解决方案 »

  1.   

    版本应该是一样的,都是8.17
    只有dbf,log,和control文件,还有一个空的archive目录,大家帮忙看看,该怎么把他的数据导入进来,谢谢!
      

  2.   

    为啥不让他传一个dmp文件呢。那直接imp多省事啊。现在,你只有数据文件和控制文件,可以参考oracle 冷备份和恢复的方法来实现.
      

  3.   

    步骤:
    1.COPY 你的DBF文件到你的数据库的ORADATA\SID 目录下;
    2.以SYS DBA生分登陆,建立创建控制文件的SQL,并运新
      比如CLONE.SQL:
    ------------
    --其中"PROD"是数据库SID,你可以替换成你的SID,STARTUP NOMOUNT pfile=D:\oracledb\PROD\PFILE\initPROD.ora; 
    CREATE CONTROLFILE set DATABASE "PROD" RESETLOGS  NOARCHIVELOG
    --  SET STANDBY TO MAXIMIZE PERFORMANCE
        MAXLOGFILES 5
        MAXLOGMEMBERS 3
        MAXDATAFILES 100
        MAXINSTANCES 1
        MAXLOGHISTORY 226
    -- STANDBY LOGFILE --设置LOGFILE的位置
    LOGFILE
      GROUP 1 'D:\oracledb\PROD\REDO01.LOG'  SIZE 100M,
      GROUP 2 'D:\oracledb\PROD\REDO02.LOG'  SIZE 100M,
      GROUP 3 'D:\oracledb\PROD\REDO03.LOG'  SIZE 100M
    --设置DATAFILE的位置 以下只是举例,写入你实际的数据文件位置
    DATAFILE
      'D:\oracledb\PROD\SYSTEM01.DBF',
      'D:\oracledb\PROD\UNDOTBS01.DBF',
      'D:\oracledb\PROD\IFSAPP_DATA.DBF',
      'D:\oracledb\PROD\IFSAPP_INDEX.DBF',
      'D:\oracledb\PROD\IFSAPP_REPORT_DATA.DBF',
      'D:\oracledb\PROD\IFSAPP_REPORT_INDEX.DBF',
      'D:\oracledb\PROD\IFSAPP_ARCHIVE_DATA.DBF',
      'D:\oracledb\PROD\IFSAPP_ARCHIVE_INDEX.DBF'
    --设置字符集
    CHARACTER SET UTF8
    ;
    -----------------------------------
    3.回复数据库,命令:
      RECOVER DATABASE USING BACKUP CONTROLFILE UNTIL CANCEL;4.启动数据库重置LOG文件,命令:
      ALTER DATABASE OPEN RESETLOGS;
    5.再增加一个临时表空间就可以了
      

  4.   

    有几个文件是相同的,可以覆盖吗
    我昨天把所有的文件拷到我的机器的sid目录下,覆盖后就启不来了,呵呵,重装了oracle
      

  5.   

    你要改固体的路径的:)我的 只是创建控制文件的例子
    你要先 shutdown数据库,然后再运行哪个SQL
    记得改里面的东西,
    比如
    1.参数文件要用你的参数文件和路径,
    2.路径要写你的数据文件存放的路径,
    3.其中的PROD要改成你的SID
    不能全不抄我的哪个 那只是例子
      

  6.   

    请教,那如何制做dmp文件呢,最好有详细步骤,我初学,谢谢各位!
      

  7.   

    制做dmp文件步骤:1.startup  数据库;
    2.cmd下使用命令exp
    3.按照提示输入条件
    4.导出完毕
      

  8.   

    用exp导出,在另一台机器imp就可以了
      

  9.   

    exp命令不能用啊不要在SQLPLUS下 在C:\下用就可以了
      

  10.   

    我的数据库实例的目录如下
    D:\oracle\oradata\Ora8
    但是我的init文件目录在admin目录下
    D:\oracle\admin\Ora8\pfile
    我把所有的文件都考过来了,覆盖了原来目录下的东西,这样能行吗?
    我重起机器后,以sysdba进入SQL> shutdown immediate
    ORA-01507: ??????
    ORACLE 例程已经关闭。
    然后运行sqlORACLE 例程已经关闭。
    SQL> @ s.sql
    LRM-00109: 无法打开参数文件 'D:\oracle\admin\Ora8\pfile\initPROD.ora'
    ORA-01078: 处理系统参数失败
    CREATE CONTROLFILE set DATABASE "Ora8" RESETLOGS  NOARCHIVELOG
    *
    ERROR 位于第 1 行:
    ORA-01034: ORACLE not available我就在这个目录建了文件名,再运行sql
    SQL> @ s.sql
    ORACLE 例程已经启动。Total System Global Area   83634204 bytes
    Fixed Size                    75804 bytes
    Variable Size              32694272 bytes
    Database Buffers           50331648 bytes
    Redo Buffers                 532480 bytes
    CREATE CONTROLFILE set DATABASE "Ora8" RESETLOGS  NOARCHIVELOG
    *
    ERROR 位于第 1 行:
    ORA-01503: CREATE CONTROLFILE ??
    ORA-01160: ???? data file
    ORA-01110: ???? : 'D:\oracle\oradata\Ora8\SYSTEM01.DBF'我改后的sql文件如下:
    --其中"PROD"是数据库SID,你可以替换成你的SID,D:\oracle\oradata\Ora8
    STARTUP NOMOUNT pfile=D:\oracle\admin\Ora8\pfile\initPROD.ora; 
    CREATE CONTROLFILE set DATABASE "Ora8" RESETLOGS  NOARCHIVELOG
    --  SET STANDBY TO MAXIMIZE PERFORMANCE
        MAXLOGFILES 5
        MAXLOGMEMBERS 3
        MAXDATAFILES 100
        MAXINSTANCES 1
        MAXLOGHISTORY 226
    -- STANDBY LOGFILE --设置LOGFILE的位置
    LOGFILE
      GROUP 1 'D:\oracle\oradata\Ora8\REDO01.LOG'  SIZE 100M,
      GROUP 2 'D:\oracle\oradata\Ora8\REDO02.LOG'  SIZE 100M,
      GROUP 3 'D:\oracle\oradata\Ora8\REDO03.LOG'  SIZE 100M
    --设置DATAFILE的位置 以下只是举例,写入你实际的数据文件位置
    DATAFILE
      'D:\oracle\oradata\Ora8\SYSTEM01.DBF',
      'D:\oracle\oradata\Ora8\APACCT.DBF',
      'D:\oracle\oradata\Ora8\APBLDBANK.DBF',
      'D:\oracle\oradata\Ora8\APCOMM.DBF',
      'D:\oracle\oradata\Ora8\APDIALYSE.DBF',
      'D:\oracle\oradata\Ora8\APECONSTAT.DBF',
      'D:\oracle\oradata\Ora8\APEQUIPMENT.DBF',
      'D:\oracle\oradata\Ora8\APFOUNDING.DBF',
      'D:\oracle\oradata\Ora8\APICU.DBF',
      'D:\oracle\oradata\Ora8\APINPADM.DBF',
      'D:\oracle\oradata\Ora8\APINPBILL.DBF',
      'D:\oracle\oradata\Ora8\APINSURANCE.DBF',
      'D:\oracle\oradata\Ora8\APLAB.DBF',
      'D:\oracle\oradata\Ora8\APMEDADM.DBF',
      'D:\oracle\oradata\Ora8\APMEDREC.DBF',
      'D:\oracle\oradata\Ora8\APNURSING.DBF',
      'D:\oracle\oradata\Ora8\APORDADM.DBF',
      'D:\oracle\oradata\Ora8\DR01.DBF',  
      'D:\oracle\oradata\Ora8\INDX01.DBF',
      'D:\oracle\oradata\Ora8\RBS01.DBF',
      'D:\oracle\oradata\Ora8\SYSTEM01.DBF',
      'D:\oracle\oradata\Ora8\TEMP01.DBF',
      'D:\oracle\oradata\Ora8\TOOLS01.DBF',
      'D:\oracle\oradata\Ora8\USERS01.DBF',
      'D:\oracle\oradata\Ora8\APOUTPADM.DBF' ,  
      'D:\oracle\oradata\Ora8\APOUTPBILL.DBF',
      'D:\oracle\oradata\Ora8\APPHARMACY.DBF',
      'D:\oracle\oradata\Ora8\APSURGERY.DBF',   
      'D:\oracle\oradata\Ora8\APTEMP.DBF' ,  
      'D:\oracle\oradata\Ora8\APTEMP2.DBF', 
       'D:\oracle\oradata\Ora8\APEXAM.DBF'
    --设置字符集
    CHARACTER SET UTF8
    ;
      

  11.   

    把原先的控制文件删除,只留下数据文件和日志文件
    还有你有2个'D:\oracle\oradata\Ora8\SYSTEM01.DBF',这样的文件??是怎么回事??
      

  12.   

    我找到别人的那个init.ora了,我修改了一下,这个文件有用吗?能否把你的那个initPROD.ora改成他的,system这个是我搞错了,多写了一个
      

  13.   

    SQL> shutdown immediate
    ORA-01109: ??????
    ORA-01507: ??????
    ORACLE 例程已经关闭。
    SQL> @ s.sql
    ORACLE 例程已经启动。Total System Global Area   83634204 bytes
    Fixed Size                    75804 bytes
    Variable Size              32694272 bytes
    Database Buffers           50331648 bytes
    Redo Buffers                 532480 bytes
    SP2-0734: 未知的命令开头 "CHARACTER ..." - 忽略了剩余的行。
      

  14.   

    我MSN:[email protected] 加我仔细说
      

  15.   

    自然是要使用原先的别人的那个init.ora