当前位置:Gxlcms > mysql > 用OracleAMDU抽取ASM磁盘组的数据文件

用OracleAMDU抽取ASM磁盘组的数据文件

时间:2021-07-01 10:21:17 帮助过:5人阅读

amdu -diskstring

amdu -diskstring '' -extract '.'

数据文件号 可以根据asm 实例 查询 v$asm_file视图得出

也可以查v$datafile,,如果用了别名,可以用v$asm_alias;

SQL> select name from v$datafile;

NAME
--------------------------------------------------------------------------------
+DATA/db1/datafile/system.256.794361477
+DATA/db1/datafile/sysaux.257.794361477
+DATA/db1/datafile/undotbs1.258.794361477
+DATA/db1/datafile/users.259.794361477 <(=== this files need to be extracted
+DATA/db1/datafile/example.261.794361601
+DATA/db1/datafile/testasm.263.817147851
+DATA/db1/datafile/dbfs_ts.264.822088469


比如我们要抽取users表空间下面对应的数据文件

Full File name = "+DATA/db1/datafile/users.259.794361477"

File Number = "259"

Disk String = "/dev/Oracleasm/disks/*"

Diskgroup Name = "DATA"

Extracted File = DATA_259.f

amdu -diskstring '/dev/oracleasm/disks/*' -extract 'DATA.259'

在当前目录下会生成amdu_加日期格式的文件夹

[grid@dbaasm ~]$ cd amdu_2013_08_31_00_17_17/
[grid@dbaasm amdu_2013_08_31_00_17_17]$ ls -l
total 2099228
-rw-r--r-- 1 grid oinstall 2147491840 Aug 31 00:18 DATA_259.f
-rw-r--r-- 1 grid oinstall 14514 Aug 31 00:18 report.txt

生成数据文件的格式为磁盘组+数据文件号,并且加后缀名为点f,然后重命名为对应表空间名字users.dbf即可

[grid@dbaasm amdu_2013_08_31_00_17_17]$ mv DATA_259.f users.dbf
[grid@dbaasm amdu_2013_08_31_00_17_17]$ ls -l
total 2099228
-rw-r--r-- 1 grid oinstall 14514 Aug 31 00:18 report.txt
-rw-r--r-- 1 grid oinstall 2147491840 Aug 31 00:18 users.dbf <(======

上个周末,因为存储故障,asm磁盘不能正常加载,就用这种方法帮客户恢复数据。

在CentOS 6.4下安装Oracle 11gR2(x64)

Oracle 11gR2 在VMWare虚拟机中安装步骤

Debian 下 安装 Oracle 11g XE R2

Oracle 11g从入门到精通 PDF+光盘源代码

RHEL6 ASM方式安装Oracle 11g R2

Oracle 10g 手工创建ASM数据库

Oracle 10g R2创建ASM实例Step By Step

本文永久更新链接地址:

linux

人气教程排行