成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

老菜鳥苦戰oracle asm

系統 Linux
oracle asm磁盤標簽丟失導,而致整個集群和數據庫啟動失敗。該如何排除故障呢?本文作者田逸將通過親身經歷來為您講解“老菜鳥”如何苦戰oracle asm

 應用環境描述

一、硬件

1、 服務器:2臺dell r610—16G內存、2顆6核xeon cpu、2個146G sas盤,做了raid1

2、 存儲:dell MD3220 24個300G硬盤

3、 存儲連接:6GB HBA卡,2個通道都連線了

二、軟件

1、 系統:64位centos 5.5

2、 系統內核版本:Linux rac1 2.6.18-194.el5 #1 SMP Fri Apr 2 14:58:14 EDT 2010 x86_64 x86_64 x86_64 GNU/Linux

3、 asm軟件:oracleasm-2.6.18-194.el5-2.0.5-1.el5.x86_64.rpm、oracleasm-support-2.1.7-1.el5.x86_64.rpm、oracleasmlib-2.0.4-1.el5.x86_64.rpm

4、 數據庫軟件:linux.x64_11gR2_database_1of2.zip、linux.x64_11gR2_database_2of2.zip

5、 集群軟件:linux.x64_11gR2_grid.zip

故障描述

一、故障前的情況:

1、 集群實例正常運行

2、 asm能用asmcmd查看目錄和文件

3、 數據庫實例正常

4、 監聽器正常

5、 客戶端遠程連接正常

6、 多路徑訪問正常

7、 /dev/oracleasm/disks目錄的下的文件全部存在

二、故障的起因:

1、 打算模擬服務器失效

2、 直接重啟兩個服務器 init 6

三、故障現象:

1、 兩個服務器的asm實例都沒有啟動成功

2、 兩個服務器的oracle實例都沒有啟動成功

3、 Crs等進程啟動幾個,但基本上不能正常工作

4、 手動啟動crs,失敗

5、 以grid用戶手動連接實例,強制啟動,失敗#p#

故障基本原因判斷

數據庫數據文件、集群軟件所需的ocr文件都存儲在asm設定的共享存儲中,由于集群軟件(包括asm實例)啟動失敗而最終也導致數據庫實例啟動失敗。

處理過程

一、定位故障點:

1、查看系統進程,發現ASM進程沒有起來。但有少許grid相關的進程,如下圖所示:

 

\

 

2、手動執行 /u01/app/grid/bin/crsctl start crs 失敗

3、查看設備文件目錄 /dev/mapper,發現共享存儲的分區全部存在

[root@rac2 ~]# ll /dev/mapper/
total 0
crw------- 1 root root 10, 63 Jul 24 00:00 control
brw-rw---- 1 root disk 253, 0 Jul 24 00:01 mpath13
brw-rw---- 1 root disk 253, 10 Jul 24 00:01 mpath13p1
brw-rw---- 1 root disk 253, 11 Jul 24 00:01 mpath13p2
brw-rw---- 1 root disk 253, 12 Jul 24 00:01 mpath13p3
brw-rw---- 1 root disk 253, 13 Jul 24 00:01 mpath13p5
brw-rw---- 1 root disk 253, 14 Jul 24 00:01 mpath13p6
brw-rw---- 1 root disk 253, 15 Jul 24 00:01 mpath13p7
brw-rw---- 1 root disk 253, 16 Jul 24 00:01 mpath13p8
brw-rw---- 1 root disk 253, 1 Jul 24 00:01 mpath14
brw-rw---- 1 root disk 253, 3 Jul 24 00:01 mpath14p1
brw-rw---- 1 root disk 253, 4 Jul 24 00:01 mpath14p2
brw-rw---- 1 root disk 253, 5 Jul 24 00:01 mpath14p3
brw-rw---- 1 root disk 253, 6 Jul 24 00:01 mpath14p5
brw-rw---- 1 root disk 253, 7 Jul 24 00:01 mpath14p6
brw-rw---- 1 root disk 253, 8 Jul 24 00:01 mpath14p7
brw-rw---- 1 root disk 253, 9 Jul 24 00:01 mpath14p8
brw-rw---- 1 root disk 253, 2 Jul 24 00:01 mpath15

4、初步懷疑是asm磁盤組出故障了,于是執行 oracleasm listdisks,發現輸出只有一行,可實際上是10多行的。

[root@rac2 ~]# oracleasm listdisks
DATA06

5、執行oracleasm scandisks掃描,再次查看輸出磁盤,還是只有一個。查了網上的資料,也有這種情況,別人的經驗是多執行幾次asm磁盤掃描就出來了,但對我這個情況無效。

6、當我們初始化創建asm磁盤組時,使用命令 oracleasm createdisk OCR1 /dev/mapper/mpath14p1 執行成功后,將在目錄/dev/oracleasm/disks目錄生成OCR1這個文件,文件名就是asm的磁盤名;創建多少asm磁盤,就會有多少同名文件。進入目錄/dev/oracleasm/disks,查看一下,只剩下一個塊設備文件DATA06,其余的全部不見了。

[root@rac2 ~]# ll /dev/oracleasm/disks/
total 0
brw-rw---- 1 grid asmadmin 8, 22 Jul 24 00:01 DATA06

與oracleasm listdisks 輸出的結果完全一致,由此可知asm磁盤組與操作系統這個目錄有直接的關聯。這幾者的關系可以如下圖標識:

 

\

 

現在要做的事情是能不能恢復余下的磁盤文件。#p#

二、處理方法

1、先上網搜索一下吧,搜出來不少,都是建議用dd清理磁盤,然后再用oracleasm createdisk 重新創建磁盤組。但我擔心這樣做,asm磁盤里面的數據會全部丟失,沒敢這樣嘗試。

2、打電話問我原來的同事,他現在轉行做dba了。他告訴我,看看是不是設備文件的權限問題,我到服務器上去查看,發現一個機器的/dev/mapper/mpath* 的屬主是 root:disk,而另一個服務器相應的目錄屬主卻是grid:oinstall。按照他的建議,我在文件/etc/rc.local寫入了行“chown –R grid:oinstall”,然后重啟系統,查看目錄確實屬主按我的意愿變成grid:root,但asm磁盤仍然不能識別,看來問題不在這里。

3、在多個qq群發送消息,有說權限問題的,也有建議oracleasm scandisk 的。還有的人認為oracleasm服務沒有運行起來。還有的人說是裸設備權限問題,我可是沒有使用裸設備啊,打開文件/etc/sysconfig/rawdevices,沒有任何生效的文本行(全部被注釋上了),這應診了沒有使用裸設備。

搞了好幾天,沒得進展。一天睡在床上,有想起這個問題,既然/dev/oracleasm/disks有DATA06這個文件,能不能手工創建一些呢(即丟失的那些文件),于是又爬起來。但當我手動執行touch /dev/oracleasm/disks/DATA08時,提示沒有權限。看來,只能用mknod之類的命令才可以在這個目錄創建文件。

念頭一轉,又想:既然DATA06這個文件存在,可能會在某些文件中有記錄吧?執行grep DATA06 /etc -r 全路徑搜索,還真搜到一個文件 /etc/blkid/blkid.tab,這個文件的如下:

[root@rac1 ~]# more /etc/blkid/blkid.tab
/dev/sda7
/dev/sda6
/dev/sda5
/dev/sda3
/dev/sda2
/dev/sda1
/u01/swapfile
/dev/ma
pper/mpath14p8
/dev/mapper/m
path15p8
/dev/ma
pper/mpath14p6
/dev/mapper/m
path14p5
/dev/mapper/m
path15p5
/dev/mapper/m
path14p3
/dev/mapper/m
path15p3
/dev/mapper/m
path14p2
/dev/mapper/m
path15p2
/dev/mapp
er/mpath14p1
/dev/mapp
er/mpath15p1
/dev/sdb1
/dev/sdb2
vice>
/dev/sdb3
vice>
/dev/sdb5
vice>
/dev/sd
b6
/dev/sd
b8
/dev/sdc1
/dev/sdc2
vice>
/dev/sdc3
vice>
/dev/sdc5
vice>
/dev/sdc8
vice>
/dev/sde1
/dev/sde2
vice>
/dev/sde3
vice>
/dev/sde5
vice>
/dev/sd
e6
/dev/sd
e8
/dev/sdf1
/dev/sdf2
vice>
/dev/sdf3
vice>
/dev/sdf5
vice>
/dev/sdf8
vice>

從輸出能看出一些端倪,凡是label為空的,就是asm磁盤丟失的。照這個思路,我手動在這個文件改了對應的3行,使其label=“DATA08”。DATA08是當時用oracleasm createdisk創建出來,預留下來的。因為沒有數據存在這個DATA08磁盤,所以就是破壞了,也無關緊要。接著執行oracleasm scandisks ; 再 oracleasm listdisks 還是沒有任何變化,看來這招也不靈。***重啟系統,看是否有效,還是一樣。后來才知,/etc/blkid/blkid.tab文件的內容是運行blkid后從系統目錄/dev下讀入數據再自動生成的。

難道只得重新推到再來一次?不甘心啊!倒不是怕數據丟失,而是擔心下次這個問題再次發生。#p#

再準備推到重來之前,我再來試試創建一個asm磁盤。還是拿沒有使用的/dev/mapper/mpath14p8分區來做,反正做壞了,也沒什么影響。當執行oracleasm createdisk DATA08 /dev/mapper/mpath14p8,沒有成功,其輸出為:

Device "/dev/mapper/mpath14p8" is already labeled for ASM disk“”

這個輸出給我很好的提示,它說明了asm 磁盤標簽是存在的,但其值為空(它本來的值應該是DATA08)。于是我就思量,能不能強制把它由空值改成原來的值呢?

不知道怎么改oracle asm磁盤標簽,不過這難不倒咱。打開文件 /etc/init.d/oracleasm瞧瞧,乖乖,找到了呢.看下面一段函數:

force_relabel_disk()
{
OLD="$1"
NEW="$2"
echo -n "Renaming disk \"${OLD}\" to \"${NEW}\": "
"${ORACLEASM}" renamedisk -f -v -l "${ORACLE_ASMMANAGER}" "${OLD}" \
"$2" 1>>/var/log/oracleasm 2>&1
if_fail "$?" "Unable to rename disk \"${OLD}\" see /var/log/oracleasm"
}

紅色字體這行,就是強制性改asm磁盤標簽的語法。迫不及待,馬上執行 oracleasm renamedisk -f /dev/mapper/mpath14p8 DATA08 ,很順利進行下去了。現在切換到目錄/dev/oracleasm/disks,設備文件DATA08出現了,心里一陣狂寫啊!在另一個主機上執行oracleasm scandisk ,接著執行oracleasm listdisks ,看見DATA08閃耀登場。由此可以預計,只要按以前的標簽名,把對應的asm磁盤強制改名,就應該可以恢復。

先不急于把所有的asm磁盤標簽恢復,從ocr所在的磁盤標簽做起。本案的ocr用了兩個asm 磁盤,其名稱為OCR1、OCR2(幸虧以前安裝rac的時候,做了屏幕錄像),執行下面兩條命令:

oracleasm renamedisk -f /dev/mapper/mpath14p1 OCR1
oracleasm renamedisk -f /dev/mapper/mpath15p1 OCR2

成功執行后,用 oracleasm scandisks掃描,檢查目錄/dev/oracleasm/disks,文件OCR1、ORC2都存在了;檢查 oracleasm listdisks的輸出,確實有OCR1和OCR2.

Ocr恢復了,可以試著啟動crs.以root命令執行 crsctl start crs ,回車后,系統一陣沉默,上個廁所回來,執行完畢返回shell提示符下。趕緊ps auxww|grep –I asm查看進程,asm實例確實起來了.切換到grid用戶,執行asmcd,順利進入交互模式,ASMCMD>ls 輸出為:

ASMCMD> ls
DGCRS/

注:DGCRS是由OCR1、OCR2兩者合并而成。

再另一個服務器上,啟動crs,asm實例正常運行起來了。

現在,可以放心的強制更改余下的asm標簽,完畢后目錄的文件日下:

[root@rac1 dev]# ll /dev/oracleasm/disks
total 0
brw-rw---- 1 grid oinstall 8, 18 Jul 26 17:05 DATA02
brw-rw---- 1 grid oinstall 8, 19 Jul 26 17:05 DATA03
brw-rw---- 1 grid oinstall 8, 21 Jul 26 17:05 DATA05
brw-rw---- 1 grid oinstall 8, 22 Jul 24 22:31 DATA06
brw-rw---- 1 grid oinstall 8, 24 Jul 26 17:05 DATA08
brw-rw---- 1 grid oinstall 8, 34 Jul 26 17:05 DATA12
brw-rw---- 1 grid oinstall 8, 35 Jul 26 17:05 DATA13
brw-rw---- 1 grid oinstall 8, 37 Jul 26 17:05 DATA15
brw-rw---- 1 grid oinstall 253, 14 Jul 24 22:41 DATA16
brw-rw---- 1 grid oinstall 8, 40 Jul 26 17:00 DATA18
brw-rw---- 1 grid oinstall 8, 17 Jul 26 17:05 OCR1
brw-rw---- 1 grid oinstall 8, 33 Jul 24 22:32 OCR2

確認無誤后,聯系相關人員告知要啟動數據庫了。再次檢查ORACLE_SID、asm磁盤標簽等,深呼吸一下,緩慢地輸入/u01/app/grid/bin/srvctl start database -d DD4QIGOU 回車,起身離座喝口統一鮮橙多(估計有塑化劑)。估計數據庫啟得差不多了,回坐查看,oracle實例全部正常起來。不過有一點意外,就是服務器交換了各自的實例(rac1運行的實例是db4qigou_2、而rac2運行的實例是db4qigou_1);這不要緊,關閉各種的實例,在rac1上執行$srvctl start instance -d DB4QIGOU -i DB4QIGOU_1 -n rac1 ,rac2上執行srvctl start instance -d DB4QIGOU -i DB4QIGOU_2 -n rac2就扳過來了。

原文:http://b.formyz.org/2011/0726/46.html

【編輯推薦】

  1. 在RHEL 6(x86)上安裝Oracle 10g R2
  2. Oracle推出虛擬桌面客戶端軟件 目標瞄準Citrix
  3. Oracle SQL:經典查詢練手***篇

 

責任編輯:黃丹 來源: b.formyz.org/
相關推薦

2010-04-26 10:24:12

Oracle ASM

2020-11-09 14:15:23

代碼菜鳥老司機

2010-04-14 14:30:35

Oracle ASM

2010-04-14 15:01:50

Oracle ASM

2011-03-04 12:46:57

Oracle數據庫自動存儲管理(ASM)

2011-10-14 14:16:51

2023-04-23 13:30:19

ERP廠商華為

2010-04-14 14:19:51

Oracle數據庫

2010-04-14 14:51:11

Oracle ASM

2015-05-11 09:12:02

2011-12-31 09:11:08

OracleAMD

2019-10-11 08:19:01

Oracle數據庫表空間設計

2009-06-04 13:32:57

菜鳥面試主考官

2023-10-10 09:26:18

2015-05-18 11:31:31

DockerIT技術評價新技術

2009-06-04 13:16:20

主考官面試菜鳥

2011-02-24 11:16:23

Konqueror

2011-12-01 10:14:45

2010-01-04 09:23:42

Windows 7特效開啟

2011-03-17 14:50:02

iptables
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 888久久久| 欧美精品在线观看 | 中文字幕在线免费观看 | 污污的网站在线观看 | 亚洲色图综合 | 国产精品中文字幕在线观看 | 99色综合| 日韩在线观看 | 精品国产乱码久久久久久a丨 | 欧美日韩在线一区二区 | 男人的天堂亚洲 | 精品欧美一区二区三区久久久 | 精品视频99 | 国产高清一区二区三区 | 欧美a级成人淫片免费看 | 在线中文字幕av | k8久久久一区二区三区 | 国产欧美精品 | 欧美色欧美亚洲另类七区 | 亚洲 欧美 日韩在线 | 夜夜夜操 | 国产精品乱码一二三区的特点 | av香蕉 | 中文字幕在线网 | 天天躁日日躁xxxxaaaa | 久久精品综合 | 国产在线1| www日本在线 | 视频一区二区中文字幕日韩 | 99综合 | 国产精品免费一区二区三区 | 久久综合久色欧美综合狠狠 | 白浆在线 | 国产精品一区二区av | 亚洲免费视频网址 | 日韩美香港a一级毛片免费 国产综合av | 色吧综合网 | 国产一级片 | 国产高清在线 | 久久久久国产一级毛片高清网站 | 一级毛片在线播放 |