数据库的逻辑结构
数据库的逻辑结构
数据库
逻辑
表空间 段
数据文件
物理
区
Oracle块
O/S块 1
第1页/共48页
表空间(tablespace)
❖表空间用于组织数据库数据。 ❖从逻辑上讲,数据库是由一个或多
个表空间组成的。 ❖一个表空间只能属于一个数据库。 ❖从物理上讲表空间是由一个或多个
数据文件组成的。
2
第2页/共48页
上存放在表空间中,而物理上则是存 放在数据文件中的。
4
第4页/共48页
数据文件
❖从性能角度考虑,应将数据文件和重 做日志文件分布到不同磁盘上。
❖从数据安全角度上考虑也应将数据文 件和重做日志文件尽可能分布到不同 的磁盘上 。
5
第5页/共48页
段(segment)
❖用于存储特定逻辑结构的所有数据。当建立数据对 象(表、索引等)时, Oracle会自动给这些数据对 象分配相应的存储空间,以存放它们的 数据信息, 这些为数据对象分配的存储空间称为段。
14
第14页/共48页
管理实例和数据库
➢ db_block_size 指定标准数据块尺寸,数据库建立之 后该参数不能修改。
➢ db_cache_size 数据高速缓存所对应的尺寸。 ➢ log_buffer 重做日志缓冲区的尺寸。 ➢ shared_pool_size 共享池的尺寸。 ➢ background_dump_dest 指定后台进程跟踪文件所在
❖ 建立参数文件
1)复制参数文件 将文件 d:\oracle\admin\oracle\pfile\init.ora复制
到 d:\oracle\ora92\database\inittest.ora 2)编辑初始化参数
db_name = test instance_name = test control_files = e:\test\test01.ctl db_block_size = 81928源自第8页/共48页数据块
❖数据块也称为Oracle块,是Oracle在数据文 件上执行I/O操作的最小单位。 ❖数据块尺寸是由初始化参数db_block_size 确定的,取值一般为2K、4K、8K、16K、 32K、64K等。 ❖数据块的大小应是OS块的整数倍。
9
第9页/共48页
表空间
❖SYSTEM表空间 ✓自动建立。 ✓存放数据字典。 ✓包含SYSTEM回滚段。
目录。 ➢ user_dump_dest 指定用户进程跟踪文件所在目录。 ➢ remote_login_password_file 指定特权用户的认证方
式。 ➢ Undo_management 指定UNDO数据的方式。
15
第15页/共48页
管理实例和数据库
❖建立实例服务
ORADIM -NEW -SID test -INTPWD test
-STARTMODE auto -pfile c:\oracle\ora92\database\inittest.ora
➢ 连接到实例
1)在DOS提示符下设置要连接的实例: set oracle_sid=test
2)在DOS提示符下运行: sqlplus /nolog 3)以特权用户连接:connect sys/test as sysdba
修改或增加初始化参数的原则如下: 1)在修改或增加初始化参数之前,首先检 查该初始化参数是否存在,若存在则直接修改; 若不存在,那么在文件尾部增加一行。
11
第11页/共48页
管理实例和数据库
2)每行只能设置一个参数; 3)字符型参数的值可以用双引号引住,但数 字型参数则不能用引号引住。
4)如果一个初始化参数有多个值,则用逗号 隔开。
表空间的作用
❖通过表空间,可以近制数据库所占 用的磁盘空间。
❖通过表空间,管理员可以将不同类 型的数据分布到不同磁盘上,降低 I/O冲突,从而提高I/O性能 。
3
第3页/共48页
数据文件(data file)
❖是表空间的物理组成部分,表空间与 数据文件是一对多的关系。
❖一个数据文件只能属于一个表空间 。 ❖数据对象(表、索引等)的数据逻辑
❖在一个表空间上可以包含一个或多个段。 ❖一个段只能存放在一个表空间上,并且段是由一个
或多个区组成的。
6
第6页/共48页
常用段的类型
❖数据段:用于存放表的数据,表与数据段是一 一 对应的关系,并且段名与表名完全相同。
❖索引段:用于存放索引的数据,索引段与索引也 是一 一对应的关系,并且名称相同。
❖回滚段:用于存放事务所修改数据的旧值。
7
第7页/共48页
区(extent)
❖是Oracle空间分配的逻辑单位,由相邻的数 据块组成,一个区只能唯一地属于一个数据 文件。 ❖当建立数据对象时,Oracle会为数据对象以 区为单位分配存储空间。 ❖当建立段时,Oracle至少要为其分配一个区, 当段不足以容纳数据对象时,该段会自动扩 展一个区。
13
第13页/共48页
管理实例和数据库
db_cache_size = 25M shared_pool_size = 25165824 log_buffer = 32768 background_dump_dest = e:\test\bdump user_dump_dest = e:\test\udump remote_login_passwordfile = EXCLUDSIVE undo_management = AUTO undo_tablespace = UNDOTBS
5)屏蔽参数可以使用“#”。 在构造Oracle Server之前,首先需要完成的
任务就是建立参数文件。Oracle建议将参数文 件放到Oracle主路径的database子目录下,并 将参数文件名称设置为: init<SID>.ora 其中 SID为实例标识符。
12
第12页/共48页
管理实例和数据库
❖非SYSTEM表空间 ✓分离回滚段、临时段、数据段和索引段。 ✓易于备份和恢复。 ✓易于空间管理。
10
第10页/共48页
管理实例和数据库
❖ 参数文件
Oracle 9i提供了200多个初始化参数,且每个 初始化参数都有默认值。在使用Oracle Server 时可以根据特定需求设置相应的值,而大多数 都可以保留默认设置。