ORACEL空间管理实验(九)ORACEL空间管理汇总

索引和表的扫描/闪回时的块管理方式

1.补充--关于dba_objects中的 DATA_OBJECT_ID 和OBJECT_ID字段:

truncate table test1;

alter table test1 move tablespace tp2;

select object_id,data_object_id from dba_objects where object_name='TEST1';

OBJECT_ID DATA_OBJECT_ID

---------- --------------

22959          23144

truncate和移动到不同表空间时DATA_OBJECT_ID会变化。

但是当表内无数据时,truncate不会导致DATA_OBJECT_ID会加一。

2.各种数据读取方式涉及的I/O

详细描述全表扫描是如何完成的(只描述I/O相关)

I. 从数据字典dba_segments找到 段头,

段头:在段头读取两样信息:高高水点、Extent Map(区地图)(Auxillary Map)

II. 根据段头中的Auxillary Map,依次读每个区的数据。

描述索引Index RANGE SCAN的流程

Root块的块号=索引段段头块号+1

I. 查找seg$等数据字典,确定索引段段头位置

II. 段头块号加1,得到Root块

描述索引Index Full SCAN的流程

等于索引范围扫描

有序,为了“顺序”,不能多块读

索引Index Fast Full SCAN的流程

等同于表的全扫描

I. 段头:在段头读取两样信息:高高水点、Extent Map(区地图)(Auxillary Map)

II. 根据段头中的Auxillary Map,依次读每个区的数据。

无序,可以多块读

3.打开闪回时DROP和TRUNCATE的不同块管理

未打开闪回时没有不同。

TRUNCATE和DROP-打开闪回时,具体做了哪些操作???

DROP-打开闪回时:改数据字典表中相应字段tab$,seg$,ext$,col$,将表系统命名bin$开头的,空间并未释放。打开闪回时此时查询可用区的方法是全部扫描位图区。附带会有删除索引约束触发器等,也可能会慢。

此时,可以查询到闪回DROP之前的数据。

TRUNCATE :修改表所有区对应的二进制位--位图区变为1变为0

实验一:

使用游标,exec open :x时先进行解析,print :x时提取数据

BYS@ bys3>var x refcursor

BYS@ bys3>exec open :x for select count(*) from test6;

PL/SQL procedure successfully completed.

BYS@ bys3>print :x

 COUNT(*)

----------

        2

BYS@ bys3>exec open :x for select count(*) from test6;

PL/SQL procedure successfully completed.

此时在会话2执行BYS@ bys3>drop table test6;

在会话1查看游标

BYS@ bys3>print :x

 COUNT(*)

----------

        2

本栏目更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/database/Oracle/

因为开启回收站时,DROP 表只是将表改名-修改数据字典表tab$,seg$,ext$,在数据文件中并未改变数据块头OBJ的、标记,所以可以查到

#######

实验二:

会话2把表闪回DROP

BYS@ bys3>flashback table test6 to before drop;

Flashback complete.

会话一:执行游标:

BYS@ bys3>exec open :x for select count(*) from test6;

PL/SQL procedure successfully completed.

会话二:

BYS@ bys3>truncate table test6;

Table truncated.

会话一:查询游标

BYS@ bys3>print :x

ERROR:

ORA-08103: object no longer exists

no rows selected

报错是因为:TRUNCATE删除数据,修改数据字典表,同时将数据块头的OBJ清除,所以查询时报对象不存在。

时间: 2024-10-28 23:54:43

ORACEL空间管理实验(九)ORACEL空间管理汇总的相关文章

ORACLE空间管理实验(二) 区的管理与分配

内容基于LMT管理的表空间,字典管理已经不用了. 本篇主要验证了这些问题: 1.LMT管理的表空间,区的分配有两种方法: 系统分配和UNIFORM固定大小-->见实验 2.验证Oracle找寻可用区的方式: 从数据文件开头的位图块中获得可用区的信息,DUMP时可见FIRST:3这种,表示已经使用3个区.详见:点击打开链接 3.在表空间中建第一个表(注意,第一个),这个表从数据文件的第几个块开始使用 11G下,LMT管理的表空间,数据文件中0-127号块做位图区域用,第128个块才开始存放表的数据

ORACLE空间管理实验2:区的管理与分配

  内容基于LMT管理的表空间,字典管理已经不用了. 本篇主要验证了这些问题: 1.LMT管理的表空间,区的分配有两种方法: 系统分配和UNIFORM固定大小-->见实验 2.验证Oracle找寻可用区的方式: 从数据文件开头的位图块中获得可用区的信息,DUMP时可见FIRST:3这种,表示已经使用3个区.详见:点击打开链接 3.在表空间中建第一个表(注意,第一个),这个表从数据文件的第几个块开始使用 11G下,LMT管理的表空间,数据文件中0-127号块做位图区域用,第128个块才开始存放表的

监控和管理Oracle UNDO表空间的使用

    对Oracle数据库UNDO表空间的监控和管理是我们日常最重要的工作之一,UNDO表空间通常都是Oracle自动化管理(通过undo_management初始化参数确定):UNDO表空间是用于存储DML操作的前镜像数据,它是实例恢复,数据回滚,一致性查询功能的重要组件:我们常常会忽略对它的监控,这会导致UNDO表空间可能出现以下问题:1).空间使用率100%,导致DML操作无法进行.2).告警日志中出现大量的ORA-01555告警错误.3).实例恢复失败,数据库无法正常打开. 一.对Or

主库USERS表空间不足 通过RENAME解救空间紧缺的DG系统

周日为了挽救主库USERS表空间不足临时扩了20G表空间,导致DG库的/bak/datafile/目录不足. 日志应用到扩表空间的归档就崩溃,同时更悲剧的是空间不足导致SYSTEM表空间写入也发生了异常. 对于该问题首先想到系统级别扩容,通过系统级别的resize2fs经过确认无法扩容.通过分区合并由于没有相邻的分区也无法进行,只有采用ORACLE层面的方式.我们的DG系统因为空间紧缺数据文件写到了两个不同的文件夹,既然数据可以写到两个目录,肯定可以写到三个目录,会不会是控制文件里有定义,马上创

谈谈免费空间 为什么有人提供免费空间

中介交易 SEO诊断 淘宝客 云主机 技术大厅 免费空间.免费域名.免费邮箱.免费网盘.免费相册,这些耳熟能详的名词,相信大家都不陌生.而且可以说,以上提到的这些免费资源,所有站长都使用过和经历过. 我们为什么要使用免费空间,因为我们有这个需求.使用免费空间的对象是谁,或者说我们主要用免费空间来做什么呢?据观察,用免费空间的对象主要是:刚接触互联网的站长.对网站感兴趣的在校生.需用免费空间做网站测试的人员.以及一些经济紧缺的人员.大部分新站长在正式购买空间前,都会用"免费空间"打头阵,

WEBSITEZ为您提供100M-500M的全能型免费空间服务_免费全能空间

以下信息来自网络,未得到本站的确认,请自行分辨.请看以下提供商的介绍说明:] 免费空间申请要求 以下内容为当时演示为例!!具体情况和改动以本站数据为准!谢谢合作空间线路: 电信网通智能线路关于申请空间的说明::1:虽然现在外面没有任何要求的免费空间很多,但是我们有些小要求,就是通过论坛发帖获取免费空间!目的吗!当然是希望大家多多支持我们的网站2:我们保证在我们日后的免费空间内不提供任何广告3:我们将会保证我们的免费空间最起码可用一年以上.4:我们将会努力保证我们服务器的安全!使服务器不会因为安全

浅析mysql 共享表空间与独享表空间以及他们之间的转化_Mysql

innodb这种引擎,与MYISAM引擎的区别很大.特别是它的数据存储格式等.对于innodb的数据结构,首先要解决两个概念性的问题: 共享表空间以及独占表空间.什么是共享表空间和独占表空间共享表空间以及独占表空间都是针对数据的存储方式而言的.共享表空间:  某一个数据库的所有的表数据,索引文件全部放在一个文件中,默认这个共享表空间的文件路径在data目录下. 默认的文件名为:ibdata1  初始化为10M.独占表空间:  每一个表都将会生成以独立的文件方式来进行存储,每一个表都有一个.frm

如何Shrink Undo表空间,释放过度占用的空间_oracle

环境:OS:Red Hat Enterprise Linux AS release 4 (Nahant)DB:Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production 一台Oracle10gR2数据库报出如下错误:ORA-1653: unable to extend table SYSMAN.MGMT_SYSTEM_ERROR_LOG by 8 in  tablespace SYSAUX ORA-1653: un

扬州今明网络为提供50M免费html+FTP空间服务_免费FTP空间

扬州今明网络为提供50M免费ASP空间服务. 即时申请开通,速度很不错,可绑定自己的域名,送二级域名.带控制面板,空间支持HTML.ASP.FSO.ACCESS等,支持FTP上传管理方式. 他们的声明:扬州今明网络推出50M免费空间  为了感谢广大网友对扬州今明网络的大力支持,现今明网络数据有限公司推出50M免费空间. 请各位网友遵照中华人民共和国的相关法律合理合法的使用此免费空间,谢谢! 申请步骤: 1.注册一个会员 2.点击申请免费空间 原文来自:中国免费网(www.516.in www.f

免费空间-最新免费php网站空间

blogger老牌可绑米免费博客(Google旗下) Blogger功能强大.有很多模板可供选择(还可自定义风格模板),能够方便的整合AdSense帐户来投放广告赚钱! 地址:http://www.blogger.com 升华网络50M-200M免费空间 支持asp/php 升华网络50M-200M免费空间 支持asp/php 支持HTML/SHTML/ASP/PHP脚本,支持ACCESS/MYSQL数据库 不限制网络流量,不限制CPU资源分配,IIS连接量/Apache连接量:50 100 2