一、故障描述
ASM磁盘组掉线 ,ASM实例不能mount。ASM磁盘组有4个500G的磁盘组成,数据库和ASM软件为10.2.0.1,急需恢复oracle数据库。
二、故障分析
分析组成ASM磁盘组的磁盘,取出ASM元数据,对元数据进行分析:ASM存储元数据损坏,导致diskgroup无法mount。重组ASM存储空间,从ASM磁盘组中导出数据库文件,然后对数据库文件进行检测,修复。如果数据库文件完好,可以利用从ASM磁盘组中导出的数据库文件启动数据库。如果数据库文件损坏,这底层解析这些数据库文件,将数据导入到新的数据库中,恢复数据。
三、恢复过程
1 底层获取ASM元数据,重组ASM存储空间
2 使用北亚ASM解析工具,解析ASM结构,获得ASM中数据文件
图一: ![如何解决Oracle ASM故障导致的数据丢失问题 如何解决Oracle ASM故障导致的数据丢失问题](/default/index/img?u=aHR0cHM6Ly9waWFuc2hlbi5jb20vaW1hZ2VzLzI4NS9mZmY5NWU0YzNlYjc2YWRlOWM1ZGJiYjNmNTI1YjE0NS5KUEVH)
3 使用北亚oracle文件检测工具对ASM磁盘组中的数据库文件进行检测
图二: ![如何解决Oracle ASM故障导致的数据丢失问题 如何解决Oracle ASM故障导致的数据丢失问题](/default/index/img?u=aHR0cHM6Ly9waWFuc2hlbi5jb20vaW1hZ2VzLzMzMi9mNDUyMmZhYjU2NDgyNTBiNWYwZWM0ZGMyMDE3OThkYy5KUEVH)
4 使用北亚oracle解析工具,解析所有数据文件中的数据记录,按用户导入到新的数据库中
图三:![如何解决Oracle ASM故障导致的数据丢失问题 如何解决Oracle ASM故障导致的数据丢失问题](/default/index/img?u=aHR0cHM6Ly9waWFuc2hlbi5jb20vaW1hZ2VzLzgzNi85MmVhZWU4ZDhiMjRlZGNkN2VjYWRmNTgzNTY2OGNlYy5KUEVH)
四、结果
重组ASM存储空间,底层解析ASM磁盘,导出数据库文件。底层解析这些数据库文件,按用户将数据导入到新的数据库中,通过抽查数据表的方式验证数据,数据完全恢复。
图四:![如何解决Oracle ASM故障导致的数据丢失问题 如何解决Oracle ASM故障导致的数据丢失问题](/default/index/img?u=aHR0cHM6Ly9waWFuc2hlbi5jb20vaW1hZ2VzLzg1Ny83NmUwNjk4YzM2M2RmM2ViNDE5ZDU1NDVjMTY3OTQxMS5KUEVH)