十八、dbms_repair(用于检测,修复在表和索引上的损坏数据块)
1、概述
作用:用于检测,修复在表和索引上的损坏数据块.
2、包的组成
1)、admin_tables
语法:dbms_repair.admin_tables(table_name
in varchar2,table_type in binary_integer,action in
binary_integer,tablespace in varchar2 default null);
其中table_name用于指定要处理的表名,必须要指定前缀orphan或repair,table_type指定表类型(orphan或repair_table),
action指定要执行的管理操作(建立表create_action,删除所有行purge_action,删除表drop_action),tablespace用于指定表所在的表空间。
例子:
exec dbms_repair.admin_tables('repair_table',dbms_repair.repair_table,dbms_repair.create_action,'system');
exec dbms_repair.admin_tables('orphan_table',dbms_repair.orphan_table,dbms_repair.create_action,'system');
上面例子执行第一条语句后,会建立修复表repair_table,并且该修复表用于存放损坏数据块的信息;执行第二条语句后,会建立孤表orphan_table,该表用于存放指向损坏数据块的索引入口信息。
2)、check_object
作用:用于检查特定对象,并将损坏信息填写到修复表中。
语法:dbms_repair.check_object(schema_name
in varchar2,object_name in varchar2,partition_name in varchar2 default
null,object_type in binary_integer default tables_object,
repair_table_name
in varchar2 default 'repair_table',flags in binary_integer default
null,relative_fno in binary_integer default null,
block_start in binary_integer default null,block_end in binary_integer default null,corrupt_count out binary_integer);
其中schema_name指定要检查对象的方案名,object_name指定要检查的对象名,partition_name用于指定要检查的分区名,object_type指定要检查对象的类型(table_object或index_object),
repair_table_name指定要被填写的修复表,flags为将来使用而保留,relative_fno指定相对文件号,block_start指定要检查的起始块号,block_end指定要检查的结束块号,
corrupt_count用于返回损坏的块个数。
例子:
var corr_count number;
exec dbms_repair.check_object('scott','emp',corrupt_count=>:corr_count);
print corr_count
3)、dump_orphan_keys
作用:用于报告指向损坏数据块行的索引入口,并且会将相应索引入口的信息插入到孤表中。
语法:dbms_repair.dump_orphan_keys(schema_name in varchar2,object_name in varchar2,
partition_name in varchar2 default null,object_type in binary_integer default index_object,
repair_table_name in varchar2 default 'repair_table',orphan_table_name in varchar2 default 'orphan_keys_table',
flags in binary_integer default null,key_count out binary_integer);
其中object_type指定对象类型(index_object),repair_table_name指定修复表名,orphan_table_name指定孤表名,key_count用于返回索引入口个数。
例子:
var key_count number
exec dbms_repair.dump_orphan_keys('scott','pk_emp',orphan_table_name=>'orphan_table',key_count=>:key_count);
print key_count
4)、fix_corrupt_blocks
作用:修复被损坏的数据块,这些被损坏的数据块是在执行了check_object之后生成的。
语法:dbms_repair.fix_corrupt_blocks(schema_name in varchar2,object_name in varchar2,partition_name in varchar2 default null,
object_type in binary_integer default table_object,repair_table_name in varchr2 default 'repair_table',
flags in binary_integer default null,fix_count out binary_integer);
其中object_type指定对象类型(table_object),fix_count返回修复的数据块个数。
例子:
var fix_count number
exec dbms_repair.fix_corrup_block('scott','emp',fix_count=>:fix_count);
print fix_count
5)、rebuild_freelists
作用:用于重建指定对象的空闲列表
语法:dbms_repair.rebuild_freelists(schema_name in varchar2,object_name in varchar2,partition_name in varchar2 default null,
object_type in binary_integer default table_object);
其中object_type指定对象类型(table_object)。
例子:exec dbms_repair.rebuild_freelists('scott','emp');
6)、skip_corrupt_blocks
作用:用于指定在扫描对象(表或索引)时跳过损坏块。
语法:dbms_repair.skip_corrupt_blocks(schema_name
in varchar2,object_name in varchar2,object_type in binary_integer
default table_object,
flag in binary_integer default skip_flag);
其中object_type指定对象类型(table_object),flags指定是否要跳过损坏块(skip_flao跳过,no_skip_flag不跳过)
例子:exec dbms_repair.skip_corrupt_blocks('scott','emp');
7)、segment_fix_status
作用:用于修复位图入口的损坏
语法:dbms_repair.segment_fix_status(segment_owner
in varchar2,segment_name in varchar2,segment_type in binary_integer
default table_object,
file_number in binary_integer default null,block_number in binary_integer default null,
status_value in binary_integer default null,partition_name in varchar2 default null);
其中segment_owner指定段所有者,segment_name指定段名,segment_type指定段类型,file_number指定数据块所在的相对文件号,
block_number指定数据块号,status_value指定块状态值(1:全块,2:0~25%,3:25%~50%,4:50%~75%,5:75%~100%)
partition_name指定分区名。
例子:exe dbms_repair.segment_fix_status('sys','mytab');
十八、dbms_repair(用于检测,修复在表和索引上的损坏数据块)的更多相关文章
- HDFS源码分析数据块汇报之损坏数据块检测checkReplicaCorrupt()
无论是第一次,还是之后的每次数据块汇报,名字名字节点都会对汇报上来的数据块进行检测,看看其是否为损坏的数据块.那么,损坏数据块是如何被检测的呢?本文,我们将研究下损坏数据块检测的checkReplic ...
- 十八、oracle查看、扩展表空间及linux服务器硬盘容量大小查看
/*备注:表空间是数据库的逻辑组成部分从物理上将:数据库数据存放在数据文件中从逻辑上将:数据库则是存放在表空间中表空间由一个或是多个数据文件组成*/ --1.查看用户下面的所有的表SELECT * F ...
- [Python爬虫] 之十八:Selenium +phantomjs 利用 pyquery抓取电视之家网数据
一.介绍 本例子用Selenium +phantomjs爬取电视之家(http://www.tvhome.com/news/)的资讯信息,输入给定关键字抓取资讯信息. 给定关键字:数字:融合:电视 抓 ...
- Oracle索引梳理系列(五)- Oracle索引种类之表簇索引(cluster index)
版权声明:本文发布于http://www.cnblogs.com/yumiko/,版权由Yumiko_sunny所有,欢迎转载.转载时,请在文章明显位置注明原文链接.若在未经作者同意的情况下,将本文内 ...
- Oracle 学习总结 - 表和索引的性能优化
表的性能 表的性能取决于创建表之前所应用的数据库特性,数据库->表空间->表,创建数据库时确保为每个用户创建一个默认的永久表空间和临时表空间并使用本地管理,创建表空间设为本地管理并且自动段 ...
- 第一百八十五节,jQuery,Ajax 表单插件
jQuery,Ajax 表单插件 学习要点: 1.核心方法 2.option 参数 3.工具方法 传统的表单提交,需要多次跳转页面,极大的消耗资源也缺乏良好的用户体验.而这款 form.js 表单的 ...
- 测开之路一百四十八:WTForms表单验证
使用WTForms表单验证,可以在数据建模时就设置验证信息和错误提示 创建模型时,设置验证内容,如必填.格式.长度 from flask_wtf import Formfrom wtforms imp ...
- ComicEnhancerPro 系列教程十八:JPG文件长度与质量
作者:马健邮箱:stronghorse_mj@hotmail.com 主页:http://www.comicer.com/stronghorse/ 发布:2017.07.23 教程十八:JPG文件长度 ...
- 学好C++必须要注意的十八个问题
转自 http://blog.chinaunix.net/uid-7396260-id-2056691.html 一.#include "filename.h"和#i nclud ...
随机推荐
- spark 作业提交
kafka-topics.sh --describe --zookeeper xxxxx:2181 --topic testkafka-run-class.sh kafka.tools.GetOffs ...
- Docker+.Net Core 的那些事儿-3.创建容器并运行
1.根据镜像运行容器 上篇文章建立了一个镜像: 我们以此开始,执行以下命令: docker run -d -p 5000:5000 hwapp:latest 如果返回以上结果表示建立成功. 此时如果你 ...
- Java应用开发中的SQL注入攻击
1. 什么是SQL注入攻击? SQL注入攻击是黑客对数据库进行攻击的常用手段之一.随着B/S模式应用开发的发展,使用这种模式编写应用程序的程序员越来越多.但是由于程序员的水平及经验参差不齐,相当一部分 ...
- Linux查找含有某字符串的文本文件
转自:http://www.cnblogs.com/wangkongming/p/4476933.html 如果你想在当前目录下 查找"hello,world!"字符串,可以这样 ...
- python3_requests模块详解
1.模块说明 requests是使用Apache2 licensed 许可证的HTTP库. 用python编写. 比urllib2模块更简洁. Request支持HTTP连接保持和连接池,支持使用co ...
- [转]总结一下CSS中的定位 Position 属性
在CSS中,Position 属性经常会用到,主要是绝对定位和相对定位,简单的使用都没有问题,尤其嵌套起来,就会有些混乱,今记录总结一下,防止久而忘之. CSS position 属性值: absol ...
- 关于Linq的对List<实体>去掉重复ID的一个小例子!
注意 下面的代码只要ID相同(即使其他的不相同)都会过滤掉,简单来讲就是过滤掉ID相同的实体,如果ID相同,其他属性取第一个的值 List<Abc> list = new List< ...
- 起源游戏临时实体(Temp Entity)
如何查看实体 https://wiki.alliedmods.net/Temp_Entity_Lists_(Source) 这里是部分游戏的临时实体列表 # 还可以通过在游戏内输入来获取游戏的临时实体 ...
- MySQL优化具体
1. 查询与索引优化分析 在优化MySQL时,通常需要对数据库进行分析,常见的分析手段有慢查询日志,profiling分析,EXPLAIN分析查询,以及show命令查询系统状态及系统变量,通过定位分析 ...
- [BZOJ1026]windy数
Description windy定义了一种windy数.不含前导零且相邻两个数字之差至少为2的正整数被称为windy数. windy想知道,在A和B之间,包括A和B,总共有多少个windy数? In ...