刚刚接触oracle,由于以前用sql server,总喜欢把两个进行对比,对比对比就更加糊涂了,这里特像各位高人请教几个问题。
oracle安装时有默认建库或者在安装完成之后建库,这里的建库是不是和sql server的建立的实例差不多,只是一个后台进程与内存的集合?是不是在文件夹中有明确的体现。
建库之后,我们使用sqlplus进行操作,要进行用户连接,这里是不是和sql中的sa登录一样?
登录之后,我们需要进行建立表空间,是不是感觉跟sql里面新建数据库一样?这样之后我的理解是:oracle建库=建立实例; oracle 建立用户=sql server 建立登录用户;oracle建立表空间=sql server 建立新数据库?
望各位高人能给予指示,不正确或者完全的谬误也不用顾忌面子,谢谢了。

解决方案 »

  1.   

    1.如create database wc一样。你说的实例有点模糊。你能理解此语句即可。
    2.是与内存集合相关。
    3.此处是用户登录,比sql中的更强大。因为有的数据表,只对某一个用户,故要使用之时,必先选好用户。
    4.新手可暂不要建空间。
    5.基本正确。
      

  2.   

    首先,Oracle和SQL SERVER本质是不一样的,拿来比较没啥意义,
    1)oracle建库=建立实例
       oracle建库!=建立实例
       因为,从其组成看:库(磁盘上的数据文件组成)
                         实例(内存+后台进程组成)
                         一动一静
       举个例子:
                比如库是一家公司,那么实例就是它的人事部2)oracle 建立用户=sql server 建立登录用户
       这两个一样3)oracle建立表空间=sql server 建立新数据库
       表空间是逻辑概念
       数据库是物理概念
       数据库由表空间组成
      

  3.   

    从用户角度来看oracle建库=建立实例
    而使用时就是使用的实例, 所以可以把建库看成实例
      

  4.   

    1、sqlserver数据库类似与windows操作系统的服务器
       你可以建立N个用户,这N个用户可以登录“服务器”,但是他们的权限可能不同,如:admin和guest
    2、oracle数据库类似与linux造作系统的服务器
       你可以建立N个用户,在不设定的情况下,每个用户只能访问自己/home/用户文件夹 下的东西类似的mysql也跟sqlserver类似,数据库建之后,建用户,然后给用户赋权让他有权限访问哪些数据库========
    你也可以这么想: 
    sqlserver:
    你们公司有很多部门,部门就是不同的sqlserver数据库,你门公司老总的门禁卡,肯定能进所有房间,他就是 你们公司这个sqlserver服务器的admin,你只能进你自己的房间,你就是普通用户
    当有新同事加入的时候,根据他的工作职责,分配他的门禁权限,让他访问他能访问的“数据库”oracle:
    你所在的办公室就是一个oracle数据库,你们办公室所有同事,都可以进入这个“数据库”,但是每个人只能在自己工位上处理工作,互不影响,但是你如果想到其他人那玩一玩,必须得到别人的“授权”
    当有新同事加入的时候(就是新增用户),办公室分配一个工位(schema)给他就行了
      

  5.   

    从理论上说:
    oracle数据库包含:控制文件、数据文件、参数文件、日志文件、密码文件等存储在硬盘上的文件。
    oracle实例包含:内存结构、后台进程
    两个加一起就是咱们常说的oracle数据库
    oracle里面还有user和schema的概念,默认建一个用户,oracle就会建立一个同名的schema,并将两者绑定
    如:建一个test 用户,默认会有一个test schema,当我们sqlplus test/test 登陆的时候实际上访问的是
        test schema里面的对象(当然他也可以访问其他schema下的对象,但是需要赋权)oracle新建数据库的话,是在操作系统上建一套数据库,每一套数据库上都会有上面的一系列东西。
    sqlserver没有这么复杂:新建一个数据库,就是仅仅在sqlserver里面建一个数据库
    建一个用户,是在sqlserver里面建一个用户,然后通过授权来控制这个用户访问的数据库有哪些。