我新安装了一个oracle数据库软件,新安装的没有实例,也没有数据文件。这个时候我用dbca命令建库orcl,在建库完成之后,我发现了orcl实例。我想问下,orcl实例是在安装数据库软件的时候就有的,还是我在建orcl库就有的。如果我不用dbca建orcl库的话,是否就没有orcl这个实例呢?我是否可以这么理解 通过dbca命令建orcl库也就是建立了一个实例呢?

解决方案 »

  1.   

    要分清实例和数据库的概念
    数据库:是存储在磁盘上的一组数据文件;
    实例:是一个内存结构及一组后台进程。所以你用dbca只是创建了一个数据库,并指定了全局数据库名orcl,或者说是一个静态的实例的标识符。只有数据库启动后才有后台进程和SGA、PGA等组件。也就是实例。这个可以类比操作系统里的程序与进程
      

  2.   


    也就是说我安装完毕了oracle数据库软件之后,启动oracle服务之后,其实是有实例的,但是默认实例名字是什么呢?
      

  3.   

    默认的instance_name和db_name一样,一一对应,但是RAC中一个数据库可能对应多个实例
    select name from v$database;
    select instance_name from v$instance;
      

  4.   

    用dbca建好的是数据库
    启动起来,就是实例了
      

  5.   

    在安装过程中不是有三个用户吗?sys、system、Scott 怎么说不是要生成一个实例吗?
      

  6.   

    安装完软件,必须启动oracle才会有实例。