自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

老菜鳥(niǎo)苦戰(zhàn)oracle asm

系統(tǒng) Linux
oracle asm磁盤(pán)標(biāo)簽丟失導(dǎo),而致整個(gè)集群和數(shù)據(jù)庫(kù)啟動(dòng)失敗。該如何排除故障呢?本文作者田逸將通過(guò)親身經(jīng)歷來(lái)為您講解“老菜鳥(niǎo)”如何苦戰(zhàn)oracle asm

 應(yīng)用環(huán)境描述

一、硬件

1、 服務(wù)器:2臺(tái)dell r610—16G內(nèi)存、2顆6核xeon cpu、2個(gè)146G sas盤(pán),做了raid1

2、 存儲(chǔ):dell MD3220 24個(gè)300G硬盤(pán)

3、 存儲(chǔ)連接:6GB HBA卡,2個(gè)通道都連線(xiàn)了

二、軟件

1、 系統(tǒng):64位centos 5.5

2、 系統(tǒng)內(nèi)核版本: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、 數(shù)據(jù)庫(kù)軟件:linux.x64_11gR2_database_1of2.zip、linux.x64_11gR2_database_2of2.zip

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

故障描述

一、故障前的情況:

1、 集群實(shí)例正常運(yùn)行

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

3、 數(shù)據(jù)庫(kù)實(shí)例正常

4、 監(jiān)聽(tīng)器正常

5、 客戶(hù)端遠(yuǎn)程連接正常

6、 多路徑訪(fǎng)問(wèn)正常

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

二、故障的起因:

1、 打算模擬服務(wù)器失效

2、 直接重啟兩個(gè)服務(wù)器 init 6

三、故障現(xiàn)象:

1、 兩個(gè)服務(wù)器的asm實(shí)例都沒(méi)有啟動(dòng)成功

2、 兩個(gè)服務(wù)器的oracle實(shí)例都沒(méi)有啟動(dòng)成功

3、 Crs等進(jìn)程啟動(dòng)幾個(gè),但基本上不能正常工作

4、 手動(dòng)啟動(dòng)crs,失敗

5、 以grid用戶(hù)手動(dòng)連接實(shí)例,強(qiáng)制啟動(dòng),失敗#p#

故障基本原因判斷

數(shù)據(jù)庫(kù)數(shù)據(jù)文件、集群軟件所需的ocr文件都存儲(chǔ)在asm設(shè)定的共享存儲(chǔ)中,由于集群軟件(包括asm實(shí)例)啟動(dòng)失敗而最終也導(dǎo)致數(shù)據(jù)庫(kù)實(shí)例啟動(dòng)失敗。

處理過(guò)程

一、定位故障點(diǎn):

1、查看系統(tǒng)進(jìn)程,發(fā)現(xiàn)ASM進(jìn)程沒(méi)有起來(lái)。但有少許grid相關(guān)的進(jìn)程,如下圖所示:

 

\

 

2、手動(dòng)執(zhí)行 /u01/app/grid/bin/crsctl start crs 失敗

3、查看設(shè)備文件目錄 /dev/mapper,發(fā)現(xiàn)共享存儲(chǔ)的分區(qū)全部存在

[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磁盤(pán)組出故障了,于是執(zhí)行 oracleasm listdisks,發(fā)現(xiàn)輸出只有一行,可實(shí)際上是10多行的。

[root@rac2 ~]# oracleasm listdisks
DATA06

5、執(zhí)行oracleasm scandisks掃描,再次查看輸出磁盤(pán),還是只有一個(gè)。查了網(wǎng)上的資料,也有這種情況,別人的經(jīng)驗(yàn)是多執(zhí)行幾次asm磁盤(pán)掃描就出來(lái)了,但對(duì)我這個(gè)情況無(wú)效。

6、當(dāng)我們初始化創(chuàng)建asm磁盤(pán)組時(shí),使用命令 oracleasm createdisk OCR1 /dev/mapper/mpath14p1 執(zhí)行成功后,將在目錄/dev/oracleasm/disks目錄生成OCR1這個(gè)文件,文件名就是asm的磁盤(pán)名;創(chuàng)建多少asm磁盤(pán),就會(huì)有多少同名文件。進(jìn)入目錄/dev/oracleasm/disks,查看一下,只剩下一個(gè)塊設(shè)備文件DATA06,其余的全部不見(jiàn)了。

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

與oracleasm listdisks 輸出的結(jié)果完全一致,由此可知asm磁盤(pán)組與操作系統(tǒng)這個(gè)目錄有直接的關(guān)聯(lián)。這幾者的關(guān)系可以如下圖標(biāo)識(shí):

 

\

 

現(xiàn)在要做的事情是能不能恢復(fù)余下的磁盤(pán)文件。#p#

二、處理方法

1、先上網(wǎng)搜索一下吧,搜出來(lái)不少,都是建議用dd清理磁盤(pán),然后再用oracleasm createdisk 重新創(chuàng)建磁盤(pán)組。但我擔(dān)心這樣做,asm磁盤(pán)里面的數(shù)據(jù)會(huì)全部丟失,沒(méi)敢這樣嘗試。

2、打電話(huà)問(wèn)我原來(lái)的同事,他現(xiàn)在轉(zhuǎn)行做dba了。他告訴我,看看是不是設(shè)備文件的權(quán)限問(wèn)題,我到服務(wù)器上去查看,發(fā)現(xiàn)一個(gè)機(jī)器的/dev/mapper/mpath* 的屬主是 root:disk,而另一個(gè)服務(wù)器相應(yīng)的目錄屬主卻是grid:oinstall。按照他的建議,我在文件/etc/rc.local寫(xiě)入了行“chown –R grid:oinstall”,然后重啟系統(tǒng),查看目錄確實(shí)屬主按我的意愿變成grid:root,但asm磁盤(pán)仍然不能識(shí)別,看來(lái)問(wèn)題不在這里。

3、在多個(gè)qq群發(fā)送消息,有說(shuō)權(quán)限問(wèn)題的,也有建議oracleasm scandisk 的。還有的人認(rèn)為oracleasm服務(wù)沒(méi)有運(yùn)行起來(lái)。還有的人說(shuō)是裸設(shè)備權(quán)限問(wèn)題,我可是沒(méi)有使用裸設(shè)備啊,打開(kāi)文件/etc/sysconfig/rawdevices,沒(méi)有任何生效的文本行(全部被注釋上了),這應(yīng)診了沒(méi)有使用裸設(shè)備。

搞了好幾天,沒(méi)得進(jìn)展。一天睡在床上,有想起這個(gè)問(wèn)題,既然/dev/oracleasm/disks有DATA06這個(gè)文件,能不能手工創(chuàng)建一些呢(即丟失的那些文件),于是又爬起來(lái)。但當(dāng)我手動(dòng)執(zhí)行touch /dev/oracleasm/disks/DATA08時(shí),提示沒(méi)有權(quán)限??磥?lái),只能用mknod之類(lèi)的命令才可以在這個(gè)目錄創(chuàng)建文件。

念頭一轉(zhuǎn),又想:既然DATA06這個(gè)文件存在,可能會(huì)在某些文件中有記錄吧?執(zhí)行g(shù)rep DATA06 /etc -r 全路徑搜索,還真搜到一個(gè)文件 /etc/blkid/blkid.tab,這個(gè)文件的如下:

[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磁盤(pán)丟失的。照這個(gè)思路,我手動(dòng)在這個(gè)文件改了對(duì)應(yīng)的3行,使其label=“DATA08”。DATA08是當(dāng)時(shí)用oracleasm createdisk創(chuàng)建出來(lái),預(yù)留下來(lái)的。因?yàn)闆](méi)有數(shù)據(jù)存在這個(gè)DATA08磁盤(pán),所以就是破壞了,也無(wú)關(guān)緊要。接著執(zhí)行oracleasm scandisks ; 再 oracleasm listdisks 還是沒(méi)有任何變化,看來(lái)這招也不靈。***重啟系統(tǒng),看是否有效,還是一樣。后來(lái)才知,/etc/blkid/blkid.tab文件的內(nèi)容是運(yùn)行blkid后從系統(tǒng)目錄/dev下讀入數(shù)據(jù)再自動(dòng)生成的。

難道只得重新推到再來(lái)一次?不甘心啊!倒不是怕數(shù)據(jù)丟失,而是擔(dān)心下次這個(gè)問(wèn)題再次發(fā)生。#p#

再準(zhǔn)備推到重來(lái)之前,我再來(lái)試試創(chuàng)建一個(gè)asm磁盤(pán)。還是拿沒(méi)有使用的/dev/mapper/mpath14p8分區(qū)來(lái)做,反正做壞了,也沒(méi)什么影響。當(dāng)執(zhí)行oracleasm createdisk DATA08 /dev/mapper/mpath14p8,沒(méi)有成功,其輸出為:

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

這個(gè)輸出給我很好的提示,它說(shuō)明了asm 磁盤(pán)標(biāo)簽是存在的,但其值為空(它本來(lái)的值應(yīng)該是DATA08)。于是我就思量,能不能強(qiáng)制把它由空值改成原來(lái)的值呢?

不知道怎么改oracle asm磁盤(pán)標(biāo)簽,不過(guò)這難不倒咱。打開(kāi)文件 /etc/init.d/oracleasm瞧瞧,乖乖,找到了呢.看下面一段函數(shù):

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"
}

紅色字體這行,就是強(qiáng)制性改asm磁盤(pán)標(biāo)簽的語(yǔ)法。迫不及待,馬上執(zhí)行 oracleasm renamedisk -f /dev/mapper/mpath14p8 DATA08 ,很順利進(jìn)行下去了。現(xiàn)在切換到目錄/dev/oracleasm/disks,設(shè)備文件DATA08出現(xiàn)了,心里一陣狂寫(xiě)啊!在另一個(gè)主機(jī)上執(zhí)行oracleasm scandisk ,接著執(zhí)行oracleasm listdisks ,看見(jiàn)DATA08閃耀登場(chǎng)。由此可以預(yù)計(jì),只要按以前的標(biāo)簽名,把對(duì)應(yīng)的asm磁盤(pán)強(qiáng)制改名,就應(yīng)該可以恢復(fù)。

先不急于把所有的asm磁盤(pán)標(biāo)簽恢復(fù),從ocr所在的磁盤(pán)標(biāo)簽做起。本案的ocr用了兩個(gè)asm 磁盤(pán),其名稱(chēng)為OCR1、OCR2(幸虧以前安裝rac的時(shí)候,做了屏幕錄像),執(zhí)行下面兩條命令:

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

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

Ocr恢復(fù)了,可以試著啟動(dòng)crs.以root命令執(zhí)行 crsctl start crs ,回車(chē)后,系統(tǒng)一陣沉默,上個(gè)廁所回來(lái),執(zhí)行完畢返回shell提示符下。趕緊ps auxww|grep –I asm查看進(jìn)程,asm實(shí)例確實(shí)起來(lái)了.切換到grid用戶(hù),執(zhí)行asmcd,順利進(jìn)入交互模式,ASMCMD>ls 輸出為:

ASMCMD> ls
DGCRS/

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

再另一個(gè)服務(wù)器上,啟動(dòng)crs,asm實(shí)例正常運(yùn)行起來(lái)了。

現(xiàn)在,可以放心的強(qiáng)制更改余下的asm標(biāo)簽,完畢后目錄的文件日下:

[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

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

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

【編輯推薦】

  1. 在RHEL 6(x86)上安裝Oracle 10g R2
  2. Oracle推出虛擬桌面客戶(hù)端軟件 目標(biāo)瞄準(zhǔn)Citrix
  3. Oracle SQL:經(jīng)典查詢(xún)練手***篇

 

責(zé)任編輯:黃丹 來(lái)源: b.formyz.org/
相關(guān)推薦

2010-04-26 10:24:12

Oracle ASM

2010-04-14 14:30:35

Oracle ASM

2020-11-09 14:15:23

代碼菜鳥(niǎo)老司機(jī)

2010-04-14 15:01:50

Oracle ASM

2011-03-04 12:46:57

Oracle數(shù)據(jù)庫(kù)自動(dòng)存儲(chǔ)管理(ASM)

2010-04-14 14:19:51

Oracle數(shù)據(jù)庫(kù)

2011-10-14 14:16:51

2010-04-14 14:51:11

Oracle ASM

2023-04-23 13:30:19

ERP廠(chǎng)商華為

2015-05-11 09:12:02

2011-12-31 09:11:08

OracleAMD

2019-10-11 08:19:01

Oracle數(shù)據(jù)庫(kù)表空間設(shè)計(jì)

2009-06-04 13:32:57

菜鳥(niǎo)面試主考官

2023-10-10 09:26:18

2015-05-18 11:31:31

DockerIT技術(shù)評(píng)價(jià)新技術(shù)

2009-06-04 13:16:20

主考官面試菜鳥(niǎo)

2011-02-24 11:16:23

Konqueror

2011-03-17 14:50:02

iptables

2011-02-22 11:21:54

vsFTPD設(shè)置

2021-02-18 22:21:20

ASM服務(wù)組件化
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)