按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!
用于排序操作
被多个用户共享(一个临时段的不同区)
不包含任何永久对象
CREATE TEMPORARY TABLESPACE temp_name
TEMPFILE '路径+文件名。dbf' size nM EXTENT MANAGEMENT LOCAL 'UNIFORM SIZE 128K';
默认的临时表空间:
不允许被删除;
不能被离线;
不能将一个默认的临时表空间指定到一个永久类型的表空间上;
设置数据库级的默认的临时表空间;
减少使用 SYSTEM 表空间存储临时数据的需求;
创建方法:
CREATE DATABASE 的时候指定;
ALTER DATABASE
先创建一个临时表空间
再指定 ALTER DATABASE DEFAULT TEMPORARY TABLESPACE temp_name;
查看临时表空间:select * from database_properties;
撤消类型表空间:
只能存放回滚段(撤消段)。
只能使用本地管理;
CREATE UNDO TABLESPACE undo_name
第 60 页,共 106 页
…………………………………………………………Page 61……………………………………………………………
资源来自网络,仅供学习! Oracle 从入门到精通
DATAFILE '路径+文件名。dbf' size nM;
18、表空间的空间管理(区的管理):
1、本地管理:
9i 默认管理方式;
性能好;
空闲区的信息记录在位图区中;
位图用于记录空闲空间(连续的 0就表示有空闲);
每一位相当于一个数据块或一组数据块;
位的值代表空闲或被使用;
空间管理方式:
自动分配空间;
用户分配空间,空间中每个区的大小等同;
2、数据字典管理表空间:
8i 以前的默认管理方式;
空闲区信息记录在数据字典中;
当区被分配和释放的时候,特定的表被更新;
3、存储参数:
initial 初始化大小
next 下一个区大小
pctincrease 区大小增量
minextents 最小区数(本地管理)
maxextents 最大区数(本地管理)
4、表空间状态:
读写(read write):
只读(read only):
ALTER TABLESPACE space_name READ ONLY;
引起检查点
数据只能进行查询
对象可以从表空间删除
删除对象步骤:
删除字典信息
释放空间
联机(online)
脱机(offline):
离线的表空间不能访问到其包含的数据。
第 61 页,共 106 页
…………………………………………………………Page 62……………………………………………………………
资源来自网络,仅供学习! Oracle 从入门到精通
系统表空间不能脱机;
有激活回滚的表空间不能脱机;
默认的临时表空间不能脱机;
先修改读写或只读,再修改在线或离线;
5、查看表空间信息:
表空间信息:DBA_TABLESPACES
VTABLESPACE
数据文件信息:DBA_DATA_FILES
VDATAFILE
临时文件信息:DBA_TEMP_FILES
VTEMPFILE
6、重定义表空间的大小
*、改变数据文件的大小:
使用 AUTOEXTEND 选项设置自动;
CREATE TABLESPACE space_name DATAFILE 'file_name。dbf' SIZE nM
AUTOEXTEND ON NEXT nM MAXSIZE nM;
不利于性能;
查看 DBA_DATA_FILES
使用 ALTER DATABASE 手动修改;
ALTER DATABASE DATAFILE ‘文件名’ RESIZE nM;
缩小是用限制的;
*、使用 ALTER TABLESPACE 命令增加数据文件;
ALTER TABLESPACE space_name ADD DATAFILE '文件名' SIZE nM;
均衡 I/O;
不能增加得太多;
只能增加不能删除;
7、操作表空间:
文件大小先设置为自动;
有计划地增加数据文件;
监控表空间;
按需求手动增加或减少表空间的大小;
8、移动数据文件:
*、 OPEN 状态下执行;
表空间必须离线;
目标数据文件必须存在;
ALTER TABLESPACE RENAME DATAFILE 'old_name'TO'new_name';
第 62 页,共 106 页
…………………………………………………………Page 63……………………………………………………………
资源来自网络,仅供学习! Oracle 从入门到精通
*、 MOUNT 状态下执行;
目标文件必须存在;
ALTER DATABASE RENAME FILE 'old_name'TO'new_name';
9、删除表空间:
不能删除的状态:是 SYSTEM 表空间;
有激活回滚段的表空间;
DROP TABLESPACE space_name INCLUDING CONTENTS AND DATAFILES 'CASCADE CONSTRAINTS';
19、存储结构和关系
数据块
区:空间扩展的单位
段和数据文件的关系:
组成段的所有区必须在段表空间的数据文件上;
1、段类型:
1。 表
2。 表分区:
分区表(partitioned table):分了多个区的表,单表多段,存储海量数据;
特点:
容量大;性能好;
分类:
范围
散列
列表:按单点的值进行分区;
3。 簇表(cluster):多表单段;
表和表有共同的字段,公用字段只存储一次;
减少存储空间,查询速度快;
全表扫描的时间增长;
4。 索引
5。 索引组织表(index…organized table):将字段索引和字段值放在一个表中,没有物
理的 rowid。
查找索引字段值非常快,其他字段的查询却非常慢;
单表单段;
6。 索引分区
7。 回滚段:保证事务回滚(存放原始数据);
8。 临时段
9。 大对象段
10。 签到表:多维表才会用到;
11。 引导段:初始化数据字典信息;
第 63 页,共 106 页
…………………………………………………………Page 64……………………………………………………………
资源来自网络,仅供学习! Oracle 从入门到精通
2、区:
是段在表空间上使用的连续空间
当段执行下列操作的时候分配区:
Created 段创建
Extended 段扩展
Altered 手动分配
当段执行下列操作的时候释放区:
Droped
Altered
Truncated
3、数据库块
最小的 I/O单位
有一个或多个操作系统块组成
可以在表空间创建时分配
DB_BLOCK_SIZE 参数设置默认块的大小
4、9I提供非标准块
数据库可以使用一个标准块和四个非标准块创建;
快的大小可以是 2KB 到32KB 之间的任意一个 2 的N 次方数;
好处:对数据的操作特性上,在做查询的时候减少 I/O 使用;
5、标准块大小
在数据库创建的时候通过 DB_BLOCK_SIZE parameter 参数设置。在数据库创建以后不能被修
改。
SYSTEM 和 TEMPORARY 临时表空间必须使用
DB_CACHE_SIZE 设置了标准块对应的数据高速缓存中 DEFAULT 池的大小
DEFAULT 池的大小:
最小是 4M 或 16M 默认为 48M
6、非标准块的大小
使用下列参数配置对应的数据高速缓存:
DB_2K_CACHE_SIZE FOR 2 KB BLOCKS
DB_4K_CACHE_SIZE FOR 4 KB BLOCKS
DB_8K_CACHE_SIZE FOR 8 KB BLOCKS
DB_16K_CACHE_SIZE FOR 16 KB BLOCKS
DB_32K_CACHE_SIZE FOR 32 KB BLOCKS
DB_nK_CACHE_SIZE 不允许使用与标准块对应的参数。
第 64 页,共 106 页
…………………………………………………………Page 65……………………………………………………………
资源来自网络,仅供学习! Oracle 从入门到精通
7、数据块的内容:
1。 块头:
自顶向下递增
事务槽:通过事务槽来表示锁定的事务,如果想执行事务必须先获得事务槽。
2。 空闲空间:没有碎片
3。 数据:自底向上递增
8、块的空间利用参数:
INITRANS 初始事务数(事务槽的个数:平常并发事务的个数)
MAXTRANS 最大事务数(最大事务槽数)
PCTFREE 为 UPDATE 保留空间的百分比;如果没有 UPDATE操作设置为零。
PCTUSED 标识数据块什么时候可以成为可用状态(FREELIST)
FREELIST 可用数据块状态
当块没有空间后,会构建新的块,并在原块里保留指针制向新块,但性能下降(行迁移)。
9、数据块管理:
设置好之后不能更改。
1、自动空间管理:(默