1、数据库

Oracle 数据库是数据的物理存储。这就包括(数据文件 ORA 或者 DBF 、控制文件、联机日志、参数文件)。其实 Oracle 数据库的概念和其它数据库不一样,这里的数据库是一个操作系统只有一个库。可以看作是 Oracle 就只有一个大数据库。数据库侧重于硬件。

2、实例

一个 Oracle 实例(Oracle Instance)有一系列的后台进程(Backguound Processes)和内存结构(Memory Structures)组成。一个数据库可以有 n 个实例。一般情况下,在公司中一套数据库硬件上只运行一个实例,但是实际上是可以运行多个实例的。实例侧重于进程。

3、用户

用户是在实例下建立的。不同实例可以建相同名字的用户。Oracle 中用户是管理表的基本单位。作为对比,在 MySQL 数据库中,管理表的基本单位是数据库。比如,如果公司用的是 MySQL ,可以直接说当前数据库下有几张表。但是如果公司用的是 Oracle,就不可以这么说了,需要说某用户下有几张表。用 MySQL 做一个新项目需要新创建一个数据库,用 Oracle 做一个新项目需要新创建一个用户。

4、表空间

表空间是 Oracle 对物理数据库上相关数据文件(ORA 或者 DBF 文件)的逻辑映射。一个数据库在逻辑上被划分成一到若干个表空间,每个表空间包含了在逻辑上相关联的一组结构。每个数据库至少有一个表空间(称之为 system 表空间)。

每个表空间由同一磁盘上的一个或多个文件组成,这些文件叫数据文件(datafile)。一个数据文件只能属于一个表空间。

表空间说白了它是一个逻辑单位,它就是当数据库过于庞大不便于管理的情况下,会把表空间再分成一些细小的块,这些块起一个名字叫做表空间。具体这些块里的内容就是数据文件。一组或者一堆数据文件合在一起就叫做表空间。

5、数据文件(dbf、ora)

数据文件是数据库的物理存储单位。数据库的数据是存储在表空间中的,真正是在某一个或者多个数据文件中。而一个表空间可以由一个或多个数据文件组成,一个数据文件只能属于一个表空间。一旦数据文件被加入到某个表空间后,就不能删除这个文件,如果要删除某个数据文件,只能删除其所属于的表空间才行。

注:表的数据,是由用户放入某一个表空间的,而这个表空间会随机把这些表数据放到一个或者多个数据文件中。

由于 Oracle 的数据库不是普通的概念, Oracle 是有用户和表空间对数据进行管理和存放的。但是表不是由表空间去查询的,而是由用户去查的。因为不同用户可以在同一个表空间建立同一个名字的表!这里区分就是用户了!

6、总结

这张图整体范围内可以称之为一个数据库,数据库侧重于硬件,一个硬件上可以跑起来多个实例。这张图里面就画了 2 个实例。一个实例很大,不便于管理,所以可以对实例进行细分,分成多个表空间,也就是说实例和表空间的关系是一对多。具体管理表的基本单位是用户,一个实例下可以有多个用户。当然,用户的等级不一样,他操作表的权限也不一样。有的用户的权限很大,他可以创建表、表的索引、表的序列等等。有的用户权限不大,就只能做一些查询、增加、修改等一些基本的操作。表空间是一个逻辑单位,那么里面具体的文件存放到什么地方呢?存放在 dbf 或者 ora 文件里面。也就是说一个表空间内可以存放 n 个 dbf 或者 ora 这种物理文件,当然,一个表空间可以对应多个用户。

Oracle数据库学习笔记(四)--Oracle体系结构相关推荐

  1. adg oracle,【学习笔记】Oracle ADG搭建与配置 windows平台11G ADG搭建与测试

    [学习笔记]Oracle ADG搭建与配置 windows平台11G ADG搭建与测试 时间:2016-10-26 20:09   来源:Oracle研究中心   作者:HTZ   点击: 次 天萃荷 ...

  2. 数据导不进oracle数据库,学习笔记:Oracle逻辑导出/导入 数据逻辑导出时跳过指定表不进行导出...

    天萃荷净 Oracle数据库逻辑exp导出时,跳过指定某些表,对其表中数据不进行导出 有一个需求,某个用户有很多张表,但是只能使用exp导出,而且想跳过其中某几张表,其他对象包括依赖关系都需要.针对这 ...

  3. Oracle数据库学习(四):学习中的遇到的问题

    一.xhost图形化界面安装问题 问题1:运行xhost +命令,出现命令没有找到错误 原因:Linux系统没有安装xhost图形化包. 解决办法:安装xhost图形化包,命令如下: yum what ...

  4. Oracle数据库学习笔记(九)--scott用户

    SCOTT 用户概述 SCOTT 是在 Oracle 数据库中,一个示例用户的名称,默认口令为 tiger,其作用是为初学者提供一些简单的应用示例.其中的表和表间的关系演示了关系型数据库的一些基本原理 ...

  5. Oracle数据库学习笔记(二十八)--在Java项目开发中使用ojdbc连接Oracle数据库

    选择正确的 Jar 包 Oracle 10g 选择使用 ojdbc14.jar Oracle 11g 选择使用 ojdbc6.jar 将 Jar 包安装到本地 Maven 仓库中 具体方法参考我之前发 ...

  6. Oracle数据库学习笔记(七)--事务及数据的增删改查

    事务的概念 事务是逻辑上的一组操作,要么都执行,要么都不执行. 事务最经典也经常被拿出来说的例子就是转账了.假如小明要给小红转账 1000 元,这个转账会涉及到两个关键操作就是:将小明的余额减少 10 ...

  7. Oracle数据库学习(四)

    11.创建表 crate table tab1(f_id number not null,f_a varchar2(7) not null,f_b number(6,2) not null): 主键: ...

  8. Oracle数据库学习笔记——数据完整性(下)

    参照完整性 表的一列或几列的组合的值在表中唯一地指定一行记录,选择这样的一列或多列的组合作为主键可实现表的实体完整性,通过定义PRIMARY KEY约束来创建主键. 外键约束定义了表与表之间的关系,通 ...

  9. mnesia数据库学习笔记四

    杂项 前二章讲了如何启动数据库,如何构建数据库,接下来会为讲一些创建分布式容错数据所需的高级特征: 索引 分布式和容错 表分段 本地内容表 无磁盘节点 高级方案管理 调用应用程序 并行进程 原形研究 ...

  10. 数据库学习笔记四收缩数据库

    你的数据库的名字替换掉 上面的"教学案例库"的名字,执行一遍,日志文件将设置到11M

最新文章

  1. 万字总结,知识蒸馏如何在推荐系统中大显身手?
  2. CCF C³:创业公司如何面对开源?知乎CTO李大海:谢邀
  3. 央视曝光:刷单实为非法商业模式 步步设置全是套路
  4. Jquery的ajax在IE提交数据乱码解决方法
  5. [PHP] 使用 pcntl 库实现PHP多进程
  6. 迷你世界支持服务器,迷你世界云服务器
  7. 使用Mongo索引需要注意的几个点
  8. Python笔记-CAPM(资本资产定价模型)例子
  9. 20155209 2016-2017-2 《Java程序设计》第五周学习总结
  10. AndroidStudio安卓原生开发_Activity的IntentFlag的SINGLE_TOP_CLEAR_TOP_REORDER_TO_FRONT的用法---Android原生开发工作笔记90
  11. wait与notify
  12. [Swift A] - Using Swift with Cocoa and Objective-C--Mix and Match
  13. php imagick下载,PHP安装imagemagick扩展imagick
  14. 业界资讯: Flash Player Incubator 改进
  15. java2实用教程第六版习题答案
  16. 编写一个程序,给出汉字“你”“我”“他”在Unicode表中的位置
  17. 小样儿老师:我的嵌入式学习之路(一)
  18. day23面向对象第一篇
  19. Arduino基础入门篇12—火焰报警器
  20. 联想小新一键恢复小孔_联想小新电脑一键恢复出厂设置

热门文章

  1. java使用zxing_在Java中使用Zxing读取QRCode
  2. Linux学习笔记:wc查看文件字节数、字数、行数
  3. mongodb 学习笔记--- 基础知识
  4. 201671010119 2016-2017-2《Java程序设计》第十六周学习心得
  5. C++11多线程std::thread的简单使用
  6. HttpClient的简单实现
  7. 160304-01、mysql数据库插入速度和读取速度的调整记录
  8. duilib中各控件响应的消息类型
  9. (一) MySQL学习笔记:MySQL安装图解
  10. POJ 3422 Kaka's Matrix Travels(最小费用最大流+拆点)