Oracle單例項+ASM啟動與關閉

chenoracle發表於2015-07-22

Oracle+ASM 啟動和關閉

 

啟動關閉注意事項

1 ASM例項的啟動和資料庫例項的啟動有嚴格的先後關係,ASM啟動一定早於資料庫例項,關閉一定晚於ASM例項,因為它是資料庫資料檔案儲存位置;

2 需要優先啟動CSS,HAS服務。

 

啟動:

啟動時應該先啟動ASM ,在啟動資料庫

如果順序反了會報錯

例如:

1 關閉ASM

[grid@ogg1 ~]$ sqlplus

Enter user-name: /as sysasm

 

SQL> shutdown immediate

ASM diskgroups dismounted

ASM instance shutdown

 

2 啟動資料庫報錯

[oracle@ogg1 ~]$ sqlplus / as sysdba

 

SQL> startup

ORA-01078: failure in processing system parameters

ORA-01565: error in identifying file '+SYSTEDG/prod1/spfileprod1.ora'

ORA-17503: ksfdopn:2 Failed to open file +SYSTEDG/prod1/spfileprod1.ora

ORA-15077: could not locate ASM instance serving a required diskgroup

 

 

正確的順序是

 

啟動ASM 之前應該確保css,has 服務已經啟動

1

檢查CSS 服務是否啟動:

[grid@ogg1 ~]$ crsctl check css

[grid@ogg1 ~]$ ps -ef|grep cssd

2

檢查HAS 服務是否啟動:

[grid@ogg1 ~]$ crsctl check has

[grid@ogg1 ~]$ ps -ef|grep d.bin

發現HAS服務啟動了,而ora.cssd和ora.diskmon這2個服務是依賴於HAS維護的.       

3

進一步檢視各資源的狀態    

[grid@ogg1 ~]$ crs_stat -t

[grid@ogg1 ~]$ crsctl status resource -t

4

檢查ora.cssd 和ora.diskmon 的預設屬性

[grid@ogg1 ~]$ crs_stat -p ora.cssd

。。。。。

AUTO_START=never

。。。。。

[grid@ogg1 ~]$ crs_stat -p ora.diskmon

。。。。。。

AUTO_START=never 

。。。。。。

可以看到這兩個資源的AUTO_START屬性預設都設定為never,

也就是說他們不會隨著HAS服務的啟動而自動啟動的,儘管預設情況下HAS服務是開機自動啟動的.

5

手動啟動

[grid@ogg1 ~]$ crsctl start resource ora.cssd 

注:ora.cssd和ora.diskmon這兩個服務是有依賴關係的,啟動哪個都會把兩個都起來.

6 其他操作

1)預設情況下HAS(High Availability Service)是自動啟動的.

透過如下命令可以取消和啟用自動啟動       

取消自啟動:crsctl disable has       

啟用自啟動:crsctl enable has      

2)HAS手動啟動和停止

crsctl start has       

crsctl stop has     

3)檢視HAS的狀態       

crsctl check has     

4)如果想讓ora.css和ora.diskmon服務隨著HAS的啟動而自動啟動,可以這兩個服務的AUTO_START屬性

crsctl modify resource "ora.cssd" -attr "AUTO_START=1"

        or        

crsctl modify resource "ora.diskmon" -attr "AUTO_START=1"     

5)如果想取消ora.css和ora.diskmon的Auto start        

crsctl modify resource "ora.cssd" -attr "AUTO_START=never"       

crsctl modify resource "ora.diskmon" -attr "AUTO_START=never"

 

啟動ASM 例項

[grid@ogg1 ~]$ sqlplus / as sysasm

SQL> startup

SQL> col instance_name for a15

SQL> col status for a15

SQL>  select instance_name,status from v$instance;

INSTANCE_NAME   STATUS

--------------- ---------------

+ASM         STARTED

 

啟動資料庫

[oracle@ogg1 ~]$ sqlplus / as sysdba

SQL> startup

SQL> col instance_name for a15

SQL> col status for a15

SQL> select instance_name,status from v$instance;

INSTANCE_NAME   STATUS

--------------- ---------------

prod1        OPEN

 

關閉ASM

關閉應該先關閉資料庫,在關閉ASM

如果順序反了會報錯

例如:

1 關閉ASM

[root@ogg1 ~]# su - grid

[grid@ogg1 ~]$ sqlplus / as sysasm

SQL> shutdown immediate

ORA-15097: cannot SHUTDOWN ASM instance with connected client (process 7322)

 

正確的順序是:

關閉資料庫

[oracle@ogg1 ~]$ sqlplus / as sysdba

SQL> shutdown immediate

 

關閉ASM

[root@ogg1 ~]# su - grid

[grid@ogg1 ~]$ sqlplus / as sysasm

 

SQL> shutdown immediate

ASM diskgroups dismounted

ASM instance shutdown

 

來自:

http://blog.csdn.net/yfleng2002/article/details/7785216

 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29785807/viewspace-1744718/,如需轉載,請註明出處,否則將追究法律責任。

相關文章