在数据库运维中,总会遇到一些粗心大意的DBA,一不小心删除一些东西,这里举例讲解在误删除ASM磁盘之后,如果用KFED工具进行恢复:

  1. [grid@RAC1 ~]$ sqlplus / as sysasm
  2.  
  3. SQL*Plus: Release 11.2.0.4.0 Production on Thu Jan 5 00:06:04 2017
  4.  
  5. Copyright (c) 1982, 2013, Oracle. All rights reserved.
  6.  
  7. Connected to:
  8. Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
  9. With the Real Application Clusters and Automatic Storage Management options
  10.  
  11. SQL> col path format a30
  12. SQL> select name,path,header_status from v$asm_disk;
  13.  
  14. NAME PATH HEADER_STATU
  15. ------------------------------ ------------------------------ ------------
  16. DATA_0001 /dev/mapper/mpathc MEMBER
  17. DATA_0004 /dev/mapper/mpathd MEMBER
  18. DATA_0003 /dev/mapper/mpathf MEMBER
  19. DATA_0000 /dev/mapper/mpathb MEMBER
  20. DATA1_0001 /dev/mapper/mpathh MEMBER
  21. DATA_0002 /dev/mapper/mpathg MEMBER
  22. DATA1_0002 /dev/mapper/mpathi MEMBER
  23. DATA1_0000 /dev/mapper/mpathe MEMBER
  24.  
  25. 8 rows selected.
  26.  
  27. SQL> drop diskgroup DATA;
  28. drop diskgroup DATA
  29. *
  30. ERROR at line 1:
  31. ORA-15039: diskgroup not dropped
  32. ORA-15053: diskgroup "DATA" contains existing files
  33.  
  34. SQL> drop diskgroup DATA including contents;
  35. drop diskgroup DATA including contents
  36. *
  37. ERROR at line 1:
  38. ORA-15039: diskgroup not dropped
  39. ORA-15027: active use of diskgroup "DATA" precludes its dismount
  40.  
  41. ------------------------------------------------------------------------------------------------------------------------

  42. 关闭数据连接:
  43.  
  44. SQL> alter diskgroup DATA dismount force;
  45.  
  46. Diskgroup altered.
  47.  
  48. SQL> drop diskgroup DATA force including contents;
  49. drop diskgroup DATA force including contents
  50. *
  51. ERROR at line 1:
  52. ORA-15039: diskgroup not dropped
  53. ORA-15073: diskgroup DATA is mounted by another ASM instance
  54. dismount 需要两边都dismount
  55.  
  56. SQL> drop diskgroup DATA force including contents;
  57.  
  58. Diskgroup dropped.
  59.  
  60. SQL> select name,path,header_status from v$asm_disk;
  61.  
  62. NAME PATH HEADER_STATU
  63. ------------------------------ ------------------------------ ------------
  64. /dev/mapper/mpathc FORMER
  65. /dev/mapper/mpathd FORMER
  66. /dev/mapper/mpathf FORMER
  67. /dev/mapper/mpathb FORMER
  68. /dev/mapper/mpathg FORMER
  69. DATA1_0001 /dev/mapper/mpathh MEMBER
  70. DATA1_0002 /dev/mapper/mpathi MEMBER
  71. DATA1_0000 /dev/mapper/mpathe MEMBER
  72.  
  73. 8 rows selected.
  74.  
  75. [grid@RAC1 ~]$ crs_stat -t
  76. CRS-0184: Cannot communicate with the CRS daemon.
  77.  
  78. ###############################################################################################################
  79.  
  80. 使用kfed进行恢复
  81. [grid@RAC1 ~]$ kfed read /dev/mapper/mpathc > /tmp/mpathc-meta
  82. [root@RAC1 tmp]# vi mpathc-meta
  83. vi打开生成的文件,修改下面一行数据
  84. kfdhdb.hdrsts: 4 ; 0x027: KFDHDR_FORMER
  85. 修改为:
  86. kfdhdb.hdrsts: 3 ; 0x027: KFDHDR_MEMBER
  87. [grid@RAC1 ~]$ kfed merge /dev/mapper/mpathc text=/tmp/mpathc-meta
  88.  
  89. 将所有5块磁盘进行同样的操作。
  90.  
  91. SQL> select name,path,header_status from v$asm_disk;
  92.  
  93. NAME PATH HEADER_STATU
  94. ------------------------------ ------------------------------ ------------
  95. /dev/mapper/mpathc MEMBER
  96. /dev/mapper/mpathd MEMBER
  97. /dev/mapper/mpathf MEMBER
  98. /dev/mapper/mpathb MEMBER
  99. /dev/mapper/mpathg MEMBER
  100. DATA1_0001 /dev/mapper/mpathh MEMBER
  101. DATA1_0002 /dev/mapper/mpathi MEMBER
  102. DATA1_0000 /dev/mapper/mpathe MEMBER
  103.  
  104. SQL> alter diskgroup DATA mount;
  105.  
  106. Diskgroup altered.
  107.  
  108. 两个节点都需要进行mount
  109.  
  110. SQL> select name,path,header_status from v$asm_disk;
  111.  
  112. NAME PATH HEADER_STATU
  113. ------------------------------ ------------------------------ ------------
  114. DATA_0001 /dev/mapper/mpathc MEMBER
  115. DATA_0004 /dev/mapper/mpathd MEMBER
  116. DATA_0003 /dev/mapper/mpathf MEMBER
  117. DATA_0000 /dev/mapper/mpathb MEMBER
  118. DATA1_0001 /dev/mapper/mpathh MEMBER
  119. DATA_0002 /dev/mapper/mpathg MEMBER
  120. DATA1_0002 /dev/mapper/mpathi MEMBER
  121. DATA1_0000 /dev/mapper/mpathe MEMBER
  122.  
  123. 8 rows selected.
  124.  
  125. [grid@RAC1 ~]$ crs_stat -t
    Name           Type           Target    State     Host        
    ------------------------------------------------------------
    ora.DATA.dg    ora....up.type ONLINE    ONLINE    rac1        
    ora.DATA1.dg   ora....up.type ONLINE    ONLINE    rac1        
    ora....ER.lsnr ora....er.type ONLINE    ONLINE    rac1        
    ora....N1.lsnr ora....er.type ONLINE    ONLINE    rac1        
    ora.asm        ora.asm.type   ONLINE    ONLINE    rac1        
    ora.cvu        ora.cvu.type   ONLINE    OFFLINE               
    ora.gsd        ora.gsd.type   OFFLINE   OFFLINE               
    ora....network ora....rk.type ONLINE    ONLINE    rac1        
    ora.oc4j       ora.oc4j.type  ONLINE    OFFLINE               
    ora.ons        ora.ons.type   ONLINE    ONLINE    rac1        
    ora....SM1.asm application    ONLINE    ONLINE    rac1        
    ora....C1.lsnr application    ONLINE    ONLINE    rac1        
    ora.rac1.gsd   application    OFFLINE   OFFLINE               
    ora.rac1.ons   application    ONLINE    ONLINE    rac1        
    ora.rac1.vip   ora....t1.type ONLINE    ONLINE    rac1        
    ora.rac2.vip   ora....t1.type ONLINE    OFFLINE               
    ora....ry.acfs ora....fs.type ONLINE    ONLINE    rac1        
    ora.scan1.vip  ora....ip.type ONLINE    ONLINE    rac1

ORACLE误删除ASM磁盘修复的更多相关文章

  1. Oracle 下ASM磁盘总结

    Oracle 下ASM磁盘总结 文章转载: Oracle下创建ASM磁盘总结https://blog.csdn.net/okhymok/article/details/78791841?utm_sou ...

  2. 转://Oracle 11gR2 ASM磁盘组管理

    一.环境.[grid@rhel2 ~]$ cat /etc/issueRed Hat Enterprise Linux Server release 5.5 (Tikanga) Kernel \r o ...

  3. 11G ORACLE RAC DBCA 无法识别asm磁盘组

    ASM磁盘无法识别几种现象: 1) gi家目录或者其子目录权限错误 2)asm磁盘的权限错误 3)asm实例未启动或者asm磁盘组没有mount上 4)asm磁盘组资源没有在线 5)oracle用户的 ...

  4. 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:4.安装Oracle RAC FAQ-4.5.安装Grid,创建ASM磁盘组空间不足

    因之前分区时,分区的Last cylinder的值选了“1”,导致创建磁盘组空间不足.解决办法是先删除分区,重新创建分区并删除ASM磁盘,然后重建ASM磁盘 1. 先删除分区,重新创建分区: 1)查询 ...

  5. 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:4.安装Oracle RAC FAQ-4.2.Oracleasm Createdisk ASM磁盘失败:Instantiating disk: failed

    1.错误信息:Instantiating disk: failed [root@linuxrac1 /]# /usr/sbin/oracleasm createdisk OCR_VOTE /dev/s ...

  6. 案例:Oracle报错ASM磁盘组不存在或没有mount

    案例:Oracle报错ASM磁盘组不存在或没有mount 环境:RHEL 6.5 + Oracle Standby RAC 11.2.0.4 我做Standby RAC实验时,在恢复控制文件时,报错无 ...

  7. 对oracle用户创建asm磁盘

    --root用户执行vi /etc/sysctl.conf #Install oracle settingfs.aio-max-nr = 1048576fs.file-max = 6815744#ke ...

  8. Oracle 11gR2 RAC DBCA无法识别ASM磁盘组(ORA-19504,ORA-15045,ORA-17502,ORA-15081)

    ORA-19504: failed to create file "+DATA" ORA-15045: ASM file name '+DATA' is not in refere ...

  9. Oracle RAC环境下ASM磁盘组扩容

    生产环境注意调整以下参数: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ...

随机推荐

  1. CCNET+MSBuild+SVN实现每日构建

    最近开始将源代码迁移到SVN,于是便考虑到如何从SVN定期获取源码,自动编译并部署以减轻工作量并提高工作效率.通过多方搜集资料并进行研究,基本实现了这个功能.对于每日构建的概念就不具体展开了,可以在各 ...

  2. android 设计

    引用:http://my.eoe.cn/blue_rain/archive/3631.html 1.一些概念 模式的定义: 每个模式都描述了一个在我们的环境中不断出现的问题,然后描述了该问题的解决方案 ...

  3. 添加sudo权限

    进入超级用户模式.也就是输入"su -",系统会让你输入超级用户密码,输入密码后就进入了超级用户模式.(当然,你也可以直接用root用) 添加文件的写权限.也就是输入命令" ...

  4. HBase的数据模型相关操作 使用t这个变量来代替table1

    在andriod的应用程序中,用户所感知的都是一个个应用界面,在android程序里面每个应用界面对应一个 Activity类,这类似于.NET Winform项目中的Form窗体.与WinForm中 ...

  5. Silverlight动态生成控件实例

    刚学习Silverlight,做了一个动态创建控件的实例 实现结果:根据已有的控件类名称,得到控件的实例化对象 实现思路1:就是定义一个模板文件,将类名做为参数,在silverlight中使用Srea ...

  6. iOS当中一些常见的面试题

    转自各方面..... 一.前言部分 文中的问题多收集整理自网络,不保证100%准确,还望斟酌采纳. 1.iOS9有哪些新特性? 答案: 1)改进了 Siri 基于日期.位置和相簿名称来搜索个人照片和视 ...

  7. 测试 Prism 语法高亮

    测试 Prism 对 C 语言的语法高亮 #include <stdio.h> #include "math.h" int main(void) { long int ...

  8. sql逻辑执行顺序

    要知道SQL语句,我想我们有必要知道SQL Server查询分析器怎么执行我们的SQL语句的,我们很多人会看执行计划,或者用Profiler来监视和调优查询语句或者存储过程慢的原因,但是如果我们知道查 ...

  9. jQuery 操作 CSS

    jQuery 拥有若干进行 CSS 操作的方法.我们将学习下面这些: addClass() - 向被选元素添加一个或多个类 removeClass() - 从被选元素删除一个或多个类 toggleCl ...

  10. 教你如何查看一款App里面所包含的图片

    在开发制作App的过程中,有时候会想看看一些精美的App里面所设计的素材.这个时候就需要用到我给大家展现的方法了.下面就看看该如何操作能让一个App呈现出它原始的一面,这次我以Any.Do为例给大家演 ...