• 概念分析:

1.       数据库(Database):

数据库是一个文件集合,包括数据文件,临时文件,重做日志文件和控制文件。也可以说数据库是物理操作系统文件或磁盘集合。数据库可以由多个实例(schema)创建和打开,而实例可以在任意时间点装载和打开一个数据库。

2.       实例(Instance):

实例就是一组操作系统进程(unix系统下)或者一个多线程的进程(windows系统下)以及一些内存(主要有:SGA,PGA,UGA等,关于oracle内存结构不在这里进行阐述)。一个实例只能有一组相关的文件集合(一个实例对应一个数据库),大多数情况下,反过来也成立,一个数据库上只有一个实例对其进行操作。不过,oracle的真正应用集群(Real  Application Clusters, RAC)是个例外,这是oracle提供的一个选项,允许在集群环境中的多台计算机上操作,这样就有多个实例装载和打开同一个数据库(位于一组共享物理磁盘上)

3.       连接(Connection):

连接指oracle客户端与服务器端物理的网络连接。在已建立的连接上,建立客户端与oracle的会话,以后客户端与oracle的交互都在一个会话环境中进行。(注Oracle允许失去物理连接的会话)。

4.       会话(Session):

会话是个建立在连接到某个instance之上的一个动态概念。(注Oracle允许失去物理连接的会话)。一次会话是用户的一个活跃进程,它代表用户与系统交互。用户与会话是一对多关系,一个用户可同时打开多个会话,一个会话构成一个用户到多个角色的映射,即会话激活了用户授权角色的某个子集,这个子集称为活跃角色集。活跃角色集决定本次会话的许可集。

5.       表空间(Tablespace):

表空间是oracle数据库中最大的逻辑结构,从逻辑上说,一个ORACLE数据库能够有一个或多个表空间,而一个表空间则对应着一个或多个物理的数据库文件。表空间是ORACL数据库恢复的最小单位,容纳着许多数据库实体,如表、视图、索引、聚簇、回退段和临时段等。从物理上说数据库的数据被存放在数据文件中,从逻辑上说数据时被存放在表空间中。每个数据库至少有一个SYSTEM表空间。SYSTEM表空间是Oracle创建数据库时候自动创建的,且SYSTEM表空间总是要保持在联机模式下,因为其包含了数据库运行所要求的基本信息,如:数据字典、联机求助机制、所有回退段、临时段和自举段、所有的用户数据库实体、其它ORACLE软件产品要求的表等等。

表空间的作用如下:

²  决定数据库实体的空间分配

²  控制数据库部分数据的可用性

²  分布数据于不同设备之间以改善性能

²  备份和恢复数据

²  设置数据库用户的空间份额(??尚未理解)

6.       用户(User):

     是数据库中的用户,包含一个缺省schema(对象集合),用户是schema的拥有者; user可通过oracle预定义或自定义的角色进行权限设置,确定该user在schema中的行使权力。用户是表空间下的一个概念,其对应一个或多个schema对象集。

7.       角色(role):

角色就是相关权限的命令集合,使用角色的主要目的就是为了简化权限的管理。角色分为预定义角色和自定义角色两类。

预定义角色是指Oracle所提供的角色,每种角色都用于执行一些特定的管理任务(具体预定义角色这里不阐述);自定义角色顾名思义就是自己定义的角色,根据自己的需要来定义,一般是DBA来建立,如果用的别的用户来建立,则需要具有create role的系统权限,在建立角色时可以指定验证方式(不验证,数据库验证等)。

8.       模式(Sc​h​e​m​a):

一个用户在数据库中创建的所有对象称为schema,schema为数据库对象的集合。schema中包含如:tables,views,sequences,procedures,functions……的对象。创建用户时,默认产生一个同名的schema(即缺省schema,还可以有其他schema)。

下面通过例子来理解下schema的概念:

    select * from scott.emp;(select col1,col2,... from schema.table)

语句中的“scott”在这里便是schema名(注意不是用户名),在这里要区分用户与schema的概念,schema为数据对象的集合,user为该数据对象集合的拥有者。一个user可能对应多个schema。正确的理解为schema.object,而不是user.object)

DB_oracle学习笔记_概念分析的更多相关文章

  1. jQuery源代码学习笔记_工具函数_noop/error/now/trim

    jQuery源代码学习笔记_工具函数_noop/error/now/trim jquery提供了一系列的工具函数,用于支持其运行,今天主要分析noop/error/now/trim这4个函数: 1.n ...

  2. SSM框架学习笔记_第1章_SpringIOC概述

    第1章 SpringIOC概述 Spring是一个轻量级的控制反转(IOC)和面向切面(AOP)的容器框架. 1.1 控制反转IOC IOC(inversion of controller)是一种概念 ...

  3. Python学习笔记_我的参考网址

    Python学习笔记, 下面记录网上搜到的可参考的网址: 一.关于Tkinter 1.Python3中tkinter模块使用方法详解 https://blog.csdn.net/Fighting_Bo ...

  4. FFT和NTT学习笔记_基础

    FFT和NTT学习笔记 算法导论 参考(贺) http://picks.logdown.com/posts/177631-fast-fourier-transform https://blog.csd ...

  5. haskell学习笔记_函数

    一开始学习函数式编程语言就被告知函数式编程语言是一种“定义式”的语言,而不是一种命令式的语言,在学习haskell的函数语法时,此感觉更加强烈,haskell的函数定义倾向于一种类似C++里面的swi ...

  6. Unity3d_学习笔记_入门

    转自:http://blog.csdn.net/zlfxy/article/details/8722437 本文内容来自“编程教父”的视频课程. 1.Unity3d一个游戏引擎,可以用来开发很多游戏. ...

  7. 学习笔记_过滤器详细(过滤器JavaWeb三大组件之一)

    过滤器详细 1 过滤器的生命周期 我们已经学习过Servlet的生命周期,那么Filter的生命周期也就没有什么难度了! (l)  init(FilterConfig):在服务器启动时会创建Filte ...

  8. 学习笔记_第一个strut程序_之中文乱码,过滤器解决方案及过程总结

    1.  第一次碰到加过滤器的过程,就是在学习struct1的时候,中文乱码 几个需要注意的关键字 2.什么叫package 所谓package就是打包的意思,就是说以下程序都是处于这个包内,所以一开始 ...

  9. No2_5.类的高级特性_Java学习笔记_抽象类和成员内部类

    一.抽象类1.所谓抽象类,只声明方法的存在而不去实现它的类:2.抽象类不能被实例化,即不能实现其对象:3.abstract class 类名{ 类体 }4.包含一个或多个抽象方法的类必须声明成抽象类: ...

随机推荐

  1. c++ 对象的内存布局

    之前介绍过了普通对象比如系统自带的int等对象的对齐方式,在学习类型转换的时候遇到了自定义类型的继承体系中的downcast与upcast. 于是顺藤摸瓜,摸到了这里.发现还是 陈皓的博客里面写的最早 ...

  2. SOCKS 5协议详解(转)

    笔者在实际学习中,由于在有些软件用到了socks5(如oicq,icq等),对其原理不甚了解,相信很多朋友对其也不是很了解,于是仔细研读了一下rfc1928,觉得有必要译出来供大家参考. 1.介绍: ...

  3. modelsim无法识别include文件的解决方法

    modelsim发现include关联的文件编译报语法错误,文件名需要写绝对路径,即使这个文件和工程其它文件在一个目录上.例如只写成 `include "c0_ddr3_model_para ...

  4. 关于Intent的七大重要属性

    在Android 中,Intent用来封装两个Activity之间的调用意图,实现两个Activity之间的跳转,并传递信息. Intent的七大重要属性:ComponentName Action   ...

  5. eclipse的安装与配置

    eclipse的英文名是日蚀,一直很喜欢这个名字. 1.安装很简单,直接下载eclipse包,免安装的.解压后找到其执行文件,如图所示.

  6. gulp LiveReload middleware

    用yo搭建的angular项目,用gulp自动化构建. 自动化构建主要的功能大致有: 1. 文件压缩 2. 文件重命名 3. 文件合并 4. css,js文件自动引入到html 5. 自动刷新 ... ...

  7. Android.mk 基本应用

    如果是在android源码里面编译我们自己的应用,就需要这个android.mk文件,这个文件就告诉android系统应用如何来编译这个应用以及这个应用它所依赖哪些文件等等信息.我对android.m ...

  8. artTemplate里一个比不上jQuery tmpl模板的地方就是放一个数组进去它不会自动循环.

    artTemplate里一个比不上jQuery tmpl模板的地方就是放一个数组进去它不会自动循环.

  9. 对于cookie和session的形象解释

    生活中的场景: 一群人,买豆浆,也不排队,乱哄哄的 豆浆现磨. 先交钱,交完钱蹲在一边等. 这个老板非常健忘! 记忆时间:转脸就忘. 李四给老板钱<--->"大杯黄豆!" ...

  10. EFM32外设模块—USART V1.00

    http://wenku.baidu.com/link?url=hx-pumUzdpS-AbD1OhEW11Jl6H8wex2DNsv4IcZwrgL-drwuUzZ6E1L64fCnAfdUOObK ...