您好,登錄后才能下訂單哦!
本篇內(nèi)容主要講解“Oracle ASM Filter Driver的相關(guān)知識點(diǎn)有哪些”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“Oracle ASM Filter Driver的相關(guān)知識點(diǎn)有哪些”吧!
Oracle ASM Filter Driver(Oracle ASMFD)消除了在系統(tǒng)每次被重啟后Oracle ASM需要重新綁定磁盤設(shè)備來簡化對磁盤設(shè)備的配置與管理。Oracle ASM Filter Driver(Oracle ASMFD)是一種內(nèi)置在Oracle ASM磁盤的IO路徑中的內(nèi)核模塊。Oracle ASM使用filter driver來驗(yàn)證對Oracle ASM磁盤的寫IO操作。Oracle ASM Filter Driver會拒絕任何無效的IO請求。這種操作消除了意外覆蓋Oracle ASM磁盤而損壞磁盤組中的磁盤與文件。例如,Oracle ASM Filter Driver會過濾掉所有可能意外覆蓋磁盤的非Oracle IO操作。從Oracle 12.2開始,Oracle ASM Filter Driver(Oracle ASMFD)在系統(tǒng)安裝Oracle ASMLIB的情況下不能被安裝,如果你想安裝與配置Oracle ASMFD,那么必須首先卸載Oracle ASMLIB。Oracle 12.2的ASMFD不支持?jǐn)U展分區(qū)表。
配置Oracle ASM Filter Driver
可以在安裝Oracle Grid Infrastructure時(shí)或在安裝Oracle Grid Infrastructure后對磁盤設(shè)備永久性配置Oracle ASM Filter Driver(Oracle ASMFD)。
在安裝Oracle Grid Infrastructure時(shí)配置Oracle ASM Filter Driver
在安裝Oracle Grid Infrastructure時(shí),可以選擇啟用自動安裝與配置Oracle ASM Filter Driver。如果在安裝Oracle Grid Infrastructure所在的系統(tǒng)中沒有使用udev,那么可以在在安裝Oracle Grid Infrastructure之前執(zhí)行下面的操作來為Oracle ASMFD準(zhǔn)備磁盤。下面的操作必須在Oracle Grid Infrastructure軟件包在Oracle Grid Infrastructure home目錄中必須解壓后,但在配置ASMFD之前執(zhí)行。
1.為了使用Oracle ASM Filter Driver來配置共享磁盤,以root用戶來設(shè)置環(huán)境變量$ORACLE_HOME為Grid Home目錄,設(shè)置環(huán)境變量$ORACLE_BASE為臨時(shí)目錄
# set ORACLE_HOME=/u01/app/oracle/12.2.0/grid # set ORACLE_BASE=/tmp
ORACLE_BASE變量被設(shè)置為臨時(shí)目錄可以避免在安裝Oracle Grid Infrastructure之前在Grid Home目錄中創(chuàng)建診斷或跟蹤文件。在執(zhí)行下面的操作之前,確保是在$ORACLE_HOME/bin目錄中執(zhí)行命令。
2.使用ASMCMD afd_label命令來為Oracle ASM Filter Driver來準(zhǔn)備磁盤.
#asmcmd afd_label DATA1 /dev/disk1a --init
3.使用ASMCMD afd_lslbl命令來驗(yàn)證磁盤是否已經(jīng)被標(biāo)記可以為Oracle ASMFD所使用
#asmcmd afd_lslbl /dev/disk1a
查看某塊磁盤
[rootd@cs1 ~]./asmcmd afd_lslbl /dev/asmdisk01 -------------------------------------------------------------------------------- Label Duplicate Path ================================================================================ CRS2 /dev/asmdisk01
列出已經(jīng)標(biāo)記可以為Oracle ASMFD所使用的所有磁盤
[grid@jytest1 ~]$ asmcmd afd_lslbl -------------------------------------------------------------------------------- Label Duplicate Path ================================================================================ CRS1 /dev/asmdisk02 CRS2 /dev/asmdisk01 DATA1 /dev/asmdisk03 DATA2 /dev/asmdisk04 FRA1 /dev/asmdisk07 TEST1 /dev/asmdisk05 TEST2 /dev/asmdisk06
4.當(dāng)為Oracle ASMFD準(zhǔn)備完磁盤后清除變量ORACLE_BASE
# unset ORACLE_BASE
5.運(yùn)行安裝腳本(gridSetup.sh)來安裝Oracle Grid Infrastructure并啟用Oracle ASM Filter Driver配置。
在安裝Oracle Grid Infrastructure后配置Oracle ASM Filter Driver
如果在安裝Grid Infrastructure時(shí)沒有啟用配置Oracle ASMFD,那么可以使用Oracle ASMFD來手動配置Oracle ASM設(shè)備。
為Oracle Grid Infrastructure Clusterware環(huán)境配置Oracle ASM,具體操作如下:
1.以O(shè)racle Grid Infrastructure用戶來更新Oracle ASM磁盤發(fā)現(xiàn)路徑來使Oracle ASMFD來發(fā)現(xiàn)磁盤。
首先檢查當(dāng)前Oracle ASM磁盤發(fā)現(xiàn)路徑并更新
[grid@cs1 ~]$ asmcmd dsget parameter:/dev/sd*, /dev/asm* profile:/dev/sd*,/dev/asm*
將'AFD:*'增加到發(fā)現(xiàn)磁盤路徑中
[grid@cs1 ~]$ asmcmd dsset 'dev/sd*','/dev/asm*','AFD:*' [grid@cs1 ~]$ asmcmd dsget parameter:dev/sd*, /dev/asm*, AFD:* profile:dev/sd*,/dev/asm*,AFD:*
2.以O(shè)racle Grid Infrastructure用戶來獲取cluster中的節(jié)點(diǎn)列表與角色
[grid@cs1 ~]$ olsnodes -a cs1 Hub cs2 Hub
3.在每個(gè)Hub與Leaf節(jié)點(diǎn)上,可以以回滾或非回滾模式來執(zhí)行以下操作
3.1以root用戶來停止Oracle Grid Infrastructure
# $ORACLE_HOME/bin/crsctl stop crs
如果命令返回錯(cuò)誤,那么執(zhí)行下面的命令來強(qiáng)制停止Oracle Grid Infrastructure
# $ORACLE_HOME/bin/crsctl stop crs -f
3.2在節(jié)點(diǎn)層面以root用戶來配置Oracle ASMFD
# $ORACLE_HOME/bin/asmcmd afd_configure
3.3以O(shè)racle Grid Infrastructure用戶來驗(yàn)證Oracle ASMFD的狀態(tài)
[grid@cs2 ~]$ asmcmd afd_state ASMCMD-9526: The AFD state is 'LOADED' and filtering is 'ENABLED' on host 'cs2.jy.net'
3.4以root用戶來啟動Oracle Clusterware stack
# $ORACLE_HOME/bin/crsctl start crs
3.5以O(shè)racle Grid Infrastructure用戶來設(shè)置Oracle ASMFD發(fā)現(xiàn)磁盤路徑為步驟3.1中所檢索到的原始Oracle ASM磁盤發(fā)現(xiàn)路徑
[grid@cs1 ~]$ asmcmd dsset 'dev/sd*','/dev/asm*'
遷移不包含OCR或vote文件的磁盤組到Oracle ASMFD
1.以O(shè)racle Grid Infrastructure用戶來執(zhí)行以下操作
2.列出已經(jīng)存在的磁盤組
[grid@cs2 ~]$ asmcmd lsdg State Type Rebal Sector Logical_Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Voting_files Name MOUNTED EXTERN N 512 512 4096 4194304 40960 1544 0 1544 0 Y CRS/ MOUNTED EXTERN N 512 512 4096 4194304 40960 860 0 860 0 N DATA/ MOUNTED NORMAL N 512 512 4096 4194304 40960 40704 0 20352 0 N DN/
3.列出相關(guān)磁盤
[grid@cs2 ~]$ asmcmd lsdsk -G DN Path /dev/asmdisk03 /dev/asmdisk05
從下面的查詢可以看到/dev/asmdisk03和/dev/asmdisk05的label字段為空
SQL> select group_number,disk_number,name,label,path from v$asm_disk; GROUP_NUMBER DISK_NUMBER NAME LABEL PATH ------------ ----------- ------------------------------ -------------------------------------------------- -------------------------------------------------- 0 0 CRS2 /dev/asmdisk01 0 1 CRS1 /dev/asmdisk02 0 2 DATA1 /dev/asmdisk04 3 0 DN_0000 /dev/asmdisk03 3 1 DN_0001 /dev/asmdisk05 1 0 CRS1 CRS1 AFD:CRS1 2 0 DATA1 DATA1 AFD:DATA1 1 1 CRS2 CRS2 AFD:CRS2
4.檢查Oracle ASM是否是活動狀態(tài)
[grid@cs2 ~]$ srvctl status asm ASM is running on cs1,cs2
5.在所有節(jié)點(diǎn)上停止數(shù)據(jù)庫與dismount磁盤組
[grid@cs2 ~]$srvctl stop diskgroup -diskgroup DN -f
6.在每個(gè)Hub節(jié)點(diǎn)上執(zhí)行以下命令來為磁盤組中的所有已經(jīng)存在的磁盤進(jìn)行標(biāo)記
[grid@cs2 ~]$ asmcmd afd_label DN1 /dev/asmdisk03 --migrate [grid@cs2 ~]$ asmcmd afd_label DN2 /dev/asmdisk05 --migrate
7.在所有Hub節(jié)點(diǎn)上掃描磁盤
[grid@cs1 ~]$ asmcmd afd_scan [grid@cs2 ~]$ asmcmd afd_scan
8.在所有節(jié)點(diǎn)啟動數(shù)據(jù)庫并mount磁盤組
[grid@cs2 ~]$ srvctl start diskgroup -diskgroup DN
從下面的查詢可以看到/dev/asmdisk03和/dev/asmdisk05的label字段分別顯示為DN1和DN2
SQL> select group_number,disk_number,name,label,path from v$asm_disk; GROUP_NUMBER DISK_NUMBER NAME LABEL PATH ------------ ----------- ------------------------------ -------------------------------------------------- -------------------------------------------------- 0 0 CRS2 /dev/asmdisk01 0 1 DN2 /dev/asmdisk05 0 2 DN1 /dev/asmdisk03 0 3 CRS1 /dev/asmdisk02 0 4 DATA1 /dev/asmdisk04 1 1 CRS2 CRS2 AFD:CRS2 2 0 DATA1 DATA1 AFD:DATA1 1 0 CRS1 CRS1 AFD:CRS1 3 0 DN_0000 DN1 AFD:DN1 3 1 DN_0001 DN2 AFD:DN2
現(xiàn)在可以將原先的 udev rules 文件移除。當(dāng)然,這要在所有節(jié)點(diǎn)中都運(yùn)行。以后如果服務(wù)器再次重啟,AFD 就會完全接管了。
[root@cs1 bin]# cd /etc/udev/rules.d/ [root@cs1 rules.d]# ls -lrt total 16 -rw-r--r--. 1 root root 709 Mar 6 2015 70-persistent-ipoib.rules -rw-r--r-- 1 root root 1416 Mar 9 12:23 99-my-asmdevices.rules -rw-r--r-- 1 root root 224 Mar 9 15:52 53-afd.rules -rw-r--r-- 1 root root 190 Mar 9 15:54 55-usm.rules [root@cs1 rules.d]# mv 99-my-asmdevices.rules 99-my-asmdevices.rules.bak [root@cs1 rules.d]# cat 53-afd.rules # # AFD devices KERNEL=="oracleafd/.*", OWNER="grid", GROUP="asmadmin", MODE="0775" KERNEL=="oracleafd/*", OWNER="grid", GROUP="asmadmin", MODE="0775" KERNEL=="oracleafd/disks/*", OWNER="grid", GROUP="asmadmin", MODE="0664" [root@cs1 rules.d]# ls -l /dev/oracleafd/disks total 20 -rwxrwx--- 1 grid oinstall 15 Aug 30 14:30 CRS1 -rwxrwx--- 1 grid oinstall 15 Aug 30 14:30 CRS2 -rwxrwx--- 1 grid oinstall 15 Aug 30 14:30 DATA1 -rwxrwx--- 1 grid oinstall 15 Aug 30 17:42 DN1 -rwxrwx--- 1 grid oinstall 15 Aug 30 17:42 DN2 [root@cs2 bin]# cd /etc/udev/rules.d/ [root@cs2 rules.d]# ls -lrt total 16 -rw-r--r--. 1 root root 709 Mar 6 2015 70-persistent-ipoib.rules -rw-r--r-- 1 root root 1416 Mar 9 12:23 99-my-asmdevices.rules -rw-r--r-- 1 root root 224 Mar 9 15:52 53-afd.rules -rw-r--r-- 1 root root 190 Mar 9 15:54 55-usm.rules [root@cs2 rules.d]# mv 99-my-asmdevices.rules 99-my-asmdevices.rules.bak [root@cs2 rules.d]# cat 53-afd.rules # # AFD devices KERNEL=="oracleafd/.*", OWNER="grid", GROUP="asmadmin", MODE="0775" KERNEL=="oracleafd/*", OWNER="grid", GROUP="asmadmin", MODE="0775" KERNEL=="oracleafd/disks/*", OWNER="grid", GROUP="asmadmin", MODE="0664" [root@cs2 rules.d]# ls -l /dev/oracleafd/disks total 20 -rwxrwx--- 1 grid oinstall 15 Aug 30 14:30 CRS1 -rwxrwx--- 1 grid oinstall 15 Aug 30 14:30 CRS2 -rwxrwx--- 1 grid oinstall 15 Aug 30 14:30 DATA1 -rwxrwx--- 1 grid oinstall 15 Aug 30 17:42 DN1 -rwxrwx--- 1 grid oinstall 15 Aug 30 17:42 DN2
其實(shí),AFD 也在使用 udev
遷移包含OCR或vote文件的磁盤組到Oracle ASMFD
1.以root用戶來列出包含OCR和vote文件的磁盤組
[root@cs1 ~]# cd /u01/app/product/12.2.0/crs/bin [root@cs1 bin]# sh ocrcheck -config Oracle Cluster Registry configuration is : Device/File Name : +CRS Device/File Name : +DATA [root@cs1 bin]# sh crsctl query css votedisk ## STATE File Universal Id File Name Disk group -- ----- ----------------- --------- --------- 1. ONLINE 750a78e1ae984fcdbfb4dbf44d337a77 (/dev/asmdisk02) [CRS] Located 1 voting disk(s).
2.以O(shè)racle Grid Infrastructure用戶來列出與磁盤組相關(guān)的磁盤
[grid@cs2 ~]$ asmcmd lsdsk -G CRS Path /dev/asmdisk01 /dev/asmdisk02
3.以root用戶來在所有節(jié)點(diǎn)上停止數(shù)據(jù)庫與Oracle Clusterware
[root@cs1 bin]# ./crsctl stop cluster -all CRS-2673: Attempting to stop 'ora.crsd' on 'cs2' CRS-2673: Attempting to stop 'ora.crsd' on 'cs1' CRS-2790: Starting shutdown of Cluster Ready Services-managed resources on server 'cs2' CRS-2790: Starting shutdown of Cluster Ready Services-managed resources on server 'cs1' CRS-2673: Attempting to stop 'ora.cs.db' on 'cs1' CRS-2673: Attempting to stop 'ora.qosmserver' on 'cs2' CRS-2673: Attempting to stop 'ora.cs.db' on 'cs2' CRS-2673: Attempting to stop 'ora.chad' on 'cs2' CRS-2673: Attempting to stop 'ora.gns' on 'cs2' CRS-2677: Stop of 'ora.gns' on 'cs2' succeeded CRS-2677: Stop of 'ora.cs.db' on 'cs2' succeeded CRS-2673: Attempting to stop 'ora.CRS.dg' on 'cs2' CRS-2673: Attempting to stop 'ora.DATA.dg' on 'cs2' CRS-2673: Attempting to stop 'ora.LISTENER.lsnr' on 'cs2' CRS-2673: Attempting to stop 'ora.LISTENER_SCAN2.lsnr' on 'cs2' CRS-2673: Attempting to stop 'ora.LISTENER_SCAN3.lsnr' on 'cs2' CRS-2673: Attempting to stop 'ora.cvu' on 'cs2' CRS-2673: Attempting to stop 'ora.gns.vip' on 'cs2' CRS-2677: Stop of 'ora.cs.db' on 'cs1' succeeded CRS-2677: Stop of 'ora.CRS.dg' on 'cs2' succeeded CRS-2673: Attempting to stop 'ora.LISTENER.lsnr' on 'cs1' CRS-2673: Attempting to stop 'ora.LISTENER_SCAN1.lsnr' on 'cs1' CRS-2677: Stop of 'ora.DATA.dg' on 'cs2' succeeded CRS-2673: Attempting to stop 'ora.asm' on 'cs2' CRS-2677: Stop of 'ora.asm' on 'cs2' succeeded CRS-2677: Stop of 'ora.LISTENER.lsnr' on 'cs1' succeeded CRS-2673: Attempting to stop 'ora.ASMNET1LSNR_ASM.lsnr' on 'cs2' CRS-2677: Stop of 'ora.LISTENER_SCAN1.lsnr' on 'cs1' succeeded CRS-2673: Attempting to stop 'ora.scan1.vip' on 'cs1' CRS-2677: Stop of 'ora.LISTENER.lsnr' on 'cs2' succeeded CRS-2677: Stop of 'ora.LISTENER_SCAN3.lsnr' on 'cs2' succeeded CRS-2677: Stop of 'ora.LISTENER_SCAN2.lsnr' on 'cs2' succeeded CRS-2677: Stop of 'ora.scan1.vip' on 'cs1' succeeded CRS-2673: Attempting to stop 'ora.cs2.vip' on 'cs2' CRS-2673: Attempting to stop 'ora.scan2.vip' on 'cs2' CRS-2673: Attempting to stop 'ora.scan3.vip' on 'cs2' CRS-2677: Stop of 'ora.gns.vip' on 'cs2' succeeded CRS-2677: Stop of 'ora.scan3.vip' on 'cs2' succeeded CRS-2677: Stop of 'ora.cs2.vip' on 'cs2' succeeded CRS-2677: Stop of 'ora.qosmserver' on 'cs2' succeeded CRS-2677: Stop of 'ora.scan2.vip' on 'cs2' succeeded CRS-2677: Stop of 'ora.ASMNET1LSNR_ASM.lsnr' on 'cs2' succeeded CRS-2673: Attempting to stop 'ora.chad' on 'cs1' CRS-2677: Stop of 'ora.cvu' on 'cs2' succeeded CRS-2677: Stop of 'ora.chad' on 'cs2' succeeded CRS-2673: Attempting to stop 'ora.ons' on 'cs2' CRS-2677: Stop of 'ora.ons' on 'cs2' succeeded CRS-2673: Attempting to stop 'ora.net1.network' on 'cs2' CRS-2677: Stop of 'ora.net1.network' on 'cs2' succeeded CRS-2792: Shutdown of Cluster Ready Services-managed resources on 'cs2' has completed CRS-2677: Stop of 'ora.crsd' on 'cs2' succeeded CRS-2673: Attempting to stop 'ora.ctssd' on 'cs2' CRS-2673: Attempting to stop 'ora.evmd' on 'cs2' CRS-2673: Attempting to stop 'ora.storage' on 'cs2' CRS-2677: Stop of 'ora.storage' on 'cs2' succeeded CRS-2673: Attempting to stop 'ora.asm' on 'cs2' CRS-2677: Stop of 'ora.ctssd' on 'cs2' succeeded CRS-2677: Stop of 'ora.evmd' on 'cs2' succeeded CRS-2677: Stop of 'ora.chad' on 'cs1' succeeded CRS-2673: Attempting to stop 'ora.mgmtdb' on 'cs1' CRS-2677: Stop of 'ora.mgmtdb' on 'cs1' succeeded CRS-2673: Attempting to stop 'ora.MGMTLSNR' on 'cs1' CRS-2673: Attempting to stop 'ora.CRS.dg' on 'cs1' CRS-2673: Attempting to stop 'ora.DATA.dg' on 'cs1' CRS-2677: Stop of 'ora.CRS.dg' on 'cs1' succeeded CRS-2677: Stop of 'ora.DATA.dg' on 'cs1' succeeded CRS-2673: Attempting to stop 'ora.asm' on 'cs1' CRS-2677: Stop of 'ora.MGMTLSNR' on 'cs1' succeeded CRS-2673: Attempting to stop 'ora.cs1.vip' on 'cs1' CRS-2677: Stop of 'ora.cs1.vip' on 'cs1' succeeded CRS-2677: Stop of 'ora.asm' on 'cs2' succeeded CRS-2673: Attempting to stop 'ora.cluster_interconnect.haip' on 'cs2' CRS-2677: Stop of 'ora.cluster_interconnect.haip' on 'cs2' succeeded CRS-2673: Attempting to stop 'ora.cssd' on 'cs2' CRS-2677: Stop of 'ora.cssd' on 'cs2' succeeded CRS-2677: Stop of 'ora.asm' on 'cs1' succeeded CRS-2673: Attempting to stop 'ora.ASMNET1LSNR_ASM.lsnr' on 'cs1' CRS-2677: Stop of 'ora.ASMNET1LSNR_ASM.lsnr' on 'cs1' succeeded CRS-2673: Attempting to stop 'ora.ons' on 'cs1' CRS-2677: Stop of 'ora.ons' on 'cs1' succeeded CRS-2673: Attempting to stop 'ora.net1.network' on 'cs1' CRS-2677: Stop of 'ora.net1.network' on 'cs1' succeeded CRS-2792: Shutdown of Cluster Ready Services-managed resources on 'cs1' has completed CRS-2677: Stop of 'ora.crsd' on 'cs1' succeeded CRS-2673: Attempting to stop 'ora.ctssd' on 'cs1' CRS-2673: Attempting to stop 'ora.evmd' on 'cs1' CRS-2673: Attempting to stop 'ora.storage' on 'cs1' CRS-2677: Stop of 'ora.storage' on 'cs1' succeeded CRS-2673: Attempting to stop 'ora.asm' on 'cs1' CRS-2677: Stop of 'ora.ctssd' on 'cs1' succeeded CRS-2677: Stop of 'ora.evmd' on 'cs1' succeeded CRS-2677: Stop of 'ora.asm' on 'cs1' succeeded CRS-2673: Attempting to stop 'ora.cluster_interconnect.haip' on 'cs1' CRS-2677: Stop of 'ora.cluster_interconnect.haip' on 'cs1' succeeded CRS-2673: Attempting to stop 'ora.cssd' on 'cs1' CRS-2677: Stop of 'ora.cssd' on 'cs1' succeeded
4.以O(shè)racle Grid Infrastructure用戶來執(zhí)行下面的命令為每個(gè)Hub節(jié)點(diǎn)上的磁盤組中的磁盤進(jìn)行標(biāo)記
[grid@cs2 ~]$ asmcmd afd_label DN1 /dev/asmdisk03 [grid@cs2 ~]$ asmcmd afd_label DN2 /dev/asmdisk05
5.以O(shè)racle Grid Infrastructure用戶來執(zhí)行下面的命令對每個(gè)Hub節(jié)點(diǎn)進(jìn)行磁盤重新掃描
[grid@cs1 ~]$ asmcmd afd_scan [grid@cs2 ~]$ asmcmd afd_scan
6.以root用戶來在所有節(jié)點(diǎn)上啟用Oracle Clusterware stack并mount OCR與vote文件磁盤與數(shù)據(jù)庫
[root@cs1 bin]# ./crsctl start cluster -all CRS-2672: Attempting to start 'ora.cssdmonitor' on 'cs1' CRS-2672: Attempting to start 'ora.evmd' on 'cs1' CRS-2672: Attempting to start 'ora.cssdmonitor' on 'cs2' CRS-2672: Attempting to start 'ora.evmd' on 'cs2' CRS-2676: Start of 'ora.cssdmonitor' on 'cs1' succeeded CRS-2672: Attempting to start 'ora.cssd' on 'cs1' CRS-2672: Attempting to start 'ora.diskmon' on 'cs1' CRS-2676: Start of 'ora.diskmon' on 'cs1' succeeded CRS-2676: Start of 'ora.evmd' on 'cs1' succeeded CRS-2676: Start of 'ora.cssdmonitor' on 'cs2' succeeded CRS-2672: Attempting to start 'ora.cssd' on 'cs2' CRS-2672: Attempting to start 'ora.diskmon' on 'cs2' CRS-2676: Start of 'ora.diskmon' on 'cs2' succeeded CRS-2676: Start of 'ora.evmd' on 'cs2' succeeded CRS-2676: Start of 'ora.cssd' on 'cs1' succeeded CRS-2672: Attempting to start 'ora.ctssd' on 'cs1' CRS-2672: Attempting to start 'ora.cluster_interconnect.haip' on 'cs1' CRS-2676: Start of 'ora.cssd' on 'cs2' succeeded CRS-2672: Attempting to start 'ora.ctssd' on 'cs2' CRS-2672: Attempting to start 'ora.cluster_interconnect.haip' on 'cs2' CRS-2676: Start of 'ora.ctssd' on 'cs1' succeeded CRS-2676: Start of 'ora.ctssd' on 'cs2' succeeded CRS-2676: Start of 'ora.cluster_interconnect.haip' on 'cs1' succeeded CRS-2672: Attempting to start 'ora.asm' on 'cs1' CRS-2676: Start of 'ora.cluster_interconnect.haip' on 'cs2' succeeded CRS-2672: Attempting to start 'ora.asm' on 'cs2' CRS-2676: Start of 'ora.asm' on 'cs2' succeeded CRS-2672: Attempting to start 'ora.storage' on 'cs2' CRS-2676: Start of 'ora.asm' on 'cs1' succeeded CRS-2672: Attempting to start 'ora.storage' on 'cs1' CRS-2676: Start of 'ora.storage' on 'cs1' succeeded CRS-2672: Attempting to start 'ora.crsd' on 'cs1' CRS-2676: Start of 'ora.crsd' on 'cs1' succeeded CRS-2676: Start of 'ora.storage' on 'cs2' succeeded CRS-2672: Attempting to start 'ora.crsd' on 'cs2' CRS-2676: Start of 'ora.crsd' on 'cs2' succeeded
判斷Oracle ASM Filter Driver是否已經(jīng)配置
可以通過判斷Oracle ASM實(shí)例的SYS_ASMFD_PROPERTIES的AFD_STATE參數(shù)值來判斷Oracle ASMFD是否被配置。也可以使用ASMCMD afd_state命令來檢查Oracle ASMFD的狀態(tài)
[grid@cs1 ~]$ asmcmd afd_state ASMCMD-9526: The AFD state is 'LOADED' and filtering is 'DISABLED' on host 'cs1.jy.net' [grid@cs2 ~]$ asmcmd afd_state ASMCMD-9526: The AFD state is 'LOADED' and filtering is 'ENABLED' on host 'cs2.jy.net'
下面的查詢?nèi)绻鸄FD_STATE參數(shù)值等于NOT AVAILABLE就表示Oracle ASMFD沒有被配置
SQL> select sys_context('SYS_ASMFD_PROPERTIES', 'AFD_STATE') from dual; SYS_CONTEXT('SYS_ASMFD_PROPERTIES','AFD_STATE') --------------------------------------------------------------------------- CONFIGURED
設(shè)置Oracle ASM Filter Driver的AFD_DISKSTRING參數(shù)
AFD_DISKSTRING參數(shù)來指定Oracle ASMFD磁盤發(fā)現(xiàn)路徑來標(biāo)識由Oracle ASMFD來管理的磁盤。也可以使用ASMCMD afd_dsset和afd_dsget命令來設(shè)置和顯示AFD_DISKSTRING參數(shù):
[grid@cs1 ~]$ asmcmd afd_dsset '/dev/sd*','/dev/asm*','AFD:*' [grid@cs2 ~]$ asmcmd afd_dsset '/dev/sd*','/dev/asm*','AFD:*' [grid@cs1 ~]$ asmcmd dsget parameter:dev/sd*, /dev/asm*, AFD:* profile:dev/sd*,/dev/asm*,AFD:* [grid@cs2 ~]$ asmcmd dsget parameter:dev/sd*, /dev/asm*, AFD:* profile:dev/sd*,/dev/asm*,AFD:*
可以使用alter system語句來設(shè)置AFD_DISKSTRING。標(biāo)識已經(jīng)被創(chuàng)建在磁盤頭中通過Oracle ASMFD磁盤發(fā)現(xiàn)路徑來識別磁盤
SQL> ALTER SYSTEM AFD_DISKSTRING SET 'dev/sd*','/dev/asm*','AFD:*'; System altered. SQL> SELECT SYS_CONTEXT('SYS_ASMFD_PROPERTIES', 'AFD_DISKSTRING') FROM DUAL; SYS_CONTEXT('SYS_ASMFD_PROPERTIES','AFD_DISKSTRING') ----------------------------------------------------------------------------------- dev/sd*,/dev/asm*,AFD:*
為Oracle ASM Filter Driver磁盤設(shè)置Oracle ASM ASM_DISKSTRING參數(shù)
可以更新Oracle ASM磁盤發(fā)現(xiàn)路徑來增加或刪除Oracle ASMFD 磁盤標(biāo)識名到ASM_DISKSTRING參數(shù),可以使用alter system語句或asmcmd dsset命令
SQL> show parameter asm_diskstring NAME TYPE VALUE ------------------------------------ ---------------------- ------------------------------ asm_diskstring string dev/sd*, /dev/asm*, AFD:* [grid@cs1 ~]$ asmcmd dsset 'dev/sd*','/dev/asm*','AFD:*' [grid@cs2 ~]$ asmcmd dsset 'dev/sd*','/dev/asm*','AFD:*'
測試Filter功能
首先檢查filter功能是否開啟
[grid@cs1 ~]$ asmcmd afd_state ASMCMD-9526: The AFD state is 'LOADED' and filtering is 'ENABLED' on host 'cs1.jy.net' [grid@jytest1 ~]$ asmcmd afd_lsdsk -------------------------------------------------------------------------------- Label Filtering Path ================================================================================ CRS1 ENABLED /dev/asmdisk02 CRS2 ENABLED /dev/asmdisk01 DATA1 ENABLED /dev/asmdisk03 DATA2 ENABLED /dev/asmdisk04 FRA1 ENABLED /dev/asmdisk07 TEST1 ENABLED /dev/asmdisk05 TEST2 ENABLED /dev/asmdisk06
上面的結(jié)果顯示filter功能已經(jīng)開啟,如果要禁用filter功能執(zhí)行asmcmd afd_filter -d
[grid@cs1 ~]$ asmcmd afd_filter -d [grid@cs1 ~]$ asmcmd afd_state ASMCMD-9526: The AFD state is 'LOADED' and filtering is 'ENABLED' on host 'jytest1.jydba.net' [grid@cs1 ~]$ asmcmd afd_lsdsk There are no labelled devices.
如果要開啟filter功能執(zhí)行asmcmd afd_filter -e
[grid@jytest1 ~]$ asmcmd afd_lsdsk -------------------------------------------------------------------------------- Label Filtering Path ================================================================================ CRS1 ENABLED /dev/asmdisk02 CRS2 ENABLED /dev/asmdisk01 DATA1 ENABLED /dev/asmdisk03 DATA2 ENABLED /dev/asmdisk04 FRA1 ENABLED /dev/asmdisk07 TEST1 ENABLED /dev/asmdisk05 TEST2 ENABLED /dev/asmdisk06
先用 KFED 讀取一下TEST磁盤組的AFD:TEST1的磁盤頭,驗(yàn)證一下確實(shí)無誤
[grid@jytest1 ~]$ kfed read AFD:TEST1 kfbh.endian: 1 ; 0x000: 0x01 kfbh.hard: 130 ; 0x001: 0x82 kfbh.type: 1 ; 0x002: KFBTYP_DISKHEAD kfbh.datfmt: 1 ; 0x003: 0x01 kfbh.block.blk: 0 ; 0x004: blk=0 kfbh.block.obj: 2147483648 ; 0x008: disk=0 kfbh.check: 3275580027 ; 0x00c: 0xc33d627b kfbh.fcn.base: 0 ; 0x010: 0x00000000 kfbh.fcn.wrap: 0 ; 0x014: 0x00000000 kfbh.spare1: 0 ; 0x018: 0x00000000 kfbh.spare2: 0 ; 0x01c: 0x00000000 kfdhdb.driver.provstr: ORCLDISKTEST1 ; 0x000: length=13 kfdhdb.driver.reserved[0]: 1414743380 ; 0x008: 0x54534554 kfdhdb.driver.reserved[1]: 49 ; 0x00c: 0x00000031 kfdhdb.driver.reserved[2]: 0 ; 0x010: 0x00000000 kfdhdb.driver.reserved[3]: 0 ; 0x014: 0x00000000 kfdhdb.driver.reserved[4]: 0 ; 0x018: 0x00000000 kfdhdb.driver.reserved[5]: 0 ; 0x01c: 0x00000000 kfdhdb.compat: 203424000 ; 0x020: 0x0c200100 kfdhdb.dsknum: 0 ; 0x024: 0x0000 kfdhdb.grptyp: 2 ; 0x026: KFDGTP_NORMAL kfdhdb.hdrsts: 3 ; 0x027: KFDHDR_MEMBER kfdhdb.dskname: TEST1 ; 0x028: length=5 kfdhdb.grpname: TEST ; 0x048: length=4 kfdhdb.fgname: TEST1 ; 0x068: length=5 kfdhdb.fgname: DN1 ; 0x068: length=3
下面直接用dd嘗試將磁盤頭清零。dd 命令本身沒有任何錯(cuò)誤返回。
[root@cs1 ~]# dd if=/dev/zero of=/dev/asmdisk03 bs=1024 count=10000 10000+0 records in 10000+0 records out 10240000 bytes (10 MB) copied, 1.24936 s, 8.2 MB/s
備份磁盤的前1024字節(jié)并清除,普通用戶沒權(quán)限讀
[root@jytest1 ~]# dd if=/dev/asmdisk05 of=asmdisk05_header bs=1024 count=1 1+0 records in 1+0 records out 1024 bytes (1.0 kB) copied, 0.000282638 s, 3.6 MB/s [root@jytest1 ~]# ls -lrt -rw-r--r-- 1 root root 1024 Aug 31 01:22 asmdisk05_header [root@jytest1 ~]# dd if=/dev/zero of=/dev/asmdisk05 bs=1024 count=1 1+0 records in 1+0 records out 1024 bytes (1.0 kB) copied, 0.000318516 s, 3.2 MB/s
再用 KFED 讀取一下TEST磁盤組的AFD:TEST1的磁盤頭,驗(yàn)證一下確實(shí)無誤
[grid@jytest1 ~]$ kfed read AFD:TEST1 kfbh.endian: 1 ; 0x000: 0x01 kfbh.hard: 130 ; 0x001: 0x82 kfbh.type: 1 ; 0x002: KFBTYP_DISKHEAD kfbh.datfmt: 1 ; 0x003: 0x01 kfbh.block.blk: 0 ; 0x004: blk=0 kfbh.block.obj: 2147483648 ; 0x008: disk=0 kfbh.check: 3275580027 ; 0x00c: 0xc33d627b kfbh.fcn.base: 0 ; 0x010: 0x00000000 kfbh.fcn.wrap: 0 ; 0x014: 0x00000000 kfbh.spare1: 0 ; 0x018: 0x00000000 kfbh.spare2: 0 ; 0x01c: 0x00000000 kfdhdb.driver.provstr: ORCLDISKTEST1 ; 0x000: length=13 kfdhdb.driver.reserved[0]: 1414743380 ; 0x008: 0x54534554 kfdhdb.driver.reserved[1]: 49 ; 0x00c: 0x00000031 kfdhdb.driver.reserved[2]: 0 ; 0x010: 0x00000000 kfdhdb.driver.reserved[3]: 0 ; 0x014: 0x00000000 kfdhdb.driver.reserved[4]: 0 ; 0x018: 0x00000000 kfdhdb.driver.reserved[5]: 0 ; 0x01c: 0x00000000 kfdhdb.compat: 203424000 ; 0x020: 0x0c200100 kfdhdb.dsknum: 0 ; 0x024: 0x0000 kfdhdb.grptyp: 2 ; 0x026: KFDGTP_NORMAL kfdhdb.hdrsts: 3 ; 0x027: KFDHDR_MEMBER kfdhdb.dskname: TEST1 ; 0x028: length=5 kfdhdb.grpname: TEST ; 0x048: length=4 kfdhdb.fgname: TEST1 ; 0x068: length=5
測試dismount磁盤組TEST,再mount磁盤組TEST都能成功
[grid@jytest1 ~]$ asmcmd umount TEST [grid@jytest1 ~]$ asmcmd lsdg State Type Rebal Sector Logical_Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Voting_files Name MOUNTED EXTERN N 512 512 4096 4194304 40960 264 0 264 0 Y CRS/ MOUNTED EXTERN N 512 512 4096 4194304 40960 24732 0 24732 0 N DATA/ MOUNTED EXTERN N 512 512 4096 4194304 40960 18452 0 18452 0 N FRA/ [grid@jytest1 ~]$ asmcmd mount TEST [grid@jytest1 ~]$ asmcmd lsdg State Type Rebal Sector Logical_Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Voting_files Name MOUNTED EXTERN N 512 512 4096 4194304 40960 264 0 264 0 Y CRS/ MOUNTED EXTERN N 512 512 4096 4194304 40960 24732 0 24732 0 N DATA/ MOUNTED EXTERN N 512 512 4096 4194304 40960 18452 0 18452 0 N FRA/ MOUNTED NORMAL N 512 512 4096 4194304 40960 11128 0 5564 0 N TEST/
現(xiàn)在對磁盤/dev/asmdisk05禁用filter功能
[grid@jytest1 ~]$ asmcmd afd_lsdsk -------------------------------------------------------------------------------- Label Filtering Path ================================================================================ CRS1 ENABLED /dev/asmdisk02 CRS2 ENABLED /dev/asmdisk01 DATA1 ENABLED /dev/asmdisk03 DATA2 ENABLED /dev/asmdisk04 FRA1 ENABLED /dev/asmdisk07 TEST1 ENABLED /dev/asmdisk05 TEST2 ENABLED /dev/asmdisk06 [grid@jytest1 ~]$ asmcmd afd_filter -d /dev/asmdisk05 [grid@jytest1 ~]$ asmcmd afd_lsdsk -------------------------------------------------------------------------------- Label Filtering Path ================================================================================ CRS1 ENABLED /dev/asmdisk02 CRS2 ENABLED /dev/asmdisk01 DATA1 ENABLED /dev/asmdisk03 DATA2 ENABLED /dev/asmdisk04 FRA1 ENABLED /dev/asmdisk07 TEST1 DISABLED /dev/asmdisk05 TEST2 ENABLED /dev/asmdisk06
清除磁盤的前1024字節(jié)
[root@jytest1 ~]# dd if=/dev/zero of=/dev/asmdisk05 bs=1024 count=1 1+0 records in 1+0 records out 1024 bytes (1.0 kB) copied, 0.000318516 s, 3.2 MB/s [grid@jytest1 ~]$ asmcmd umount TEST [grid@jytest1 ~]$ asmcmd mount TEST ORA-15032: not all alterations performed ORA-15017: diskgroup "TEST" cannot be mounted ORA-15040: diskgroup is incomplete (DBD ERROR: OCIStmtExecute) [grid@jytest1 ~]$ kfed read AFD:TEST1 kfbh.endian: 0 ; 0x000: 0x00 kfbh.hard: 0 ; 0x001: 0x00 kfbh.type: 0 ; 0x002: KFBTYP_INVALID kfbh.datfmt: 0 ; 0x003: 0x00 kfbh.block.blk: 0 ; 0x004: blk=0 kfbh.block.obj: 0 ; 0x008: file=0 kfbh.check: 0 ; 0x00c: 0x00000000 kfbh.fcn.base: 0 ; 0x010: 0x00000000 kfbh.fcn.wrap: 0 ; 0x014: 0x00000000 kfbh.spare1: 0 ; 0x018: 0x00000000 kfbh.spare2: 0 ; 0x01c: 0x00000000 000000000 00000000 00000000 00000000 00000000 [................] Repeat 255 times KFED-00322: invalid content encountered during block traversal: [kfbtTraverseBlock][Invalid OSM block type][][0]
可以看到當(dāng)filter功能被禁用時(shí)就失去了保護(hù)功能
使用之前備份的磁盤前1024字節(jié)信息來恢復(fù)磁盤頭
[root@jytest1 ~]# dd if=asmdisk05_header of=/dev/asmdisk05 bs=1024 count=1 1+0 records in 1+0 records out 1024 bytes (1.0 kB) copied, 0.000274822 s, 3.7 MB/s [grid@jytest1 ~]$ kfed read /dev/asmdisk05 kfbh.endian: 1 ; 0x000: 0x01 kfbh.hard: 130 ; 0x001: 0x82 kfbh.type: 1 ; 0x002: KFBTYP_DISKHEAD kfbh.datfmt: 1 ; 0x003: 0x01 kfbh.block.blk: 0 ; 0x004: blk=0 kfbh.block.obj: 2147483648 ; 0x008: disk=0 kfbh.check: 1645917758 ; 0x00c: 0x621ab63e kfbh.fcn.base: 0 ; 0x010: 0x00000000 kfbh.fcn.wrap: 0 ; 0x014: 0x00000000 kfbh.spare1: 0 ; 0x018: 0x00000000 kfbh.spare2: 0 ; 0x01c: 0x00000000 kfdhdb.driver.provstr: ORCLDISKTEST1 ; 0x000: length=13 kfdhdb.driver.reserved[0]: 1414743380 ; 0x008: 0x54534554 kfdhdb.driver.reserved[1]: 49 ; 0x00c: 0x00000031 kfdhdb.driver.reserved[2]: 0 ; 0x010: 0x00000000 kfdhdb.driver.reserved[3]: 0 ; 0x014: 0x00000000 kfdhdb.driver.reserved[4]: 0 ; 0x018: 0x00000000 kfdhdb.driver.reserved[5]: 0 ; 0x01c: 0x00000000 kfdhdb.compat: 203424000 ; 0x020: 0x0c200100 kfdhdb.dsknum: 0 ; 0x024: 0x0000 kfdhdb.grptyp: 2 ; 0x026: KFDGTP_NORMAL kfdhdb.hdrsts: 3 ; 0x027: KFDHDR_MEMBER kfdhdb.dskname: TEST1 ; 0x028: length=5 kfdhdb.grpname: TEST ; 0x048: length=4 kfdhdb.fgname: TEST1 ; 0x068: length=5
再次mount磁盤組TEST
[grid@jytest1 ~]$ asmcmd lsdg State Type Rebal Sector Logical_Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Voting_files Name MOUNTED EXTERN N 512 512 4096 4194304 40960 264 0 264 0 Y CRS/ MOUNTED EXTERN N 512 512 4096 4194304 40960 24732 0 24732 0 N DATA/ MOUNTED EXTERN N 512 512 4096 4194304 40960 18452 0 18452 0 N FRA/ [grid@jytest1 ~]$ asmcmd mount TEST [grid@jytest1 ~]$ asmcmd lsdg State Type Rebal Sector Logical_Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Voting_files Name MOUNTED EXTERN N 512 512 4096 4194304 40960 264 0 264 0 Y CRS/ MOUNTED EXTERN N 512 512 4096 4194304 40960 24732 0 24732 0 N DATA/ MOUNTED EXTERN N 512 512 4096 4194304 40960 18452 0 18452 0 N FRA/ MOUNTED NORMAL N 512 512 4096 4194304 40960 11120 0 5560 0 N TEST/
設(shè)置,清除與掃描Oracle ASM Filter Driver Labels
給由Oracle ASMFD管理的磁盤設(shè)置一個(gè)標(biāo)識,在標(biāo)識設(shè)置后,指定的磁盤將會由Oracle ASMFD來管理??梢允褂肁SMCMD afd_label,afd_unlabel與afd_scan來增加,刪除和掃描標(biāo)識查看已經(jīng)標(biāo)識過的磁盤可以看到磁盤/dev/asmdisk03和 /dev/asmdisk05沒有被標(biāo)識。
[grid@cs1 ~]$ asmcmd afd_lsdsk -------------------------------------------------------------------------------- Label Filtering Path ================================================================================ CRS1 ENABLED /dev/asmdisk02 CRS2 ENABLED /dev/asmdisk01 DATA1 ENABLED /dev/asmdisk04 SQL> select group_number,disk_number,name,label,path from v$asm_disk; GROUP_NUMBER DISK_NUMBER NAME LABEL PATH ------------ ----------- ------------------------------ -------------------------------------------------- -------------------------------------------------- 0 0 CRS1 AFD:CRS1 0 1 /dev/asmdisk05 0 2 DATA1 AFD:DATA1 0 3 /dev/asmdisk03 0 4 CRS2 AFD:CRS2 1 0 CRS1 CRS1 /dev/asmdisk02 1 1 CRS2 CRS2 /dev/asmdisk01 2 0 DATA1 DATA1 /dev/asmdisk04
設(shè)置標(biāo)識
[grid@cs2 ~]$ asmcmd afd_label DN1 /dev/asmdisk03 [grid@cs2 ~]$ asmcmd afd_label DN2 /dev/asmdisk05
查看已經(jīng)標(biāo)識過的磁盤可以看到磁盤/dev/asmdisk03和 /dev/asmdisk05已經(jīng)被標(biāo)識
[grid@cs1 ~]$ asmcmd afd_lsdsk -------------------------------------------------------------------------------- Label Filtering Path ================================================================================ CRS1 ENABLED /dev/asmdisk02 CRS2 ENABLED /dev/asmdisk01 DATA1 ENABLED /dev/asmdisk04 DN1 ENABLED /dev/asmdisk03 DN2 ENABLED /dev/asmdisk05 SQL> select group_number,disk_number,name,label,path from v$asm_disk; GROUP_NUMBER DISK_NUMBER NAME LABEL PATH ------------ ----------- ------------------------------ -------------------------------------------------------------- -------------------------------------------------- 0 0 CRS1 AFD:CRS1 0 1 DN2 /dev/asmdisk05 0 2 DN1 AFD:DN1 0 3 DATA1 AFD:DATA1 0 4 DN1 /dev/asmdisk03 0 6 CRS2 AFD:CRS2 0 5 DN2 AFD:DN2 1 1 CRS2 CRS2 /dev/asmdisk01 1 0 CRS1 CRS1 /dev/asmdisk02 2 0 DATA1 DATA1 /dev/asmdisk04
清除標(biāo)識
[grid@cs1 ~]$ asmcmd afd_unlabel 'DN1' [grid@cs1 ~]$ asmcmd afd_unlabel 'DN2'
注意在清除標(biāo)識時(shí),如果標(biāo)識所標(biāo)記的磁盤已經(jīng)用來創(chuàng)建磁盤組了那么是不能清除的,例如
[grid@cs1 ~]$ asmcmd afd_unlabel 'TEST1' disk AFD:TEST1 is already provisioned for ASM No devices to be unlabeled. ASMCMD-9514: ASM disk label clear operation failed.
掃描標(biāo)識
[grid@cs1 ~]$ asmcmd afd_scan
查看已經(jīng)標(biāo)識過的磁盤可以看到 /dev/asmdisk03和 /dev/asmdisk05的標(biāo)識已經(jīng)清除了
[grid@cs1 ~]$ asmcmd afd_lsdsk -------------------------------------------------------------------------------- Label Filtering Path ================================================================================ CRS1 ENABLED /dev/asmdisk02 CRS2 ENABLED /dev/asmdisk01 DATA1 ENABLED /dev/asmdisk04 SQL> select group_number,disk_number,name,label,path from v$asm_disk; GROUP_NUMBER DISK_NUMBER NAME LABEL PATH ------------ ----------- ------------------------------ -------------------------------------------------------------- -------------------------------------------------- 0 0 CRS1 AFD:CRS1 0 1 /dev/asmdisk05 0 2 DATA1 AFD:DATA1 0 3 /dev/asmdisk03 0 4 CRS2 AFD:CRS2 1 1 CRS2 CRS2 /dev/asmdisk01 1 0 CRS1 CRS1 /dev/asmdisk02 2 0 DATA1 DATA1 /dev/asmdisk04
到此,相信大家對“Oracle ASM Filter Driver的相關(guān)知識點(diǎn)有哪些”有了更深的了解,不妨來實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。