这里用大家随处可见的(除了extent分布的x$kffxp需要百度和google外),其余都是文档中有详细记载的常用ASM视图来实现同样功能:

下面的用于从ASM中备份数据文件头:

SQL> set pages 9999
SQL> col "backup(dd) fileheader from asm" for a200
SQL> SELECT 'dd if='||d.path||' of=&backup_path/'||e.GROUP_KFFXP||'_'||e.DISK_KFFXP||'_'||a.file_number||'.asm'||' count=1 conv=notrunc bs='||G.ALLOCATION_UNIT_SIZE||' skip='||e.AU_KFFXP "backup(dd) fileheader from asm" FROM x$kffxp e, v$asm_file f, v$asm_alias a, v$asm_disk d, V$ASM_DISKGROUP G WHERE e.number_kffxp=a.file_number and e.GROUP_KFFXP=a.GROUP_NUMBER and f.group_number=a.group_number and f.file_number=a.file_number and e.DISK_KFFXP=d.DISK_NUMBER and e.GROUP_KFFXP=d.GROUP_NUMBER and a.SYSTEM_CREATED='Y' and f.type='DATAFILE' and e.XNUM_KFFXP=0 AND D.GROUP_NUMBER=G.GROUP_NUMBER;
Enter value for backup_path: /tmp
old 1: SELECT 'dd if='||d.path||' of=&backup_path/'||e.GROUP_KFFXP||'_'||e.DISK_KFFXP||'_'
new 1: SELECT 'dd if='||d.path||' of=/tmp/'||e.GROUP_KFFXP||'_'||e.DISK_KFFXP||'_'

backup(dd) fileheader from asm
-------------------------------------------------------------------------------------------
dd if=/dev/asm-disk1 of=/tmp/1_0_260.asm count=1 conv=notrunc bs=1048576 skip=700
dd if=/dev/asm-disk1 of=/tmp/1_0_261.asm count=1 conv=notrunc bs=1048576 skip=749
dd if=/dev/asm-disk1 of=/tmp/1_0_263.asm count=1 conv=notrunc bs=1048576 skip=1101
dd if=/dev/asm-disk2 of=/tmp/1_1_262.asm count=1 conv=notrunc bs=1048576 skip=978
dd if=/dev/asm-disk2 of=/tmp/1_1_259.asm count=1 conv=notrunc bs=1048576 skip=103

下面的用于使用bbed修改文件头后放回到ASM中:
SQL> set linesize 200
SQL> set pages 9999
SQL> col"Restore(dd) fileheader to asm" for a200
SQL> SELECT 'dd of='||d.path||' if=&backup_path/'||e.GROUP_KFFXP||'_'||e.DISK_KFFXP||'_'||a.file_number||'.asm'||' count=1 conv=notrunc bs='||G.ALLOCATION_UNIT_SIZE||' seek='||e.AU_KFFXP "Restore(dd) fileheader to asm" FROM x$kffxp e, v$asm_file f, v$asm_alias a, v$asm_disk d, V$ASM_DISKGROUP G WHERE e.number_kffxp=a.file_number and e.GROUP_KFFXP=a.GROUP_NUMBER and f.group_number=a.group_number and f.file_number=a.file_number and e.DISK_KFFXP=d.DISK_NUMBER and e.GROUP_KFFXP=d.GROUP_NUMBER and a.SYSTEM_CREATED='Y' and f.type='DATAFILE' and e.XNUM_KFFXP=0 AND D.GROUP_NUMBER=G.GROUP_NUMBER;
Enter value for backup_path: /tmp
old 1: SELECT 'dd of='||d.path||' if=&backup_path/'||e.GROUP_KFFXP||'_'||e.DISK_KFFXP||'_'
new 1: SELECT 'dd of='||d.path||' if=/tmp/'||e.GROUP_KFFXP||'_'||e.DISK_KFFXP||'_'
Restore(dd) fileheader to asm
---------------------------------------------------------------------------------------
dd of=/dev/asm-disk1 if=/tmp/1_0_258.asm count=1 conv=notrunc bs=1048576 seek=45
dd of=/dev/asm-disk1 if=/tmp/1_0_260.asm count=1 conv=notrunc bs=1048576 seek=700
dd of=/dev/asm-disk1 if=/tmp/1_0_261.asm count=1 conv=notrunc bs=1048576 seek=749
dd of=/dev/asm-disk1 if=/tmp/1_0_263.asm count=1 conv=notrunc bs=1048576 seek=1101
dd of=/dev/asm-disk2 if=/tmp/1_1_262.asm count=1 conv=notrunc bs=1048576 seek=978
dd of=/dev/asm-disk2 if=/tmp/1_1_259.asm count=1 conv=notrunc bs=1048576 seek=103

最新文章

  1. Dev GridView行拖拽
  2. hibernate的HQL语句
  3. Asp.net有关访问页面权限的限制和错误页面配置
  4. I prefer fcitx
  5. Mysql优化的几点总结
  6. [AFN]AFNetworking错误总结
  7. JAVA中的数据结构——集合类(序):枚举器、拷贝、集合类的排序
  8. [LeetCode] 86. Partition List 解题思路
  9. html5权威指南:设置文本样式
  10. Java经典编程题50道之四十一
  11. Cousera课程Learning How to Learn学习报告
  12. JAVA并发编程学习笔记------协作对象之间发生的死锁
  13. 欢迎大家来到DevLegal的博客
  14. java 轻量级同步volatile关键字简介与可见性有序性与synchronized区别 多线程中篇(十二)
  15. Jquery自动补全插件的使用
  16. PHP——运行shell命令|脚本
  17. Android事件总线(一)EventBus3.0用法全解析
  18. JAVA 基本数据结构--数组、链表、ArrayList、Linkedlist、hashmap、hashtab等
  19. golang 面试
  20. CSS定位背景图片 background-position

热门文章

  1. Hibernate入门(一)
  2. awk、nawk、mawk、gawk的简答介绍
  3. Java集合框架学习
  4. git入门 创建版本库, 版本管理 分支 标签
  5. mapper代理开发步骤
  6. cf997C. Sky Full of Stars(组合数 容斥)
  7. [vue三部曲]第一部:vue脚手架的搭建和目录资源介绍,超详细!
  8. Jenkins Jenkins构建历史记录处理
  9. C# 利用ReportViewer生成报表
  10. mysql 获取一张表中, 另一张表不存在的数据