久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

怎么使用ASM維護(hù)工具

共計(jì) 6332 個(gè)字符,預(yù)計(jì)需要花費(fèi) 16 分鐘才能閱讀完成。

這篇文章主要介紹“怎么使用 ASM 維護(hù)工具”,在日常操作中,相信很多人在怎么使用 ASM 維護(hù)工具問題上存在疑惑,丸趣 TV 小編查閱了各式資料,整理出簡單好用的操作方法,希望對(duì)大家解答”怎么使用 ASM 維護(hù)工具”的疑惑有所幫助!接下來,請(qǐng)跟著丸趣 TV 小編一起來學(xué)習(xí)吧!

ASM 實(shí)例中有元文件與數(shù)據(jù)文件介紹

X$KFFXP 是 ASM(Automatic Storage Management) 自動(dòng)存儲(chǔ)管理特性的重要內(nèi)部視圖,該視圖反應(yīng)了 File Extent Map 映射關(guān)系,ASM 會(huì)將文件 split 成多個(gè)多個(gè) piece 分片,這些分片被稱為 Extents。在 Disk 上存放這些 Extent 的位置,就是我們常說的”Allocation Unit”。

KFF 意為 Kernel File,X$KFFXP 即 Kernel File Extent Maps,該內(nèi)部視圖的一條記錄代表一個(gè) Extent。

可以通過以下腳本查詢文件與 Extent 等 ASM 屬性的映射關(guān)系:

set linesize 140 pagesize 1400col  FILE NAME  format a40set head onselect NAME  FILE NAME , NUMBER_KFFXP  FILE NUMBER , XNUM_KFFXP  EXTENT NUMBER , DISK_KFFXP  DISK NUMBER , AU_KFFXP  AU NUMBER , SIZE_KFFXP  NUMBER of AUs 
 from x$kffxp, v$asm_alias
 where GROUP_KFFXP = GROUP_NUMBER
 and NUMBER_KFFXP = FILE_NUMBER
 and system_created =  Y 
 and lxn_kffxp = 0
 order by name;

KFOD 工具

    有了這個(gè)命令我們可以不通過實(shí)例查詢視圖查詢磁盤信息,直接在操作系統(tǒng)層對(duì) ASM 的相關(guān)信息進(jìn)行查閱磁盤空間大小和剩余量等信息。

KFOD 命令在 ASM 實(shí)例  $ORACLE_HOME/bin 目錄下

(1)查看磁盤組的組成

[grid@host02 lib]$ kfod disk=all group=diskgroup ds=true
--------------------------------------------------------------------------------
 Disk Size Path Disk Group User Group 
================================================================================
 1: 999 Mb /dev/raw/raw1 OCR grid asmadmin
 2: 999 Mb /dev/raw/raw2 OCR grid asmadmin
 3: 999 Mb /dev/raw/raw3 OCR grid asmadmin
 4: 9993 Mb /dev/raw/raw4 # grid asmadmin
 5: 9993 Mb /dev/raw/raw5 # grid asmadmin
 6: 9993 Mb /dev/raw/raw6 # grid asmadmin

(2)查看分組信息及可用容量

[grid@host02 lib]$ kfod diisk=all op=groups
--------------------------------------------------------------------------------
Group Size Free Redundancy Name 
================================================================================

(3)顯示所有磁盤

[grid@host02 lib]$kfod disk=all 
--------------------------------------------------------------------------------
 Disk Size Path User Group 
================================================================================
 1: 999 Mb /dev/raw/raw1 grid asmadmin
 2: 999 Mb /dev/raw/raw2 grid asmadmin
 3: 999 Mb /dev/raw/raw3 grid asmadmin
 4: 9993 Mb /dev/raw/raw4 grid asmadmin
 5: 9993 Mb /dev/raw/raw5 grid asmadmin
 6: 9993 Mb /dev/raw/raw6 grid asmadmin
--------------------------------------------------------------------------------
ORACLE_SID ORACLE_HOME 
================================================================================
 +ASM1 /u01/app/11.2.0/grid 
 +ASM2 /u01/app/11.2.0/grid

KFED 工具

KFED 主要用來編輯和修復(fù) ASM metadata, 可以在 DiskGroup 沒有 mount 的情況下使用; 因此在 ASM 無法啟動(dòng)、DiskGroup 無法 mount 的時(shí)候可以嘗試使用這個(gè)神器來修復(fù)

kfed 工具支持對(duì)于 ASM 信息的 READ/WRITE/MERGE/NEW/ FORM/FIND/STRUCT 等操作,11gR2 之前需要手工編譯. 

一、編譯 kfed 工具

1. 編譯

[oracle@node1 ~]$ cd $ORACLE_HOME/rdbms/lib

[oracle@node1 lib]$ make -f ins_rdbms.mk ikfed

2. 配置環(huán)境變量

export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/rdbms/lib:$PATH

3. 查看幫助

[oracle@node1 ~]$ kfed -help

4 查看一塊磁盤信息

[oracle@rac01~]$ kfed read /dev/asm-disk1 aun=0 blkn=0【01】kfbh.endian: 1 ; 0x000: 0x01【02】kfbh.hard: 130 ; 0x001: 0x82【03】kfbh.type: 1 ; 0x002:KFBTYP_DISKHEAD【04】kfbh.datfmt: 1 ; 0x003: 0x01【05】kfbh.block.blk: 0 ; 0x004: blk=0【06】kfbh.block.obj: 2147483648 ; 0x008: disk=0【07】kfbh.check: 875080645 ; 0x00c:0x3428abc5【08】kfbh.fcn.base: 4892 ; 0x010: 0x0000131c【09】kfbh.fcn.wrap: 0 ; 0x014: 0x00000000【10】kfbh.spare1: 0 ; 0x018: 0x00000000【11】kfbh.spare2: 0 ; 0x01c: 0x00000000【12】kfdhdb.driver.provstr: ORCLDISK ; 0x000: length=8【13】kfdhdb.driver.reserved[0]: 0 ; 0x008: 0x00000000【14】kfdhdb.driver.reserved[1]: 0 ; 0x00c: 0x00000000【15】kfdhdb.driver.reserved[2]: 0 ; 0x010: 0x00000000【16】kfdhdb.driver.reserved[3]: 0 ; 0x014: 0x00000000【17】kfdhdb.driver.reserved[4]: 0 ; 0x018: 0x00000000【18】kfdhdb.driver.reserved[5]: 0 ; 0x01c: 0x00000000【19】kfdhdb.compat: 186646528 ; 0x020: 0x0b200000【20】kfdhdb.dsknum: 0 ; 0x024: 0x0000【21】kfdhdb.grptyp: 1 ; 0x026:KFDGTP_EXTERNAL【22】kfdhdb.hdrsts: 3 ; 0x027:KFDHDR_MEMBER【23】kfdhdb.dskname: DATA_0000 ; 0x028: length=9【24】kfdhdb.grpname: DATA ; 0x048: length=4【25】kfdhdb.fgname: DATA_0000 ; 0x068: length=9【26】kfdhdb.capname: ; 0x088: length=0【27】kfdhdb.crestmp.hi: 33020845 ; 0x0a8: HOUR=0xdDAYS=0x1d MNTH=0x6 YEAR=0x7df【28】kfdhdb.crestmp.lo: 1437992960 ; 0x0ac: USEC=0x0MSEC=0x182 SECS=0x1b MINS=0x15【29】kfdhdb.mntstmp.hi: 33021392 ; 0x0b0: HOUR=0x10DAYS=0xe MNTH=0x7 YEAR=0x7df【30】kfdhdb.mntstmp.lo: 2467747840 ; 0x0b4: USEC=0x0MSEC=0x1b6 SECS=0x31 MINS=0x24
........【108】

總共有 108 行內(nèi)容,這些內(nèi)容是什么含義呢?我們來一一解讀

第 1 行:kfbh.endian:小字節(jié)(LittleEndian)= 1  大字節(jié)(Big Endian)= 0

第 2 行:kfbh.hard:元文件塊大小 默認(rèn)是 0x82

第 3 行:type_kfbh:類型,磁盤頭總是 KFBTYP_DISKHEAD

第 4 行:kfbh.datfmt 數(shù)據(jù)格式

第 5 行:kfbh.block.blk 磁盤頭始終是 0

第 6 行:kfbh.block.obj 磁盤在磁盤組中的號(hào)

第 7 行:kfbh.check 校驗(yàn)碼,寫到磁盤前計(jì)算

第 8~11 行:磁盤頭無意義

第 12 行:kfdhdb.driver.provstr 沒有使用 Lib 包的時(shí)候顯示為 ORCLDISK

第 13~18 行:kfdhdb.driver.reserved 始終為 0

第 19 行:kfdhdb.compat 版本號(hào)

第 20 行:kfdhdb.dsknum  0

第 21 行:kfdhdb.grptyp 冗余策略,共 4 種冗余策略

  KFDGTP_INVALID ((kfdgtp)0) /* Illegal value             */

   KFDGTP_EXTERNAL    ((kfdgtp)1) /* Externalredundancy           */

   KFDGTP_NORMAL     ((kfdgtp)2) /*Normal redundancy         */

   KFDGTP_HIGH   ((kfdgtp)3) /* High redundancy            */

第 22 行:hdrsts_kfdhdb 磁盤狀態(tài),共 8 種狀態(tài)

   KFDHDR_INVALID ((kfdhdr)0) /*   Illegal value            */

   KFDHDR_UNKNOWN   ((kfdhdr)1) /* Disk header block unreadable    */

   KFDHDR_CANDIDATE   ((kfdhdr)2) /* No OSM or OS disk header found */

   KFDHDR_MEMBER   ((kfdhdr)3) /*   Normal member of the group   */

   KFDHDR_FORMER   ((kfdhdr)4) /*   Disk dropped cleanly from group */

   KFDHDR_CONFLICT    ((kfdhdr)5) /* Header conflicts          */

   KFDHDR_INCOMPAT    ((kfdhdr)6) /* Written by incompatible software*/

   KFDHDR_PROVISIONED ((kfdhdr)7) /*   Disk wasprepared beforehand    */

參見 V$asm_disk

第 23 行:dskname_kfdhdb 磁盤名稱  

第 24 行:grpname_kfhdb 磁盤組名稱

第 25 行:fgname_kfdhdb: 磁盤名稱

第 26 行:capname_kfdhdb 未使用

第 27~28 行:fdhdb.crestmp.hi,kfdhdb.crestmp.lo 創(chuàng)建時(shí)的時(shí)間戳

第 29~30 行:kfdhdb.mntstmp.hi,kfdhdb.mntstmp.lo  Mount 時(shí)的時(shí)間戳

第 31 行:kfdhdb.secsize 扇區(qū)大小

第 32 行:kfdhdb.blksize 塊大小

第 33 行:kfdhdb.ausize AU 大小。

第 34 行:kfdhdb.mfact: 版本相關(guān),無意義

第 35 行:kfhdb.dsksize 本磁盤包含的 AU 數(shù)量。kfdhdb.ausize *dsksize_kfdhdb = disk size

第 36 行:kfdhdb.pmcnt  AU 的物理地址空間。

第 37 行:kfdhdb.fstlocn  說明第一個(gè) AU 后,是用戶可用空間。

第 37 行:kfdhdb.altlocn 說明文件目錄開始自第二個(gè) AU

第 38 行:kfdhdb.f1b1locn   文件目錄塊 1 分配單元號(hào)

第 39~108 行:在默認(rèn) au 的情況下,后面的信息基本都變化不大

這部分信息對(duì)于 ASM 識(shí)別磁盤非常重要,也正式因?yàn)樗闹匾?1g 默認(rèn)就就對(duì)其進(jìn)行了一個(gè)鏡像備份,可以通過 kefd 的 repair 操作直接恢復(fù),相當(dāng)?shù)姆奖?

       ASM 磁盤頭信息損壞和修復(fù)

AMDU (ASM Metadata Dump Utility)
         
ASM 磁盤組的信息需要在 Mount 之后才能通過內(nèi)部視圖查詢,如果磁盤組因?yàn)楣收蠠o法正常加載,那么信息將不可用,這為診斷帶來了諸多不便。

從 Oracle 11g 開始,Oracle 提供了一個(gè)工具 AMDU 用于協(xié)助診斷,通過這個(gè)工具可以在磁盤組加載之前將 ASM 的元數(shù)據(jù)抽取出來,用于數(shù)據(jù)庫診斷,這個(gè)工具可以向后兼容,引入到 10g 中。

通過 amdu - h 可以查看詳細(xì)的幫助說明,缺省的調(diào)用 amdu,會(huì)自動(dòng)生成一個(gè)以時(shí)間命名的目錄,該目錄下生成的報(bào)告文件會(huì)記錄磁盤組的相關(guān)信息

到此,關(guān)于“怎么使用 ASM 維護(hù)工具”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注丸趣 TV 網(wǎng)站,丸趣 TV 小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!

正文完
 
丸趣
版權(quán)聲明:本站原創(chuàng)文章,由 丸趣 2023-07-24發(fā)表,共計(jì)6332字。
轉(zhuǎn)載說明:除特殊說明外本站除技術(shù)相關(guān)以外文章皆由網(wǎng)絡(luò)搜集發(fā)布,轉(zhuǎn)載請(qǐng)注明出處。
評(píng)論(沒有評(píng)論)
主站蜘蛛池模板: 台前县| 启东市| 武定县| 得荣县| 姚安县| 马公市| 云南省| 寿阳县| 华安县| 鄂托克前旗| 博乐市| 富川| 乡城县| 惠水县| 德化县| 青阳县| 延长县| 海口市| 太白县| 宝鸡市| 喀什市| 金堂县| 偏关县| 武威市| 保定市| 兰考县| 五台县| 南城县| 滦南县| 中阳县| 旬邑县| 莆田市| 新宁县| 萨迦县| 屏山县| 英山县| 丹阳市| 永善县| 湘乡市| 厦门市| 郴州市|