您好,登錄后才能下訂單哦!
Oracle 10g中, ASM磁盤組的信息需要在Mount之后才能通過內部視圖查詢, 如果磁盤組因為故障無法正常加載,那么信息將不可用, 這為ASM相關故障的診斷帶來了諸多不便
Oracle在11g中提供了AMDU, 可用于協助診斷,在ASM磁盤加載前,可以將ASM元數據從磁盤中抽取出來,用于數據庫診斷。此工具可以向后兼容,引入到10g。
使用方法:
[grid@dbhost01 ~]$ amdu -diskstring '/dev/asmdisk*'
amdu_2019_08_09_11_04_26/
[grid@dbhost01 ~]$ cd amdu_2019_08_09_11_04_26/
[grid@dbhost01 amdu_2019_08_09_11_04_26]$ ls -l
total 8
-rw-r--r-- 1 grid oinstall 5367 Aug 9 11:04 report.txt
[grid@dbhost01 amdu_2019_08_09_11_04_26]$ more report.txt
-*-amdu-*-
******************************* AMDU Settings ********************************
ORACLE_HOME = /u01/app/11.2.0/grid
System name: Linux
Node name: dbhost01
Release: 3.10.0-862.el7.x86_64
Version: #1 SMP Wed Mar 21 18:14:51 EDT 2018
Machine: x86_64
amdu run: 09-AUG-19 11:04:26
Endianess: 1
抽取整個數據庫文件的流程如下:
1. 在告警日志中定位控制文件在ASM文件系統中的編號
Starting up:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, Real Application Clusters, OLAP, Data Mining
and Real Application Testing options.
ORACLE_HOME = /u01/app/oracle/product/11.2.0/db_1
System name: Linux
Node name: dbhost01
Release: 3.10.0-862.el7.x86_64
Version: #1 SMP Wed Mar 21 18:14:51 EDT 2018
Machine: x86_64
VM name: VMWare Version: 6
Using parameter settings in server-side pfile /u01/app/oracle/product/11.2.0/db_1/dbs/initorcl1.ora
System parameters with non-default values:
processes = 150
spfile = "+DATA/orcl/spfileorcl.ora"
memory_target = 1584M
control_files = " +DATA/orcl/controlfile/current.260.1008261229 "
db_block_size = 8192
compatible = "11.2.0.4.0"
cluster_database = TRUE
db_create_file_dest = "+DATA"
thread = 1
undo_tablespace = "UNDOTBS1"
instance_number = 1
remote_login_passwordfile= "EXCLUSIVE"
db_domain = ""
dispatchers = "(PROTOCOL=TCP) (SERVICE=orclXDB)"
remote_listener = "myrac-cluster-scan:1521"
audit_file_dest = "/u01/app/oracle/admin/orcl/adump"
audit_trail = "DB"
db_name = "orcl"
open_cursors = 300
diagnostic_dest = "/u01/app/oracle"
2. 抽取控制文件
[grid@dbhost01 amdu_2019_08_09_11_04_26]$ amdu -extract +DATA.260
AMDU-00108: file name invalid [+DATA.260]
[grid@dbhost01 amdu_2019_08_09_11_04_26]$ amdu -extract DATA.260
amdu_2019_08_09_14_20_11/
AMDU-00210: No disks found in diskgroup DATA
AMDU-00210: No disks found in diskgroup DATA
[grid@dbhost01 amdu_2019_08_09_11_04_26]$ amdu -diskstring "/dev/asmdisk*" -extract DATA.260
amdu_2019_08_09_14_20_42/
[grid@dbhost01 amdu_2019_08_09_11_04_26]$ ls -l amdu_2019_08_09_14_20_42
total 18072
-rw-r--r-- 1 grid oinstall 18497536 Aug 9 14:20 DATA_260.f
-rw-r--r-- 1 grid oinstall 7306 Aug 9 14:20 report.txt
[grid@dbhost01 amdu_2019_08_09_11_04_26]$
[grid@dbhost01 amdu_2019_08_09_11_04_26]$
[grid@dbhost01 amdu_2019_08_09_11_04_26]$
3. 從控制文件中獲取數據文件,日志等信息
[grid@dbhost01 amdu_2019_08_09_14_20_42]$ strings DATA_260.f | grep +DATA > DATAFILE_ORCL.txt
[grid@dbhost01 amdu_2019_08_09_14_20_42]$
[grid@dbhost01 amdu_2019_08_09_14_20_42]$ ls -l
total 18076
-rw-r--r-- 1 grid oinstall 18497536 Aug 9 14:20 DATA_260.f
-rw-r--r-- 1 grid oinstall 987 Aug 9 14:23 DATAFILE_ORCL.txt
-rw-r--r-- 1 grid oinstall 7306 Aug 9 14:20 report.txt
[grid@dbhost01 amdu_2019_08_09_14_20_42]$ more DATAFILE_ORCL.txt
+DATA/orcl/onlinelog/group_2.262.1008261231
+DATA/orcl/onlinelog/group_1.261.1008261231
4. 按照第三步的輸出,抽取出日志文件,數據文件等等
amdu -diskstring "/dev/asmdisk*" -extract DATA.259
amdu -diskstring "/dev/asmdisk*" -extract DATA.258
amdu -diskstring "/dev/asmdisk*" -extract DATA.257
amdu -diskstring "/dev/asmdisk*" -extract DATA.256
amdu -diskstring "/dev/asmdisk*" -extract DATA.263
amdu -diskstring "/dev/asmdisk*" -extract DATA.264
amdu -diskstring "/dev/asmdisk*" -extract DATA.265
amdu -diskstring "/dev/asmdisk*" -extract DATA.266
amdu -diskstring "/dev/asmdisk*" -extract DATA.267
amdu -diskstring "/dev/asmdisk*" -extract DATA.262
amdu -diskstring "/dev/asmdisk*" -extract DATA.261
5. 新建實例,利用抽取的控制文件,啟動至mount
并使用alter database rename file改名等啟動數據庫
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。