我在oracle9.2.0.1.0手动创建新的数据库(已经有一个数据库)。
我按照9i的文档Oracle9i Database Administrator's Guide Release 2 (9.2) for Windows中的步骤进行手动创建,在执行Running the CREATE DATABASE Script的第5步时,出现错误提示数据库已安装。
请问如何解决这个问题。

解决方案 »

  1.   

    可能是service_name冲突,改一个service_name试一试。
      

  2.   

    错误号是ora-01100,提示数据库已安装。改一个服务名也不行,
      

  3.   


     我想可能错误原因是这样:
      你第一次执行dbca时,出现了错误,但是Oracle的SID已经
      设置上了(你可以看一下保存的批处理脚本), 第一句就是
      set ORACLE_SID=...
      然后是:
       oradim -new -sid XXX -intpwd XXX -startmode manual -pfile ...
       ...
       在注册表中也写入了相关信息.
     
      因此,你需要做的是:
        1. oradim -delete -SID XXX ...
        2. 重新启动机器再试一次.  附上winnnt/2k环境完全删除oracle的步骤:   1、以NT的Administrator 登陆   
       2、通过控制面版-〉服务,停掉所有ORACLE服务   
       3、打开注册表(REGEDIT命令),删除   
          HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE    
       4、打开注册表中的:
          HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services        删除以ORACLE开头的所有服务      5、删除:
          HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\
           EventLog\Application下 以ORACLE开头的所有服务      6、关闭REGEDIT      7、打开控制面版-〉系统-〉环境变量      8、如果ORACLE安装了JRE,就删除%ORACLE_HOME%\BIN和JRE路径。   
          例如:C:\ORACLE\ORA81\BIN;
               G: \Program Files\Oracle\jre\1.1.7\bin      9、删除\Winnt\Profiles\All Users\Start Menu\Programs\Oracle
          和 \Winnt\Profiles\All Users\Start Menu\Programs\Oracle       10、删除\Program Files\Oracle       11、重新启动机器      12、删除所有ORACLE目录
         (在注册表HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\ORACLE_HOMES下)   
      

  4.   

    leecooper0918(PajeroFans) 你好,
    我的问题是我已用dbca创建了一个数据库,我是想在不删除已创建数据库的情况下,
    创建新的数据库,命名一个新的SID。
      

  5.   

    Cause: An attempt was made to mount a database with the name of a currently mounted database. Action: No action is required. 
    就是因为同名了~改个名字不就好了
      

  6.   


     "想在不删除已创建数据库的情况下,创建新的数据库,
     命名一个新的SID" ?
     
     完全没有问题,你用DBCA工具就可以做到,最后一步选择"保存到
     批处理文件", 然后手工运行这个文件就可以了.
      

  7.   

    DBCA工具我试过了,可以创建。我现在是想用命令行方式创建数据库,不想用图形界面创建数据库
      

  8.   

    你用的数据库是9i吧? 我的环境是8i.
     其实创建数据库的脚本在各个版本间是兼容的.
     
     你如果需要,我可以发一份8i下的脚本给你,自己改一改应该
     就能运行了.
      

  9.   

    请发一份给我啦,我在win2000+oracle817上也遇到同样的问题, dbca可以创建,但是手工就不行。报ora-01504错误,就是dbname冲突了
    我的步骤:
     1:在oracle/database下建立一个初始文件initmanual.ora,文件内容如下:
        db_name = "manual"
        instance_name = manual
        service_names = manual
        db_files = 1024  # INITIAL
        .....
     2:
    c:/>sqlplus/nolog
    sql>connect /as sysdba
    sql>shutdown  --为了停掉已经有的数据库
    sql>startup nomount
    sql>create database manual
    datafile 'c:/oracle/oradata/manual_data/system.dbf' size 50m autoextend
    on next 640K
    logfile 'c:/oracle/oradata/manual_data/redo0101.log' SIZE 10M,
    'c:/oracle/oradata/manual_data/redo0201.log' SIZE 10M
    maxdatafiles 30
    maxinstances 8
    maxlogfiles 64
    character set ZHS16GBK
    SQL> /
    create database manual
    *
    ERROR 位于第 1 行:
    ORA-01501: CREATE DATABASE ??
    ORA-01504: ????'MANUAL'??? db_name 'notebook'???
      

  10.   


     dbca 工具生成的是一个bat文件,和一些sql脚本.  bat 文件的开头是定义SID, 参考:    set ORACLE_SID=ORADB
        --------------------
         指定一个实例名;  N:\oracle\ora817\bin\oradim -new -sid ORADB -intpwd oracle -startmode manual
      - pfile "N:\oracle\admin\ORADB\pfile\initORADB.ora"
      -----------------------------------------------------
       创建一个新的例程, 指定启动时用的参数文件为 initORADB.ora  然后就是创建数据库(在新的sql脚本中),拿下面的脚本和你自己
      写的比较一下:
      
     spool N:\oracle\admin\ORADB\create\createdb
    set echo on
    connect INTERNAL/oraclestartup nomount pfile="N:\oracle\admin\ORADB\pfile\initORADB.ora"
    ------------------------------------------------------------------
     要指定初始化参数文件路径CREATE DATABASE ORADB
    LOGFILE 'N:\oracle\oradata\ORADB\redo01.log' SIZE 10240K,
        'M:\oradata\ORADB\redo02.log' SIZE 10240K,
        'M:\oradata\ORADB\redo03.log' SIZE 10240K
    MAXLOGFILES 32
    MAXLOGMEMBERS 3
    MAXLOGHISTORY 1
    DATAFILE 'N:\oracle\oradata\ORADB\system01.dbf' SIZE 50M  REUSE AUTOEXTEND ON NEXT 64K
    MAXDATAFILES 100
    MAXINSTANCES 1
    CHARACTER SET ZHS16GBK
    NATIONAL CHARACTER SET ZHS16GBK;
    spool off
    ---------------------------------------
    对比我机器上的建库脚本, 你写的脚本中 缺少了 startup nomount -pfile ...
    因为你没有指定数据库实例启动时使用的参数文件名称,因此创建数据库时
    会出错。 
      

  11.   


     如果是9i, 初始化参数文件应用的顺序应该是:
      spfile<SID>.ora -> spfile.ora ->init<sid>.ora