返回顶部
首页 > 资讯 > 数据库 >怎么使用DBV
  • 816
分享到

怎么使用DBV

2024-04-02 19:04:59 816人浏览 八月长安
摘要

这篇文章主要介绍“怎么使用DBV”,在日常操作中,相信很多人在怎么使用DBV问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么使用DBV”的疑惑有所帮助!接下来,请跟着小编一

这篇文章主要介绍“怎么使用DBV”,在日常操作中,相信很多人在怎么使用DBV问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么使用DBV”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

一、简介

dbverify工具的主要目的是为了检查数据文件的物理结构,包括数据文件是否损坏,是否存在逻辑坏块,以及数据文件中包含何种类型的数据。

二、原理

DBV 检查以确保oracle数据文件:

  • 数据文件有一个有效的块头

  • 每个数据块在文件中有一个特殊的“wrapper”标识块,这“wrapper”是为了校验正确性

  • 数据 (表) 和索引块是内部一致的

  • 从8.1.6起:多块类型的内部一致性(如回滚segment blocks)

三、DBV 限制

  1. DBV 只能检测可以被 'ANALYZE TABLE .. VALIDATE STRUCTURE CASCADE'命令检测的块,像索引、表错误等

  2. 这个工具只能用于对数据文件。它不能用来验证归档文件或控制文件。

  3. 你可以使用DBV验证自动储存管理(ASM)文件。

    然而,数据库必须打开,选择用户名已使用

    例如:dbv file=+DG1/ORCL/datafile/system01.dbf userid=system/sys

    DBV检查用户名/密码为ASM文件管理,当数据库不是open状态则不可能。

  4. 在大多数版本的UNIX,DBV 基于文件扩展名。DBV 要求datafile 必须有扩展名

    如果裸设备没有扩展名,可以创建一个link,然后在进行dbv 检查。
    例如:ln -s /dev/rdsk/mydevice /tmp/mydevice.dbf

  5. 对于原始设备,你应该使用“END”参数,以避免运行结束的文件空间的结束。
    例如:"dbv FILE=/dev/rdsk/r1.dbf END=<last_block_number>"

    1. 用 file#=5 找到 END 值

      select BYTES/8192 from v$datafile where FILE#=5;
      BYTES/8192
      ----------
      5120
    2. dbv file=/dev/rdsk/r1.dbf blocksize=8192 END=5120

  6. DBV可能无法扫描数据文件大于2GB同时报告”dbv-100”。如果你得到了dbv-100 错误首先请检查文件大小。

  7. DBV 从 8.1.6 起如果从 Oracle 7 迁移,基于回滚段块会报虚假错误。见错误:1359160 和注意事项:118008.1。

  8. DBV only checks a block in isolation -it does not know if the block is part of an existing object or not.

    DBV 只检查这个块,它不知道这个块是否是一个已经存在的对象的一部分。

  9. DBV 在 SCO Unix 上是不可用的,另见 Bug:814249

  10. DBV 是向下兼容的,不可用于高版本

四、DBV 示例

  1. 验证ASM 上的文件

    1. 查询数据文件路径
      select file_name from dba_data_Files;

    2. dbv check ASM 上的文件,注意添加userid参数
      [oracle@rac2 ~]$ dbv file='+DATA/anqing/datafile/undotbs02.dbf' userid=sys/oracle

  2. 验证普通datafile

    1. 实例没有启动的情况下进行datafile 验证
      这种情况下,db没有启动,要进入数据文件的存放目录后在运行该命令,不然会报找不到数据文件。
      dbv file=undotbs01.dbf

  3. DB open 状态,验证指定段

    1. 可以通过sys_dba_segs表获取tablespace_id,header_file, header_block三个字段,他们分别对应tsn,relfile,

      block.
      select tablespace_id,header_file, header_block from sys_dba_segs where segment_name = 'TA';
      TABLESPACE_ID HEADER_FILE HEADER_BLOCK
      ------------- ----------- ------------
                 0           1        71513
    2. 语法:dbv USERID=username/passWord SEGMENT_ID=tsn.relfile.block

      [oracle@rac2 ~]$ dbv segment_id=0.1.71513 userid=system/oracle

    注:这种方式要求数据库处于打开的状态。

  4. 验证数据拷贝
    由于dbv可以在实例关闭情况下验证数据文件,因此dbv也可以验证数据文件的拷贝。这个拷贝指的是通过RMAN的COPY命令或者操作系统命令cp拷贝的数据文件,而不是RMAN生成的备份集格式。
    通过比较2个dbv 的结果来比较datafile 的copy

    [oracle@node1 ~]$ dbv file='/oradata/orcl/test01.dbf' userid=sys/oracle
    DBVERIFY: Release 11.2.0.4.0 - Production on Wed Aug 17 15:15:52 2016
    Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.
    DBVERIFY - Verification starting(开始验证) : FILE = /oradata/orcl/test01.dbf
    DBVERIFY - Verification complete(验证完成)
     
    Total Pages Examined(检查的页总数)         : 655360
    Total Pages Processed (Data) 处理的页总数 (数据): 261936
    Total Pages Failing   (Data) 失败的页总数 (数据): 0
    Total Pages Processed (Index)处理的页总数 (索引): 0
    Total Pages Failing   (Index)失败的页总数 (索引): 0
    Total Pages Processed (Other)处理的页总数 (其它): 876
    Total Pages Processed (Seg)处理的总页数 (段)  : 3
    Total Pages Failing   (Seg)失败的总页数 (段)  : 0
    Total Pages Empty空的页总数            : 392545
    Total Pages Marked Corrupt标记为损坏的总页数   : 0
    Total Pages Influx流入的页总数           : 0
    Total Pages Encrypted加密的总页数        : 0
    Highest block SCN最高块 SCN            : 117357549 (0.117357549)

到此,关于“怎么使用DBV”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

您可能感兴趣的文档:

--结束END--

本文标题: 怎么使用DBV

本文链接: https://lsjlt.com/news/63588.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 怎么使用DBV
    这篇文章主要介绍“怎么使用DBV”,在日常操作中,相信很多人在怎么使用DBV问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么使用DBV”的疑惑有所帮助!接下来,请跟着小编一...
    99+
    2024-04-02
  • Oracle中DBV命令行工具如何使用
    这期内容当中小编将会给大家带来有关Oracle中DBV命令行工具如何使用,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。特点:以只读的方式打开数据文件,在检查过程中不会修改...
    99+
    2024-04-02
  • DBV冷备份的校验和恢复方法是什么
    这篇文章主要讲解了“DBV冷备份的校验和恢复方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“DBV冷备份的校验和恢复方法是什么”吧!校验可用性校验的...
    99+
    2024-04-02
  • myeclipse怎么使用
    myeclipse怎么使用?首先双击打开软件,主界面如图二所示然后点击文件---->新建---->Java项目在项目名那里输入你要新建的项目名称,名称随意。名称输入完之后直接点击完成...
    99+
    2022-02-23
    java教程 myeclipse
  • 怎么使用SQLite3
    这篇文章主要讲解了“怎么使用SQLite3”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么使用SQLite3”吧!开始使用这个功能强大且通用的数据库吧。应...
    99+
    2024-04-02
  • 怎么使用IndexedDB
    这篇文章主要讲解了“怎么使用IndexedDB”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么使用IndexedDB”吧!深入研究IndexedDB AP...
    99+
    2024-04-02
  • 怎么使用hanganalyze
    本篇内容主要讲解“怎么使用hanganalyze”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用hanganalyze”吧!hanganalyze 和sy...
    99+
    2024-04-02
  • 怎么使用pg_rewind
    本篇内容主要讲解“怎么使用pg_rewind”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用pg_rewind”吧!pg_rewind  是po...
    99+
    2024-04-02
  • 怎么使用RMAN
    本篇内容介绍了“怎么使用RMAN”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!RMAN的备份脚本可以存储在...
    99+
    2024-04-02
  • 怎么使用MindMaster
    本篇内容主要讲解“怎么使用MindMaster”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用MindMaster”吧!MindMaster可谓是思维导图...
    99+
    2024-04-02
  • Redis怎么使用
    这篇文章给大家分享的是有关Redis怎么使用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、Redis简介 什么是Redis?全称:REmote DIctionary Serv...
    99+
    2024-04-02
  • logminer怎么使用
    这篇文章主要讲解了“logminer怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“logminer怎么使用”吧! Log...
    99+
    2024-04-02
  • MySQL怎么使用
    这篇文章主要介绍MySQL怎么使用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一、SQL速成  以下是一些重要的SQL快速参考,有关SQL的语法和在标准SQL上增加的特性,请查询M...
    99+
    2024-04-02
  • 怎么使用NTVS
    本篇内容介绍了“怎么使用NTVS”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!就在你认为Redmond不可...
    99+
    2024-04-02
  • 怎么使用Json
    本篇内容主要讲解“怎么使用Json”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用Json”吧!Json一般用在少量的数据处理。因为格式简单,操作方便,而...
    99+
    2024-04-02
  • 怎么使用Dart
    本篇内容介绍了“怎么使用Dart”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!下面是简单的Hello Wo...
    99+
    2024-04-02
  • section怎么使用
    今天小编给大家分享一下section怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。...
    99+
    2024-04-02
  • 怎么使用Sass
    这篇“怎么使用Sass”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“怎么使用Sass”文章...
    99+
    2024-04-02
  • 怎么使用Binlog
    本篇内容介绍了“怎么使用Binlog”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!不知道是否你还在为下面的...
    99+
    2024-04-02
  • 怎么使用parse
    这篇文章主要讲解了“怎么使用parse”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么使用parse”吧!1. 真实案例拿一个最近使用 parse 的真实...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作