您的位置:寻梦网首页编程乐园Java天地JSP 专辑JSP001 HTML 离线版
Java 天地
JSP001 HTML 离线版
论坛精华 >> Oracle 专栏 >> A 8-4 Space Management in Tablespaces

由 macro 发布于: 2001-03-05 20:21

Cool

Dictionary-managed tablespaces:
-- Default technique
-- Free extents recorded in data dictionary tables

在字典中管理 (低于 8i 版本)

使用“在字典中管理”选项,
可以为表空间中创建的所有对象指定默认存储参数。

这种方法是表空间中空间管理的默认方法。它是 Oracle
8.1 发行版之前版本可用的唯一方法。

“在字典中管理”功能包含以下字段:

覆盖默认值

如果选中该框,可以编辑“默认存储”页上的所有字段。
如果未选中该框,则显示每一字段的默认值,
而且不能更改这些值。
该复选框仅在创建表空间期间启用。

注:在定义区大小时,
如果输入的值不是操作系统数据块大小的整数倍数,
则该输入值会自动增大到紧接它的下一个倍数。
如果不输入值,则默认值保持不变。
如果默认值未明确指定,则该字段内显示“默认值”。

区:区可以控制为对象分配空间的方式。指定区大小后
,即会分配一定数量的连续 Oracle 块。例如
,如果将区大小指定为 10K 而块大小为 2K,则该区由 5
个 Oracle 块组成。

初始大小

对象创建后第一个区的大小。输入初始区大小
。请使用单位按钮来指定 KB 或 MB。如果不指定大小
,则默认值为 5 个 Oracle 数据库块的大小。

下一区大小

对象需要更多空间来存储数据时,
要分配的下一个区的大小。输入下一个区的大小
。请使用单位按钮来指定 KB 或 MB。如果不指定大小
,则默认值为 5 个 Oracle 数据库块的大小。

最小大小

创建对象后,将使用该值的倍数调整所有区的大小。

要使表空间中的碎片减至最少,您可以设置该值。
输入最小大小的值。如果没有指定值,则默认值为 0。

增量

每个区相对于上一个区的增长百分比 (在第二个区之后)。
输入一个增长百分比值。如果没有指定值,则默认值为
50。

最小数量

在表空间中创建对象时可分配的总区数。输入最小区数。
如果没有指定值,则默认值为 1。

最大数量

可分配给表空间中所创建对象的最大区数。

·无限制:如选定该选项,
创建的区数将只受表空间中连续空闲空间数量的限制。

·值:选定该选项,可以指定最大区数。如果没有指定值
,则应用默认值。默认值和最大值取决于数据块大小。

启用事件记录

·是:如果启用事件记录,将会创建重做日志。
该操作所用时间比不启用事件记录所用时间长,
但您可以在遇到意外失败的情况下恢复更新。

·否:如果不启用事件记录,则由于不创建重做日志,
操作将会占用较短的时间。因为未创建重做日志,
在遇到意外失败的情况下您无法恢复更新

Locally managed tablespaces:
-- Free extents recorded in bitmap
-- Each bit corresponds to a block or group of blocks
-- Bit value indicates free or used

本地管理 (8i 功能)

管理本身各区的表空间在每个数据文件中保留一个位图,
用来跟踪记录该数据文件中块的空闲状态或使用状态。
位图中的每个位对应一个数据块或一组数据块。
当一个区被分配或空闲并可以再使用时,Oracle
会更改该位图的各个值,显示数据块的当前状态。
因为这些更改不更新数据字典中的表,所以不会生成回退信息 (特殊情况除外,
如表空间限额信息)。

与字典管理的表空间相比,
本地管理的表空间具有以下优点:

·对区进行本地管理,可以避免递归的空间管理操作。
而在字典管理的表空间中,
如果区中空间的占用或释放将导致回退段或数据字典表中空间的占用或释放操作,就会发生递归的空间管理操作。

·对区进行本地管理,
能够自动跟踪记录临近空闲空间的情况,
避免进行空闲区的合并操作。

本地管理的区的大小可由系统自动确定。或者,
在本地管理的表空间中所有区的大小可以相同。

本地管理功能包括以下选项:

自动分配

如果选中该框,则区大小由系统自动确定。由于 Oracle
可确定各区的最佳大小,所以区大小是可变的。

统一

如果选中该框,则可以指定区大小,也可使用默认值 (1
MB)。

大小

可分配给对象的区大小。

输入区大小。指定 KB 或 MB。

启用事件记录

·Yes:如果启用事件记录,将会创建重做日志。
该操作所用时间比不启用事件记录所用时间长,
但您可以在遇到意外失败的情况下恢复更新。

·No:如果不启用事件记录,则由于不创建重做日志,
操作将会占用较短的时间。因为未创建重做日志,
在遇到意外失败的情况下您无法恢复更新


__________________

谢谢你抽时间看我的发言,

Macro Zeng

==================================

我正在学习 Oracle ,坚持每天写读书笔记


由 macro 发布于: 2001-03-05 20:27

Locally Managed Tablespaces

eg.


CREATE TABLESPACE "JSP001"
NOLOGGING
DATAFILE '/opt/oracle/oradata/dbu80/jsp001a.dbf' SIZE 20M REUSE,
'/opt/oracle/oradata/dbu80/jsp001b.dbf' SIZE 40M AUTOEXTEND
ON NEXT 500K MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL


1.Reduced recursive space management
2.Reduced contention on data dictionary tables
3.No rollback generated
4.No coalescing required
__________________

谢谢你抽时间看我的发言,

Macro Zeng

==================================

我正在学习 Oracle ,坚持每天写读书笔记



资料来源: JSP001.com