DB_oracle学习笔记_概念分析
概念分析:
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. 模式(Schema):
一个用户在数据库中创建的所有对象称为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学习笔记_概念分析的更多相关文章
- jQuery源代码学习笔记_工具函数_noop/error/now/trim
jQuery源代码学习笔记_工具函数_noop/error/now/trim jquery提供了一系列的工具函数,用于支持其运行,今天主要分析noop/error/now/trim这4个函数: 1.n ...
- SSM框架学习笔记_第1章_SpringIOC概述
第1章 SpringIOC概述 Spring是一个轻量级的控制反转(IOC)和面向切面(AOP)的容器框架. 1.1 控制反转IOC IOC(inversion of controller)是一种概念 ...
- Python学习笔记_我的参考网址
Python学习笔记, 下面记录网上搜到的可参考的网址: 一.关于Tkinter 1.Python3中tkinter模块使用方法详解 https://blog.csdn.net/Fighting_Bo ...
- FFT和NTT学习笔记_基础
FFT和NTT学习笔记 算法导论 参考(贺) http://picks.logdown.com/posts/177631-fast-fourier-transform https://blog.csd ...
- haskell学习笔记_函数
一开始学习函数式编程语言就被告知函数式编程语言是一种“定义式”的语言,而不是一种命令式的语言,在学习haskell的函数语法时,此感觉更加强烈,haskell的函数定义倾向于一种类似C++里面的swi ...
- Unity3d_学习笔记_入门
转自:http://blog.csdn.net/zlfxy/article/details/8722437 本文内容来自“编程教父”的视频课程. 1.Unity3d一个游戏引擎,可以用来开发很多游戏. ...
- 学习笔记_过滤器详细(过滤器JavaWeb三大组件之一)
过滤器详细 1 过滤器的生命周期 我们已经学习过Servlet的生命周期,那么Filter的生命周期也就没有什么难度了! (l) init(FilterConfig):在服务器启动时会创建Filte ...
- 学习笔记_第一个strut程序_之中文乱码,过滤器解决方案及过程总结
1. 第一次碰到加过滤器的过程,就是在学习struct1的时候,中文乱码 几个需要注意的关键字 2.什么叫package 所谓package就是打包的意思,就是说以下程序都是处于这个包内,所以一开始 ...
- No2_5.类的高级特性_Java学习笔记_抽象类和成员内部类
一.抽象类1.所谓抽象类,只声明方法的存在而不去实现它的类:2.抽象类不能被实例化,即不能实现其对象:3.abstract class 类名{ 类体 }4.包含一个或多个抽象方法的类必须声明成抽象类: ...
随机推荐
- <?xml version="1.0" encoding="UTF-8"?> 的作用?
version="1.0" 声明用的xml版本是1.0 encoding="UTF-8" 声明用xml传输数据的时候的字符编码,假如文档里面有中文,编码方式不是 ...
- JavaWeb---通过ServletConfig获取Servlet的初始化参数
package com.zyz; import javax.servlet.ServletConfig; import javax.servlet.ServletException; import j ...
- MM常用BADI
1.删除采购申请BADI BAPI_REQUISITION_DELETE 但是需要输入采购申请 和采购申请行项目号
- MBProgressHud添加自定义动画
在使用自定义view时,若直接使用,如下 MBProgressHUD *hud = [MBProgressHUD showHUDAddedTo:self.view animated:YES]; hud ...
- Form表单(回车)提交问题
我们有时候希望回车键敲在文本框(input element)里来提交表单(form),但有时候又不希望如此.比如搜索行为,希望输入完关键词之后直接按回车键立即提交表单,而有些复杂表单,可能要避免回车键 ...
- vs2010 A selected drive is no longer valid
visual studio 2010重新安装添加组件,报A selected drive is no longer valid错误. 这个是由于已经安装了sp1,此时需要将sp1卸载掉,然后就可以安装 ...
- 中兴MF667S WCDMA猫Linux拨号笔记
公司最近有个国外有个项目需要用到WCDMA猫,网上简单选型了一下决定使用ZTE的型号MF667S的猫,本以为在Linux下拨号是比较简单的(之前有两款3G猫的调试经验),估计半天能搞定,结果折腾了一周 ...
- Android开发工具全面转向Android Studio(1)——准备开发环境
工欲善其事必先利其器,本文适合Android新手以及用过Eclipse而没用过Android Studio开发Android的老手,众所周知,谷歌是不会再维护和开发ADT了,旧的ADT已经是完全不能渲 ...
- Android 遮罩层效果
(用别人的代码进行分析) 不知道在开发中有没有经常使用到这种效果,所谓的遮罩层就是给一张图片不是我们想要的形状,这个时候我们就可以使用遮罩效果把这个图片变成我们想要的形状,一般使用最多就是圆形的效果, ...
- EAA脚本语言0.2
对上一版的改进.IL生成问题大部分解决了. 运行效果 脚本源码 #using "System"; #using "System.Drawing"; #using ...