I want to know if the diskgroup couldn't mount and the header of an asm disk corrupted (it is only my supposition), how should I deal with it? Will the data in the ASM disk lose?
I know the kfed can repair the ASM header, and if it restores the disk header successfully, the data will not lose. And another way is to use the 'dd' command. It can clear the disk header, but I think in this way the data will lose, is it right? The third way is as ID 353423.1 said, but I don't know whether it is practicable, and I also don't know whether the data will lose.
Are there any other ways?
If you can repair the header as your said, it wouldn't result in data loss. That's a big if. Looking at that note (353423.1) that would destroy the disk group, and is used to clear the contents without regard for the data that's there. If you want that, I'm guessing dd could work just as well. Do you have good backups? If so, I'd advise to create diskgroup and recover via rman, as usually that is the safest method of dealing with potential corruption. I agree with the other posters that a SR with support is warranted. Good luck.
DBRECOVER Recovery Options
For Oracle incidents, start with the DBRECOVER for Oracle trial to verify table visibility, row previews, and export readiness on copied datafiles. For MySQL and InnoDB incidents, DBRECOVER for MySQL is free software and can inspect.ibd files, ibdata1, and database directories locally.
When the case is urgent, preserve the original files first, work from copies, and contact paid emergency support with the database version, platform, error messages, file list, and recovery objective.