文档库 最新最全的文档下载
当前位置:文档库 › Oracle 数据库逻辑存储结构管理

Oracle 数据库逻辑存储结构管理

Oracle 数据库逻辑存储结构管理
Oracle 数据库逻辑存储结构管理

一、实验目的:

(1)掌握Oracle 数据库表空间的管理。

(2)掌握数据库表空间不同状态时对数据操作的影响。

(3)分别创建永久性表空间、临时性表空间、撤销表空间。

(4)完成表空间的管理操作,包括修改表空间大小、修改表空间的可用性、修改表空间的读写、表空间的备份、表空间信息查询、删除表空间。

二、实验环境:

WINDOWS 7、ORACLE 11g

二、实验内容:

(1)为BOOKSALES 数据库创建一个名为BOOKTBS1 的永久性表空间,区采用自动扩展方式,段采用自动管理方式。

SQL> create tablespace booktbs1 datafile

2 'D:\app\Administrator\oradata\orcl\hrtbs1_1.dbf' size 50m;

Tablespace created

(2)为BOOKSALES 数据库创建一个名为BOOKTBS2 的永久性表空间,区采用定制分配,每次分配大小为1M,段采用手动管理方式。

SQL> create tablespace booktbs2 datafile

2 'D:\app\Administrator\oradata\orcl\booktbs2.dbf' size 50m

3 extent management local uniform size 1m

4 segment space management manual;

Tablespace created

(3)为BOOKSALES 数据库创建一个临时表空间TEMP02。

SQL> create temporary tablespace temp02 tempfile

2 'D:\app\Administrator\oradata\orcl\temp02.dbf' size 20m;

Tablespace created

(4)将BOOKSALES 数据库临时表空间TEMP 和TEMP02 都放入临时表空间组TEMPGROUP 中。

SQL> alter tablespace temp02 tablespace group tempgroup;

Tablespace altered

SQL> alter tablespace temp tablespace group tempgroup;

Tablespace altered

(5)为BOOKSALES 数据库创建一个名为UNDO02 的撤销表空间,并设置为当前数据库的在线撤销表空间。SQL> create undo tablespace undo02 datafile

2 'D:\app\Administrator\oradata\orcl\undo02.dbf' size 20m;

Tablespace created

(6)为BOOKSALES 数据库的表空间BOOKTBS1 添加一个大小为50M 的数据文件,以改变该表空间的大小。

SQL> alter tablespace booktbs1 add datafile

2 'D:\app\Administrator\oradata\orcl\bookdata01.dbf' size 50m;

Tablespace altered

(7)将BOOKSALES 数据库的表空间BOOKTBS2 的数据文件修改为可以自动扩展,每次扩展5M,最大容量为100M。

SQL> alter database datafile

2 'D:\app\Administrator\oradata\orcl\booktbs2.dbf'

3 autoextend on next 5m maxsize 100m;

Database altered

(8)创建一个名为test 的表,存储于BOOKTBS1 表空间中,向表中插入一条记录。

SQL> create table test(id number primary key,name char(20)) tablespace booktbs1;

Table created

SQL> insert into test values(1,'first row');

1 row inserted

(9)将BOOKSALES 数据库的BOOKTBS1 表空间设置为脱机状态,测试该表空间是否可以使用。

SQL> alter tablespace booktbs1 offline;

Tablespace altered

(10)将BOOKSALES 数据库的BOOKTBS1 表空间设置为联机状态,测试该表空间是否可以使用。

SQL> alter tablespace booktbs1 online;

Tablespace altered

(11)将BOOKSALES 数据库的BOOKTBS1 表空间设置为只读状态,测试该表空间是否可以进行数据写入操作。

SQL> alter tablespace booktbs1 read only;

Tablespace altered

(12)将BOOKSALES 数据库的BOOKTBS1 表空间设置为读写状态,测试该表空间是否可以进行数据读写操作。

SQL> alter tablespace booktbs1 read write;

Tablespace altered

(13)将BOOKSALES 数据库的BOOKTBS1 设置为数据库默认表空间,将临时表空间组TEMPGROUP 设置为数据库的默认临时表空间。

SQL> alter database default tablespace booktbs1;

Database altered

(14)分别备份BOOKSALES 数据库的USERS 和BOOKTBS1、BOOKTBS3 三个表空间。

(15)查询BOOKSALES 数据库所有表空间及其状态信息。

(16)查询BOOKSALES 数据库所有表空间及其数据文件信息。

(17)删除BOOKSALES 数据库BOOKTBS2 表空间及其所有内容,同时删除操作系统上的数据文件。SQL> drop tablespace booktbs2 including contents and datafiles;

Tablespace dropped

四、心得体会:

数据库复习题汇总

单元练习 一单项选择题 1.文件系统与数据库系统相比较,其缺陷主要表现在数据联系弱、数据冗余和()。 A.数据存储低 B.处理速度慢 C.数据不一致 D.操作烦琐 2.数据的存储结构与数据逻辑结构之间的独立性称为数据的()。 A.结构独立性 B.物理独立性 C.逻辑独立性 D.分布独立性 数据存储结构:即内模式。 数据逻辑结构:即模式 用户视图:即外模式 3.在数据库系统中,对数据操作的最小单位是()。 A.字节 B.数拯项 C.记录 D.字符 4.数据的逻辑结构与用户视图之间的独立性称为数据的()。 A.结构独立性 B.物理独立性 C.逻辑独立性 D.分布独立性 5.下述各项中,属于数据库系统的特点的是()。 A.存储量大 B.存取速度快 C.数据共享 D.操作方便 6.在数据库系统中,模式/内模式映像用于解决数据的()。 A.结构独立性 B.物理独立性 C.逻辑独立性 D.分布独立性 7.在数据库系统中,模式/外模式映像用于解决数据的()。 A.结构独立性 B.物理独立性 C.逻辑独立性 D.分布独立性 8.数据库结构的描述,称为()。 A.数据库模型 B.数据库 C.数据库管理系统 D.数据字典 数据库模型有层次模型网状和关系模型 9.数据库中全体数据的逻辑结构描述称为( A. 存储模式 B.内模式 C.外模式 D.模式 10.保证数摇库中数摇及语义的正确性和有效性,是数据库的()。 A.完全性 B.准确性 C.完整性 D.共享性 11.在数据库系统中,数据独立性是指()。 A.用户与计算机系统的独立性 B.数据库与il?算机的独立性 C.数据勺应用程序的独立性 D.用户与数摇库的独立性 12.结构数据模型的三个组成部分是数据结构、数据操作和()。 A.数据安全性控制 B.数摇一致性规则 C.数^]^完整性约束 D.数摇处理逻辑 13.在数据操纵语言(DML)的基本功能中,不包括的是()。 A.插入新数据 B.描述数据库结构 C.对数据库中数据排序 D.删除数据库中数据 14.控制数摇库整体结构、负责数据库物理结构和逻辑结构的注义打修改的人员是()。 A.系统分析员 B.应用程序员 C.专业用户 D.数据库管理员 15.K列关于数据库系统正确的叙述是()。 A.数据库系统比文件系统存储数据量大 B.数据库系统中数据存储没有冗余 C.数据库系统中数据存储冗余较小 D.数据库系统比文件系统存取速度快 16.在数据库中,发生数据不一致现象的根本原因是()。 A.数据存储量太大 B.数摇安全性差 C.数据相互关系复杂 D.数据冗余 17.层次型、网状型和关系型数据模型的划分根据是()。 A.数据之间联系方式 B.数据之间联系的复杂程度

Oracle存储结构

Oracle 存储结构分析 一逻辑结构的层次与种类 1,表(table): 2,分区表(table partition):一个有很大数据量的表;我们可以把表分区,每个分区可以放在不同的段上。以实现对表的优化 3,簇(cluster):将多个表集合在一起,这些表拥有相同的列;这些相同列放在同一个物理的段里面。 4,索引(index): 5,index-organized table(对应sqlserver的群集索引): 这些表中的数据以索引的大小按升序或者降序排列 6,index partition(索引的分区): 关于索引的数据分别存于不同的物理段里面 7,undo segment: 有序循环的方式存储(存放old value;读一致性;rollback ;recovery) 8,temporary: 临时段用来排序 9,LOB segment: 存放大的数据,oracle里面将这些数据并不放在表内部,而 是有专门一个段来存储 10,nested table(嵌套表):一个表中的某个字段的值是另外一个整表! 11,bootstrap segment:初始化我们的实例用的。这个段不需要维护和管理! 二oracle存储参数的设定及继承问题 【记忆】默认为 Oracle default ===》 Tablespace (创建表空间时定义的参数) ====》 Segment(优先级最高)

【理解】初始参数 oracle block 的5倍;意思是说你创建一个表,即使里面没存数据,它已经占用了8k×5=40kB的空间(这里假设oracle block size 为8kB) 三创建表时可以单独为表指定存储参数 SQL> conn hr/123456@kk 已连接。 SQL> create table hello(id int) 2 tablespace bkeep 3 storage(initial 100k 4 next 100k); 【点子】我们来创建一个表空间test11,不带任何存储参数,然后打开oem看看它的存储参数(这些参数就是从oracle default哪里继承过来的!) 四extent的分配和重新分配 -当创建段时就分配空间 -当扩展段时给它分配空间 -强制分配空间给段(段可以跨数据文件,但不可以跨表空间;但是强制的段是不能跨数据文件获取空间的) 创建表时,最初始的空间一定会分配给它!

信息管理系统—数据存储与管理

大学《数据存储与管理》实验报告 年3月28日

供应商 产品 运货商 供应商 雇员 产品 订单明细 订单 类别 客户 运货商 ? 3.打开 Microsoft Access,点击新建数据库标签,输入“Solomon”作为数据库名称, 并点击创建;点击屏幕左栏里的表,点击使用设计器创建表,在设计视图中按标签 输入每个关系的字段名,数据类型和说明,选中作为主键的字段名,点击主键按钮, 然后保存,并命名。(例下图) 供应商 ID 公司名 称 联系人 姓名 联系人 职务 地址 城 市 地 区 邮政编 码 国 家 电话 传真 主 页 1 佳佳乐 陈小姐 采购经 理 西直门大街 110 号 北 京 华 北 100023 中 国 (010) 65552222 2 康富食 品 黄小姐 订购主 管 幸福大街 290 号 北 京 华 北 170117 中 国 (010) 65554822 3 妙生 胡先生 销售代 表 南京路 23 号 上 海 华 东 248104 中 国 (021) 85555735 (021) 85553349 产品 ID 产品名称 供应商 类别 单位数量 单价 库存量 订购量 再订购量 1 苹果汁 佳佳乐 饮料 每箱 24 瓶 ¥18.00 39 0 10 2 牛奶 佳佳乐 饮料 每箱 24 瓶 ¥19.00 17 40 25 3 蕃茄酱 佳佳乐 调味品 每箱 12 瓶 ¥10.00 13 70 25 运货商 ID 公司名称 电话 1 急速快递 (010) 65559831 2 统一包裹 (010) 65553199 3 联邦货运 (010) 65559931

实验2 Oracle数据库物理存储结构管理

实验2 Oracle数据库物理存储结构管理 1.向BOOKSALES数据库的USERS表空间添加一个大小为10MB的数据文件users0 2.dbf。 2.向BOOKSALES数据库的TEMP表空间添加一个大小为10MB的临时数据文件temp02.dbf。 3. 向BOOKSALES数据库的USERS表空间中添加一个可以自动扩展的数据文件user03.dbf ,大小5M,每次扩展1M,最大容量为100M。 4.取消BOOKSALES数据库数据文件user03.dbf的自动扩展。 5.将BOOKSALES数据库数据文件users02.dbf更名为users002.dbf。

6.查询BOOKSALES数据库当前所有的数据文件的详细信息。 7.为BOOKSALES数据库添加一个多路复用的控制文件control03.ctl。 (过程忘了截图)复制过程没有问题,在文件夹中也能显示出CONTROL03.CTL文件可是在重新startup的时候数据库没有重新运行,出现了错误 查询也有CONTROL03.CTL文件

后来删除了CONTROL03.CTL文件(即10的图)还是启动不了数据库,只在新的例程里,后来重载了oracle。 8.以二进制文件的形式备份BOOKSALES数据库的控制文件。 第一次忘了截图 9.将BOOKSALES数据库的控制文件以文本方式备份到跟踪文件中,并查看备份的内容。

10.删除BOOKSALES数据库的控制文件control03.ctl。 11.查询BOOKSALES数据库当前所有控制文件信息 12.向BOOKSALES数据库添加一个重做日志文件组(组号为4),包含一个成员文件undo04a.log,大小为4M。 13.向BOOKSALES数据库的重做日志组4中添加一个成员文件,名称为undo04b.log。 14.将BOOKSALES数据库的重做日志组4中所有成员文件移植到一个新的目录下。

数据库的体系结构

数据库基础 ( 视频讲解:25分钟) 本章主要介绍数据库的相关概念,包括数据库系统的简介、数据库的体系结构、数据模型、常见关系数据库。通过本章的学习,读者应该掌握数据库系统、数据模型、数据库三级模式结构以及数据库规范化等概念,掌握常见的关系数据库。 通过阅读本章,您可以: 了解数据库技术的发展 掌握数据库系统的组成 掌握数据库的体系结构 熟悉数据模型 掌握常见的关系数据库 1 第 章

1.1 数据库系统简介 视频讲解:光盘\TM\lx\1\数据库系统简介.exe 数据库系统(DataBase System,DBS)是由数据库及其管理软件组成的系统,人们常把与数据库有关的硬件和软件系统称为数据库系统。 1.1.1 数据库技术的发展 数据库技术是应数据管理任务的需求而产生的,随着计算机技术的发展,对数据管理技术也不断地提出更高的要求,其先后经历了人工管理、文件系统、数据库系统等3个阶段,这3个阶段的特点分别如下所述。 (1)人工管理阶段 20世纪50年代中期以前,计算机主要用于科学计算。当时硬件和软件设备都很落后,数据基本依赖于人工管理,人工管理数据具有如下特点: ?数据不保存。 ?使用应用程序管理数据。 ?数据不共享。 ?数据不具有独立性。 (2)文件系统阶段 20世纪50年代后期到60年代中期,硬件和软件技术都有了进一步发展,出现了磁盘等存储设备和专门的数据管理软件即文件系统,文件系统具有如下特点: ?数据可以长期保存。 ?由文件系统管理数据。 ?共享性差,数据冗余大。 ?数据独立性差。 (3)数据库系统阶段 20世纪60年代后期以来,计算机应用于管理系统,而且规模越来越大,应用越来越广泛,数据量急剧增长,对共享功能的要求越来越强烈。这样使用文件系统管理数据已经不能满足要求,于是为了解决一系列问题,出现了数据库系统来统一管理数据。数据库系统满足了多用户、多应用共享数据的需求,它比文件系统具有明显的优点,标志着管理技术的飞跃。 1.1.2 数据库系统的组成 数据库系统是采用数据库技术的计算机系统,是由数据库(数据)、数据库管理系统(软件)、数

数据库设计实例需求分析、概念结构、逻辑结构

数据库设计实例分析 一、需求分析实例 现要开发高校图书管理系统。经过可行性分析和初步的需求调查,确定了系统的功能边界,该系统应能完成下面的功能: (1)读者注册。 (2)读者借书。 (3)读者还书。 (4)图书查询。 1、数据流图 顶层数据流图反映了图书管理系统与外界的接口,但未表明数据的加工要求,需要进一步细化。根据前面图书管理系统功能边界的确定,再对图书管理系统顶层数据流图中的处理功能做进一步分解,可分解为读者注册、借书、还书和查询四个子功能,这样就得到了图书管理系统的第0层数据流图 从图书管理系统第0层数据流图中可以看出,在图书管理的不同业务中,借书、还书、查询这几个处理较为复杂,使用到不同的数据较多,因此有必要对其进行更深层次的分析,即构建这些处理的第1层数据流图。下面的图8-7分别给出了借书、还书、查询子功能的第1层数据流图 2、数据字典 数据项 数据项名称:借书证号 别名:卡号 含义说明:惟一标识一个借书证 类型:字符型 长度:20 …… 数据结构 (1)名称:读者类别 含义说明:定义了一个读者类别的有关信息 组成结构:类别代码+类别名称+可借阅数量+借阅天数+超期罚款额 (2)名称:读者 含义说明:定义了一个读者的有关信息 组成结构:姓名+性别+所在部门+读者类型 (3)名称:图书 含义说明:定义了一本图书的有关信息 组成结构:图书编号+图书名称+作者+出版社+价格 ……

数据流 (1)数据流名称:借书单 含义:读者借书时填写的单据 来源:读者 去向:审核借书 数据流量:250份/天 组成:借书证编号+借阅日期+图书编号 (2)数据流名称:还书单 含义:读者还书时填写的单据 来源:读者 去向:审核还书 数据流量:250份/天 组成:借书证编号+还书日期+图书编号 …… 数据存储 (1)数据存储名称:图书信息表 含义说明:存放图书有关信息 组成结构:图书+库存数量 说明:数量用来说明图书在仓库中的存放数 (2)数据存储名称:读者信息表 含义说明:存放读者的注册信息 组成结构:读者+卡号+卡状态+办卡日期 说明:卡状态是指借书证当前被锁定还是正常使用 (3)数据存储名称:借书记录 含义说明:存放读者的借书、还书信息 组成结构:卡号+书号+借书日期+还书日期 说明:要求能立即查询并修改 …… 处理过程 (1)处理过程名称:审核借书证 输入:借书证 输出:认定合格的借书证 加工逻辑:根据读者信息表和读者借书证,如果借书证在读者信息表中存在并且没有被锁定,那么借书证是有效的借书证,否则是无效的借书证。 …… 二、概念结构设计实例 1.标识图书管理系统中的实体和属性 参照数据字典中对数据存储的描述,可初步确定三个实体的属性为: 读者:{卡号,姓名,性别,部门,类别、办卡日期,卡状态} 读者类别:{类别代码,类别名称,可借阅天数、可借阅数量,超期罚款额}

数据库的存储结构(文件、记录的组织和索引技术)

数据库的存储结构(文件、记录的组织和索引技术) by 沈燕然0124141 利用课余时间自学了第6章《数据库存储结构》,对于数据 库不同层次的存储结构,文件记录组织和索引技术有了一定的 了解,在这篇札记中将会结合一些具体应用中涉及到的数据存 储和索引知识,以及通过与过去学习过的一些数据结构比较来 记录自己学习的心得体会。这些实例涉及不同的数据库系统, 如Oracle, DB2和Mysql等等,它们之间会有一些差异。不过 本文旨在探讨数据存储方面的问题,因而兼容并包地将其一并收入,凡是可能需要说明之处都会加上相应的注解。:) 1、数据库(DBS)由什么组成?——逻辑、物理和性能特征 1、什么是数据库系统(DBS)——DBS用文件系统实现 在关系模型中,我们把DBS看成关系的汇集。DBS存在的目的就是为了使用户能够简单、方便、容易地存取数据库中的数据。因此在用户的眼中,数据库也就是以某种方式相关的表的集合。用户并不需要去关心表之间关系,更不需要了解这些表是怎样存储的。但是我们现在从DBA(数据库管理员)的角度来看,情况就比那稍稍复杂一点。 实际的数据库包含许多下面列出的物理和逻辑对象: ?表、视图、索引和模式(确定数据如何组织) ?锁、触发器、存储过程和包(引用数据库的物理实现) ?缓冲池、日志文件和表空间(仅处理如何管理数据库性能) 2、什么是表空间?——表空间相当于文件系统中的文件夹。 表空间被用作数据库和包含实际表数据的容器对象之间的一层,表空间可以包含多个不同的表。用户处理的实际数据位于表中,他们并不知道数据的物理表示,这种情况有时被称为数据的物理无关性。

上图描述了一个ORACLE数据库大致的表空间组织,USER中存放主要的数据表,TEMP存放临时数据表,INDX存放索引,TOOLS存放回退段(RBS). 表空间在DB2数据库系统中是比较典型的说法,在Mysql等系统中也直接使用文件系统中文件夹的概念。新建一个表的时候可以指定它所在的表空间,至于用文件具体存储数据时如何存储这可能就是各个数据库系统的商业机密了,至少DB2是这样。另外值得关注的一点是不同于oracles对表空间的严格要求,Mysql的数据库形式相对比较简单,以文件夹的形式存放在安装目录的/data/下面,该数据库的每一个表对应两个文件,一个存放表中数据,另一个存放元数据信息,也就是建表时指明的列属性等等信息。 3、文件中的记录在物理上如何实现?——文件组织形式 在外存中,DB以文件形式组织,而文件由记录组成。文件结构由OS的文件系统提供和管理。文件组织有两种方式——定长记录格式和变长记录格式。 那种格式更好? 定长记录格式——优点是插入操作较简单。 缺点是对记录长度有硬性要求,而且有的记录可能横跨多个快,降低读写效率。 变长记录格式——优点是记录长度自由方便 缺点是记录长度差异导致删除后产生大量“碎片”,记录很难伸长,尤其“被拴记录”移动代价相当大。 中庸之道——预留空间和指针方式 记录长度大多相近——采用预留空间方法,取最大记录长为统一标准,在短记录多于空间处填特定空值或记录尾标志符。 记录长度相差很大——采用指针形式(每纪录后的指针字段把相同属性值记录链接起来)。文件中使用两种块——固定块(存放每条链中第一条记录)和溢出块(存放其 余纪录)。 3、记录在文件中怎样组织?

数据库运行管理规范

数据库运行管理规范 目录 1.总则

2.适用范围 3.数据库管理员主要职责 4.数据库的日常管理工作 5.数据库的安全管理 6.备份与恢复 7?日志及监控审计 8.数据存放、归档管理12 13

1.总则 1.1为规范我司信息系统的数据库管理和配置方法,保障信息系统稳定安全地运行,特制订本办法。 2.适用范围 本规范中所定义的数据管理内容,特指存放在信息系统数据库中的数据,对于存放在其他介质的数据管理,参照相关管理办法执行。 3.数据库管理员主要职责 3.1负责对数据库系统进行合理配置、测试、调整,最大限度地发挥设备资源优势。负责数据库的安全运行。 3.2负责定期对所管辖的数据库系统的配置进行可用性,可靠性,性能以及安全检查。 3.3负责定期对所管辖的数据库系统的可用性,可靠性,性能以及安全的配置方法进行修订和完善。 3.4负责对所管辖的数据库系统运行过程中出现的问题及时处理解决。 3.5负责对所管辖数据库系统的数据一致性和完整性,并协助应用开发人员、使用操作等相关人员做好相关的配置、检查等工作。 3.6负责做好数据库系统及数据的备份和恢复工作。 4.数据库的日常管理工作 4.1每日的管理工作 4.1.1数据库管理员每天登录到服务器操作系统,进行如下检查工作: (1)检查所有的数据库实例状态以及所有与数据库相关的后台进程。

⑵检查数据库网络的连通与否,比如查看监听器(listener )的状态、网络能否ping通其它的计算机、应用系统的客户端能否连通服务器等等。 (3)检查磁盘空间的使用情况。如果剩余的空间不足20%,需要删除不用的文 件以释放空间。 (4)查看告警文件有无异常。 (5)根据数据库系统的特点,检查其它的日志文件中的内容,发现异常要及时加以处理。 ⑹检查CPU内存及10等的状态。 (7)检查备份日志文件以及网络备份软件的监控记录,确定自动备份成功完成。对于数据库的脱机备份,要确信备份是在数据库关闭之后才开始的,备份内容是否齐全。运行在归档模式下的数据库,既要注意归档日志文件的清除,以免磁盘空间被占满,也必须注意归档日志文件的保留,以备恢复时使用。 (8)每天运行数据库管理控制台,检查数据存储空间的使用情况、剩余情况, 必要时,增大数据存储空间容量。对于使用量增加快的表空间要特别关注。 4.2数据库管理的每月工作 (1)收集数据库的性能统计数据,检查高速缓存区命中率、资源争用等统计信息,若不理想,设法加以分析改善。 (2)检查数据对象存储空间碎片情况,必要时加以调整。 (3)比较分析数据库系统和操作系统的CPU内存,网络,及硬盘的利用率, 以此确定出近期将可能出现的资源争夺趋势,必要时加以调整,以避免系统资源的争夺,如果调整还达不到要求,须考虑增加新资源。 ⑷检查每日数据库管理工作的执行情况,用户、数据对象存储空间增加删改的记录是否齐全,备份记录、维护记录是否齐全,不足的及时补上。 4.3数据库管理的每年工作 (1)逐项检查每日、每月数据库管理工作的执行情况。用户、数据对象存储空间增加删改的记录是否齐全,备份记录、维护记录是否齐全,不足的及时补上。 (2)对数据库系统运行的情况统计。

数据库的存储结构

第五章数据库的存储结构 5.1数据库存储介质的特点 ●内存 容量低(一般只有几百M,最多一两个G),价格高,速度快,数据易丢失(掉电、当机等)。 一般做DBMS(或CPU)和DB之间的数据缓冲区。 实时/内存数据库系统中使用内存存放实时数据。 ●硬盘 容量高(一般有几十G,多到一两百G),价格中,速度较快,数据不易丢失(除非物理性损坏)。 一般做用来存放DB。 实时/内存数据库系统中使用硬盘存放历史数据库。 ●移动硬盘(USB接口) 容量高(一般有几十G),价格中,速度较快,数据不易丢失(除非物理性损坏)。 一般做用来做备份。 ●光盘 容量低(一般650M/片,但光盘可在线更换,海量),价格低,速度中,数据不易丢失(除非物理性损坏)。 一般做用来做备份。 ●磁盘(软盘) 容量低(一般有几M,优盘多到一两百M),价格中,速度较慢,数据不易丢失(除非物理性损坏)。 一般数据库不使用磁盘。 ●磁带 容量低(但可在线更换,海量),价格低,速度最慢,且要按顺序存取,数据不易丢失(除非物理性损坏)。 一般做用来做备份。 按速度从高到低: 内存、硬盘、USB盘(移动硬盘和优盘)、光盘、软盘、磁带。 按在线容量从大到小: 硬盘、移动硬盘、内存、光盘、磁带、优盘、软盘。 物理块:512byte/1K/2K/4K/8K 原因: (1)减少I/O的次数; (2)减少间隙的数目,提高硬盘空间的利用率。 ORACLE逻辑块与物理块(init.ora中db_block_size定义逻辑块大小) 缓冲块和缓冲区(即SGA中的Data Buffer Cache) 延迟写(delayed write)技术/预取(Prefetching)技术(ORACLE中由DBWR进程完成数据的读写)

Oracle数据库的物理存储结构之数据库控制文件详解

Oracle数据库中,数据库控制文件维护着数据库的全局物理结构,用以支持数据库成功的启动和运行。创建数据库时,同时就提供了与之对应的数据库控制文件。在数据库使用过程中,Oracle不断的更新数据库控制文件,所以只要数据库是打开的,数据库控制文件就必须处于可写状态。如果,犹豫某些原因控制文件不能被访问,那么数据库也就不能正常的工作了。 每一个控制文件只能与一个Oracle数据库相关联。数据库控制文件包含了数据库实例的启动和正常操作时,访问数据库所需的关于数据库的信息。数据库控制文件的内容只有Oralce 可以修改,数据库管理员和用户都不能对其进行编辑。 控制文件包含了以下信息: ?数据库名称 ?数据库创建的时间戳 ?相关的数据文件、重演日志文件的名称和位置 ?表空间信息 ?数据文件脱机范围 ?日志历史 ?归档日志信息 ?备份组和备份块信息 ?备份数据文件和重演日志信息 ?数据文件拷贝信息 ?当前日志序列数 ?检查点(checkpoint)信息 数据库名称和时间戳源自数据库创建之时,数据库名称或是来自DB_NAME初始化从参数,或者来自Cteate Database语句使用的名称。 每当数据文件或重演日志文件被添加内容、重新命名或者直接从数据库删除时,控制文件都要进行更新以反应物理结构的变化。记录下这些变化后,Oracle就可以:在数据库启动的时候,能够确定并打开数据文件和重演日子文件。 在必须要恢复数据库的时候,能够确定哪些文件是必须的、哪些文件是可用的。 PS:如果数据库的物理结构发生了改变(使用了Alert Database语句),用户应该立刻备份控制文件。 控制文件还记录了关于检查点的信息。每3秒,检查点进程(CKPT)就会在控制文件里记录重演日志文件的检查点位置信息。这些信息用于数据库的恢复过程,告诉数据库在这一点之前的已经记录下的重演条目不必进行恢复,因为它们已经被写入数据文件了。 由于控制文件对数据库的至关重要,所以联机存储着多个副本。这些文件一般存储在各个不同的磁盘上,以便将因磁盘试下哦引起的潜在危险降至最低程度。Oracle支持对同一个数据库并发的打开、书写多个相同的控制文件。通过为一个数据库在不同的磁盘上保存多个控制文件,可以幼小的降低对于控制文件可能发生的单点失败。例如,包含一个控制文件的磁盘崩溃了,如果Oracle试图访问这个被破坏的文件,当前实例就会失败,但是如果在不同的磁盘上保存了当前控制文件的复件,就可以重启一个实例而无需进行数据库恢复。

数据库的内存结构

系统全局区域(SGA) 大型池(Large Pool) 在SGA中大型池是可选的缓冲区。它可以根据需要有管理权进行配置。它可以提供一个大的区以供象数据库的备份与恢复等操作。 Oracle实例的内存结构组织包含在称为系统全局区域(System Global Area,SGA)的内存区域中。SGA在虚拟内存中进行分配,用于存放Oracle服务器进程。SGA内存结构组织包括共享池、数据库缓冲区高速缓存以及重做日志缓冲区,许多进程共享SGA。 1.共享池 共享池包括两个组件----库高速缓存和数据字典高速缓存。库高速缓存和数据字典高速缓存。库高速缓存储存当前最新使用的SQL语句及其执行计划。数据字典高速缓存则储存最新使用的数据字典信息,如表的定义、用户名和权限等。共享池的大小可以影响数据库的性能,在OLTP环境中更是如此。 2.数据库缓冲区高速缓存 当用户提交一个SQL查询时,为完成请求,服务器进程先查找数据库缓冲区高速缓存中的数据块。如果数据库缓冲区高速缓存中没有用户要求的数据块,那么服务器进程必须从物理设备中读取数据块,并在该缓冲区高速缓存中存放此数据的备份,这样,对相同数据块的后续请求就可以在内存中找到,而无需物理读取。 3.重做日志缓冲区 数据进行的所有更改都存储在重做日志缓冲区中,这些记录在以后会被拷贝到重做日志文件中。 程序全局区域(PGA) 程序全局区域(Program Global Area,PGA)是包含一个单个服务器进程数据的内存区域。在用于专门的服务器配置时,PGA由排序区域、会话信息、游标状态和堆栈空间组成。PGA在一个进程开始时进行分配,并在进程终止时释放。 数据库实例 为了访问数据库中的数据,Oracle使用一组为所有用户共享的后台进程。此外,还有一些存储结构(统称为系统全局区域)用来存储最近从数据库查询的数据。通过减少对数据库文件的I/O次数,这些存储区域可以改善数据库性能。 Oracle数据库实例通常称为数据库服务器,用来访问数据库文件集的存储结构及后台服务进程的集合。一个数据库可以被多个实例访问(对应于Oracle的并行服务器选项)。1.服务器启动和关闭 在用户能够操作Oracle数据库之前,必须先对数据库服务器执行一个启动操作。这个过程包括启动一个数据库实例、数据库实例挂上数据库和打开数据库。在服务器启动之后,数据库就可以被使用了。 相反,通过执行数据库服务器关闭操作,可以使一个数据库不可用。服务器关闭是服务器的反过程:首先要关闭数据库,然后从实例卸载数据库,最后关闭实例。在服务器关闭后,用户不能访问数据库,知道重新启动服务器才可以再次访问。 2.服务器连接 在一个Oracle实例启动并运行后,可以建立于服务器的连接来执行数据库工作。在后台,数据库实例工作机制负责完成用户请求。在同一时间,在保持数据库完整的同时,数据库实例自动地保护全部事务的工作。

数据库的逻辑结构

数据库逻辑存储结构 数据库的物理存储结构对应一系列的物理文件,这部分主要描述的是数据存储的实际位置,不过数据如果存储,是以什么结构存储到数据文件中,则取决于数据库的逻辑存储结构. Oracle数据库在执行操作时,并不是以数据文件为单位,而是从逻辑上定义出一组结构,操作的数据可以一步步细分不同的存储单元,oracle 操作数据的过程,实际上就是对这些不同级别的存储单元进行维护和管理的过程. 逻辑存储概述 --块(block)块是逻辑存储结构中最小存储单位,所有数据的存储都是以块为单位进行.初始化参数文件中BLOCK_SIZE来指定一个块的大小,也就是说oracle的块大小在数据库创建时指定,一经指定就无法修改,除非重建数据库. --区(extent) 区是oracle数据库的最小分配单位,由一组连续的块组成,这些块在物理上可能并不连续(也就是OS块),但是必需都存在于一个物理文件,单个区在分配时不能跨文件分配(这个文件应该是数据文件).在创建对象时,最少会为该对象分配一个区,这个区叫做初始区(initial extent) 在随着对象的不断扩展,超出初始区后,oracle就会再为其分配扩展区(incremental extent)扩展区不一定要与初始区连续存放,甚至大小也可以与初始区不同,不过扩展区也必需是由连续的块组成. 段(segment)从逻辑的角度看,段由一个或多个区组成,它是一个真正逻辑结构. 可以将段看作是对象的全部或某个部分 例如:一个普通的堆组织表(不含分区,LOB类型及索引等)那么该表就对应一个段,不管这个表中被存放多少记录,它都仍然只对应一个段,不过如果该表创建了索引,那么索引数据会存放专门的索引段,如果该表有LOB类型,LOB数据也会被存入单独的数据段. --表空间(tablespace)从逻辑上定义,是由一个或多个段组成,从物理上定义是由一个或多个数据文件组成.表空间是oracle数据库中空间分配的最大逻辑单位,在往上就是数据库级别. 平时进行的创建对象的操作,都是在表空间一级进行. **提示:如创建存储对象时只能指定存储到哪个表空间,而不能指定存储到更细粒度的逻辑结构,如段,区,块.也不能指定存储到某个数据文件中. *注意*:在创建存储对象时,只需要指定存储所在的表空间(如果未指定,则存储到用户当前的默认表空间中),其他一切由oracle自动处理图: 每层结构都是一对多的关系 逻辑结构对应关系图

Oracle 逻辑存储结构

Oracle 逻辑存储结构 逻辑存储结构是Oracle 数据库存储结构的核心内容,对Oracle 数据库的所有操作都会涉及到其逻辑存储结构。数据库的逻辑结构是从逻辑的角度分析数据库的构成,即创建数据库后形成的逻辑概念之间的关系。在逻辑上,Oracle 将保存的数据划分为一个个小单元来进行存储和维护,高一级的存储单元由一个或多个低一级的存储单元组成。Oracle 的逻辑存储单元从小到大依次为:数据块(DA TA BLOCKS )、盘区(EXTENT )、段(SEGMENTS )和表空间(TABLE SPACES ),图2-2显示了各逻辑单位之间的关系。 数据库 ...表空间 表空间段 段盘区 数据块盘区数据块 段段数据库...表空间表空间段段盘区数据块盘区数据块段 段 图2-2 数据库的逻辑存储组成 由图2-2可知,Oracle 数据库由多个表空间组成,而表空间又由许多段组成,段由多个盘区组成,盘区又由多个数据块组成。 1 数据块 数据块是Oracle 用来管理存储空间的最小单元,也是执行数据库输入输出操作时的最小单位。相对应地,操作系统执行输入输出操作的最小单位为一个操作系统块的大小。在操作系统中,执行I/O 操作是以操作系统块为单位,而在Oracle 中,执行的I/O 操作以Oracle 数据块为单位。 Oracle 块的大小是操作系统块大小的整数倍。以Windows NT 操作系统为例,NTFS 格式的磁盘分区一般为4KB 大小,因此Oracle 块的大小为8KB 等。数据块的标准大小由初始化参数DB_BLOCK_SIZE 确定,具有标准大小的块被称为标准块。Oracle 支持在同一个数据库中使用多种大小的块,与标准块大小不同的块称为非标准块。 可以通过查询V$PARAMETER 数据字典,可以获得参数DB_BLACK_SIZE 的值,该参数值同时也是数据块的尺寸大小。例如: SQL> select name,value 2 from v$parameter where name ='db_block_size'; NAME V ALUE --------------------------- -------------------------- db_block_size 8192 在数据块中可以存储各种类型的数据,如表数据、索引数据、簇数据等。无论数据块中存放何种类型的数据,块都具有相同的结构,图2-3列出一个Oracle 块的基本结构。

数据库原理课后题答案

第1章 1.试述数据、数据库、数据库系统、数据库管理系统的概念。 答:(1)数据:描述事物的符号记录成为数据。数据的种类有数字、文字、图形、图像、声音、正文等。数据与其语义是不可分的。 (2)数据库:数据库是长期储存在计算机内的、有组织的、可共享的数据集合。数据库中的数据按照一定的数据模型组织。描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。 (3)数据库系统:数据库系统是指在计算机系统中引入数据库后的系统构成,一般由数据库、数据库管理系统(及其开发人具)、应用系统、数据库管理员构成。 (4)数据库管理系统:数据库管理系统是位于用户与操作系统之间的一层数据管理软件,用于科学地组织和存储数据、高效地获取和维护数据。DBMS的主要功能包括数据定义功能、数据操作功能、数据库的建立和维护功能。 6.试述数据库系统三级模式结构,这种结构的优点是什么? 答:数据库系统的三级模式机构由外模式、模式和内模式组成。 外模式,亦称子模式或用户模式,是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。 模式亦称逻辑模式,是数据库中全体数据呃逻辑结构和特征的描述,是所有用户的公共数据视图。模式描述的是数据的全局逻辑结构。外模式涉及的是数据的内部逻辑结构,通常是模式的子集。 内模式,亦称存储模式,是数据在数据库内部的表示,即对数据的物理结构和存储方式的描述。 数据库系统的三级模式是对数据的三个抽象级别,它对数据的具体组织留给DBMS管理,使用户能逻辑抽象地处理数据,而不必关心数据在计算机中的表示和存储。 为了能够在内部实现这三个抽象层次的联系和转换,数据库系统在这三级模式之间提供了两层映像:外模式∕模式映像和模式∕内模式映像。正是这两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。 7.定义并解释下列术语。 外模式:亦称子模式或用户模式,是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。 内模式:亦称存储模式,是数据在数据库内部的表示,即对数据的物理结构和存储方式的描述。 模式:亦称逻辑模式,是数据库中全体数据逻辑结构和特征的描述,是所有用户的公共数据视图。模式描述的是数据的全局逻辑结构。外模式涉及的是数据的内部逻辑结构,通常是模式的子集。 DDL:数据库定义语言,用来定义数据库模式、外模式、内模式的语言。DML:数据操纵语言,用来对数据库中数据进行查询、插入、删除和修改的语句。 8.什么叫数据与程序的物理独立性?什么叫数据与程序的逻辑独立性?为什么

Oracle体系结构概述

Oracle 体系结构概述 完整的Oracle 数据库系统通常由两个部分组成:实例(INSTANCE )和数据库(DATABASE )。数据库是由一系列物理文件的集合(数据文件,控制文件,联机日志,参数文件等);实例则是由一组Oracle 后台进程/线程以及在服务器分配的共享内存区。 实例和数据库有时可以互换使用,不过二者的概念完全不同。实例和数据库之间的关系是:数据库可以由多个实例装载和打开,而实例可以在任何时间点装载和打开一个数据库。准确地讲,一个实例在其生存期中最多只能装载和打开一个数据库。如果要想再打开其他数据库,必须先丢弃这个实例,并创建一个新的实例。 数据库的主要功能是保存数据,实际上可以将数据库看作是存储数据的容器。数据库的存储结构也就是数据库存储数据的方式,Oracle 数据库的存储结构分为逻辑存储结构和物理存储结构,这两部分是相互独立但又密切相关的。逻辑存储结构主要用于描述在Oracle 内部的组织和管理数据的方式,而物理存储结构则用于描述在Oracle 外部,即操作系统中组织和管理数据的方式。 Oracle 对逻辑存储结构和物理存储结构的管理是分别进行的,两者之间不直接影响。因此Oracle 的逻辑存储结构能够适用于不同的操作系统平台和硬件平台,而不需要考虑物理实现方式。 在启动Oracle 数据库服务器时,实际上是在服务器的内存中创建一个Oracle 实例(即在服务器内存中分配共享内存并创建相关的后台进程),然后由这个实例来访问和控制磁盘中的数据文件。图2-1以最简单的形式展示了Oracle 实例和数据库。Oracle 有一个很大的内存块,称为系统全局区(SGA )。 文件 文件文件文件 文件数据库 SGA 后台进程后台进程后台进程后台进程后台进程后台进程后台进程 实例 图2-1 Oracle 实例和数据库 当用户连接数据库时,实际上是连接到实例中,由实例负责与数据库通信息,然后再将处理结构返回给用户。 Oracle 数据库服务器的后台进程的数量与其工作模式有密切关系。Oracle 服务器处理请求有两种最常见的方式,分别是专用服务器连接和共享服务器连接。在专用服务器连接下,Oracle 数据库会为每个用户请求分配一个专用服务器进程为其提供服务,当用户请求结束后,对应的服务器进程也相应地被终止。如果同时存在大量的用户请求,则需要同等数量的服务器进程提供服务。 而在共享服务器连接下,Oracle 数据库始终保持一定数量的服务器进程,用户的请求首

浅谈数据库的日常管理与维护

浅谈数据库的日常管理与维护 企业在信息管理过程中,大量的数据存储、共享、访问和修改,都需要通过数据库系统来实现。数据库系统作为信息的聚集体,是计算机信息系统的核心,其性能在很大程度上影响着企业信息化水平的高低。一个公司,不管它是自己开发应用软件,还是购买第三方应用软件,都需要对数据库进行管理和维护。科学有效地管理与维护数据库系统,保证数据的安全性、完整性和有效性,己经成为现代企业信息系统建设过程中的关键环节。 数据库管理中存在的问题 随着信息网络技术的飞速发展,数据库的应用越来越广泛,但也随之产生了一系列数据管理的问题,其中,尤为突出的是数据库安全性问题。 数据库安全性问题一直是困扰数据库管理员的难题。通常数据库面临的威胁主要有:软件和硬件环境出现意外,如磁盘损坏,系统崩溃等;计算机病毒可能造成系统崩溃,进而破坏数据;对数据库的不正确访问,引发数据库死循环,造成前端系统无法使用;未经授权非法访问数据库信息,窃取其中的数据;未经授权非法修改数据库中的数据,使其数据失去真实性;通过网络对数据库进行各种非法存取;通过

网络破坏数据库系统的完整性、可靠性;对网络数据库进行拒绝式服务攻击等。而对于重要部门或敏感领域的数据,则会面临更多威胁。这就需要企业信息部门通过加强对数据库的日常维护和管理,来进一步保障网络数据库的安全。 做好数据库的日常管理与维护 数据库系统在信息化建设中的重要地位和作用告诉我们,数据库的日常管理与维护不容小视。为保证数据库数据的安全,企业应该做到未雨绸缪。 (一)完善管理制度,强化监管力度。数据库系统的安全与企业自身内部的安全机制、内外网络环境、从业人员素质等密切相关。因此,企业应该完善网络系统安全规章制度,防范因制度缺陷带来的风险;企业应该规范操作流程和故障处理流程,减少人为失误与故障,提高故障处理速度,缩短故障处理时间;企业应该通过建立科学合理的责任追究机制,防止出现由于工作态度、工作作风等各种人为因素导致的数据库安全事故。 (二)采取措施,确保数据库数据的安全。保证数据库数据的安全是数据库日常管理与维护工作的首要任务,企业需要采取的安全措施主要有:

数据库原理习题与答案第3章数据库系统结构

第三章.数据库系统结构 习题: 一.选择题 1.数据库技术中采用分级方法将数据库的结构划分成多个层次,是为了提高数据库的(1)和(2)。 (1)A.数据独立性 B.逻辑独立性 C.管理规范性 D.数据的共享 (2)A.数据独立性 B.物理独立性 C.逻辑独立性 D.管理规范性 2.数据库中,数据的物理独立性是指。 A.数据库与数据库管理系统的独立 B.用户程序与DBMS的相互独立 C.用户的应用程序与存储在磁盘上数据库中的数据是相互独立的 D.应用程序与数据库中数据的逻辑结构相互独立 3.数据库系统的最大特点是。 A.数据的三级抽象和二级独立性 B.数据共享性 C.数据的结构化 D.数据独立性 4.在数据库的三级模式结构中,描述数据库中全体数据的全局逻辑结构和特征的是 。 A.外模式 B.内模式 C.存储模式 D.模式 5.数据库系统的数据独立性是指。 A.不会因为数据的变化而影响应用程序 B.不会因为系统数据存储结构与数据逻辑结构的变化而影响应用程序 C.不会因为存储策略的变化而影响存储结构 D.不会因为某些存储结构的变化而影响其它的存储结构 6.数据库三级模式体系结构的划分,有利于保持数据库的。 A.数据独立性 B.数据安全性 C.结构规范性 D.操作可行性

1.试述数据库系统三级模式结构,这种结构的优点是什么。 2.定义并解释以下术语:模式、外模式、内模式、DDL、DML。 3.什么叫数据与程序的物理独立性?什么叫数据与程序的逻辑独立性?为什么数据库系统具有数据与程序的独立性?

一.选择题 4.(1)B (2)B 5.C 6.A 7.D 8.B 9.A 二.简答题 1.数据库系统的三级模式结构由外模式、模式和内模式组成。外模式,亦称子模式或用户模式,是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。模式,亦称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。模式描述的是数据的全局逻辑结构,外模式涉及的是数据的局部逻辑结构,通常是模式的子集。内模式,亦称存储模式,是数据在数据库系统内部的表示,即对数据的物理结构和存储方式的描述。 数据库系统的三级模式是对数据的三个抽象级别,它把数据的具体组织留给DBMS 管理,使用户能逻辑抽象地处理数据,而不必关心数据在计算机中的表示和存储。 为了能够在内部实现这三个抽象层次的联系和转换,数据库系统在这三级模式之间提供了两层映像:外模式/模式映像和模式/内模式映像,正是这两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。 2.模式,亦称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。外模式,亦称子模式或用户模式,是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。内模式,亦称存储模式,是数据在数据库系统内部的表示,即对数据的物理结构和存储方式的描述。 DDL:数据定义语言,用来定义数据库模式、外模式、内模式的语言。 DML:数据操纵语言,用来对数据库中的数据进行查询、插入、删除和修改的语句。 3.数据与程序的逻辑独立性:当模式改变时,由数据库管理员对各个外模式//模式的映像做相应改变,可以使外模式保持不变。应用程序是依据数据的外模式编写的,从而

相关文档
相关文档 最新文档