Oracle 11gR1 RAC儲存遷移方案

來源:互聯網
上載者:User

標籤:ase   監聽   upd   導致   卸載   unit   1.0   dba   lan   

一、需求
Oracle 11gR1 RAC儲存計劃更換,資料庫版本為11.1.0.7,無停機維護視窗。

二、環境準備
1、主機環境、OS環境
2、安裝11.1.0.6.0版Clusterware(linux.x64_11gR1_clusterware.zip)
3、安裝11.1.0.6.0版RDBMS SOFTWARE(linux.x64_11gR1_database_1013.zip)
4、升級到11.1.0.7.0版本(分別升級Clusterware和RDBMS)(p6890831_111070_Linux-x86-64.zip)
5、APPLY 3個PSU,UPDATE到11.1.0.7.14
p14739378_111070_Linux-x86-64.zip、p11724936_111070_Linux-x86-64.zip、p11724953_111070_Linux-x86-64.zip、p6880880_111000_Linux-x86-64.zip(Opatch)
6、建立監聽器、建立庫
SQL> select * from dba_registry_history;
# crs_stat -t

三、儲存配置
因無停機時間,必須通過滾動方式,否則修改儲存可能導致節點重啟
1、節點1
1)先停節點1執行個體
# srvctl stop instance -d ora11g -i ora11g1
# srvctl stop asm -n rac1
# crs_stat -t
2)串連新儲存,重啟iscsi識別存放裝置
# service iscsi restart
3)fdisk格式化新增儲存,並修改rawdevices檔案讓系統啟動時掛載裸裝置
# vi /etc/sysconfig/rawdevices
--添加如下:
/dev/raw/raw1 /dev/sdb1
.....
/dev/raw/raw5 /dev/sdf1
4)裸裝置映射
# vi /etc/udev/rules.d/60-raw.rules
ACTION=="add", KERNEL=="/dev/sdb1",RUN+="/bin/raw /dev/raw/raw1 %N"
ACTION=="add", ENV{MAJOR}=="8",ENV{MINOR}=="17",RUN+="/bin/raw /dev/raw/raw1 %M %m"
......
ACTION=="add", KERNEL=="/dev/sdf1",RUN+="/bin/raw /dev/raw/raw5 %N"
ACTION=="add", ENV{MAJOR}=="8",ENV{MINOR}=="81",RUN+="/bin/raw /dev/raw/raw5 %M %m"
KERNEL=="raw[1-5]", OWNER="oracle", GROUP="oinstall", MODE="640"
5)重啟udev
# start_udev
6)重啟rawdevices服務
# service rawdevices restart
7)查看raw裝置
# ls -l /dev/raw
8)建立ASM磁碟
# /etc/init.d/oracleasm createdisk newasmdsk /dev/sdo1
# oracleasm listdisks
9)啟動監聽、執行個體
# srvctl start listener -n rac1
# srvctl start asm -n rac1
# srvctl start instance -d ora11g -i ora11g1
# crs_stat -t

2、節點2
與節點1操作基本相同,僅因節點1已建立ASM磁碟,則節點2在節點1的步驟8)掃描即可
# oracleasm scandisks
# oracleasm listdisks

通過如上操作,成功將新的儲存串連並識別到劃分好的lun,這期間是採用滾動方式的,所以業務不會中斷。

四、OCR遷移
1、查看ocr儲存位置以及其他資訊
# ocrcheck
或查看/etc/oracle/ocr.loc
/dev/raw/raw10、/dev/raw/raw11位ocr盤,且/dev/raw/raw10上是ocr的鏡像
2、確保crs健康運行
# crsctl check crs
3、通過ocrconfig命令可以線上遷移ocr
# ocrconfig -replace ocr /dev/raw/raw1
# ocrconfig -replace ocrmirror /dev/raw/raw2
註:一個是ocr,另一個是ocrmirror,分別對應/etc/oracle/ocr.loc的ocrconfig_loc和ocrmirrorconfig_loc所指的位置
4、檢查是否遷移成功
# ocrcheck
擴充:Oracle 11g R2版本,ocrconfig命令增強了一些,更改ocr位置的命令也有所改變,如下:
ocrconfig -replace <current filename> -replacement <new filename>

五、遷移表決盤
1、查看錶決磁碟當前存放路徑
# crsctl query css votedisk
2、11g R2之前版本,只能採用添加刪除的方式進行遷移。首先刪除一個,因為當前有3個存放路徑,所以刪除一個並不產生影響
# crsctl delete css votedisk /dev/raw/raw9
# crsctl add css votedisk /dev/raw/raw5
# crsctl delete css votedisk /dev/raw/raw8
# crsctl add css votedisk /dev/raw/raw4
注意:當試圖刪除表決磁碟首個存放路徑的時候報錯:
# crsctl delete css votedisk /dev/raw/raw7
Failure 8 with Cluster Synchronization Services while deleting voting disk.
添加force選項強制移除
# crsctl delete css votedisk /dev/raw/raw7 -force
# crsctl query css votedisk
# crsctl add css votedisk /dev/raw/raw3
3、查看錶決盤是否遷移成功
# crsctl query css votedisk
擴充:Oracle 11g R2中crsctl命令增強很多,其中針對votedisk的操作也增多了replace功能:
crsctl replace – replaces the location of voting files
可見,在這個版本上DBA可以線上替換儲存位置。

六、ASM儲存遷移
1、登入asm執行個體,查看當前磁碟組資訊
$ export ORACLE_SID=+ASM1
$ sqlplus / as sysasm
SQL> select NAME, ALLOCATION_UNIT_SIZE, STATE, TOTAL_MB, FREE_MB USABLE_FILE_MB from gv$asm_diskgroup;
SQL> select failgroup, name from v$asm_disk where group_number=(select group_number from v$asm_diskgroup where name = ‘DATADG‘);
2、為DATADG磁碟中添加新的ASM磁碟
SQL> alter diskgroup DATADG add disk ‘ORCL:NEWASMDSK‘ name new_asmdsk REBALANCE POWER 10;
註:添加多個asm磁碟方式:alter diskgroup DATADG add disk ‘ORCL:ASM1‘, ‘ORCL:ASM2‘, ‘ORCL:ASM3‘ rebalance power n;
3、查看asm磁碟rebalance進度,完成後v$asm_operation記錄將消失
SQL> select * from v$asm_operation;
4、添加ASM磁碟後的狀態
SQL> select name, allocation_unit_size, state, total_mb, free_mb usable_file_mb from gv$asm_diskgroup;
SQL> select failgroup, name, path from v$asm_disk where group_number=(select group_number from v$asm_diskgroup where name = ‘DATADG‘);
5、刪除舊的ASM磁碟
SQL> alter diskgroup DATADG drop disk OLDASMDSK rebalance power 5;
SQL> select * from v$asm_operation;
6、檢查資料庫狀態以及資料情況
至此,Oracle資料庫已全部使用新儲存了,可以在OS層級上卸載舊儲存了。

七、卸載舊儲存
同樣採用滾動方式卸載舊磁碟。
1、節點1
# srvctl stop instance -d ora11g -i ora11g1
# srvctl stop asm -n rac1
# crs_stat -t
# oracleasm listdisks
# /etc/init.d/oracleasm deletedisk OLDASMDSK
修改/etc/sysconfig/rawdevices和/etc/udev/rules.d/60-raw.rules,清除舊磁碟資訊,並重啟udev和rawdevices服務。
# crs_stat -t
# srvctl start listener -n rac1
# srvctl start asm -n rac1
# srvctl start instance -d ora11g -i ora11g1
# crs_stat -t

2、節點2
# srvctl stop instance -d ora11g -i ora11g2
# srvctl stop asm -n rac2
# crs_stat -t
# oracleasm scandisks
# oracleasm listdisks
修改/etc/sysconfig/rawdevices和/etc/udev/rules.d/60-raw.rules,清除舊磁碟資訊,並重啟udev和rawdevices服務。
# crs_stat -t
# srvctl start listener -n rac2
# srvctl start asm -n rac2
# srvctl start instance -d ora11g -i ora11g2
# crs_stat -t


註:確認系統可用性(生產環境下可能不允許),手動重啟OS
[[email protected] ~]# srvctl stop database -d ora11g
[[email protected] ~]# srvctl stop asm -n rac1
[[email protected] ~]# srvctl stop asm -n rac2
[[email protected] ~]# srvctl stop nodeapps -n rac1
[[email protected] ~]# srvctl stop nodeapps -n rac2
[[email protected] ~]# crsctl stop crs
[[email protected] ~]# shutdown -r now

[[email protected] ~]# crsctl stop crs
[[email protected] ~]# shutdown -r now
重啟之後:
# raw -qa
# ocrcheck
# crsctl query css votedisk
# 檢查資料檔案與資料狀態

Oracle 11gR1 RAC儲存遷移方案

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.