Oracle的rac是什麼?

rac是什麼?

多個不同服務器上的實例,訪問共享的數據庫文件,擴展了CPU和內存,提高性能;多節點,實現了HA。

rac解決什麼問題

1.高可用性:自動切換、負載均衡
2.高性能:多實例、更多連接、併發執行
3.高擴展:不停機擴展節點。

怎麼實現的

組成

3個層級:

  1. 集羣軟件:集羣管理,節點增刪、心跳、同步;包括2個組件:表決磁盤、集羣註冊服務。
  2. rac數據庫軟件:提供數據庫實例;
  3. rac數據庫:共享存儲,共享文件。

1.拓撲圖

在這裏插入圖片描述

2.存儲劃分例子

現在共享存儲建議ASM,僅說明用。
在這裏插入圖片描述

rac常用操作

1.啓停

關閉:監聽–>db–>cluster–>os
1.關閉監聽(grid用戶),阻止新的程序在連接進來
srvctl stop listener
2.寫髒塊
alter systerm checkpoint;(多執行幾次)
3.關閉數據庫(grid用戶下) racdb指的是數據庫全局唯一名。執行時間會較長,不要終止
/u01/app/11.2.0/grid/bin/srvctl stop database -d racdb -o immediate
4.關閉集羣件(root用戶)
/u01/app/11.2.0/grid/bin/crsctl stop cluster -all
5.查看資源狀態
/u01/app/11.2.0/grid/bin/crsctl status resource -t
6.關閉操作系統(root)
shutdown -h now
-----------啓動RAC數據庫-----
cluster–>db
1.默認情況下,集羣軟件會隨着操作系統的啓動而啓動(root)。
檢查集羣資源:/u01/app/11.2.0/grid/bin/crsctl status resource -t --所有都需要是online狀態
啓動集羣資源:/u01/app/11.2.0/grid/bin/crsctl start cluster -all

2.啓動數據庫(grid)
srvctl start database -d racdb
3.查看監聽狀態。默認情況下監聽會隨着集羣軟件啓動(grid)。
srvctl status listener --查看監聽狀態
srvctl start listener --啓動監聽
4.登錄plsql進行連接測試。

2.增刪

1 配置OS, 和安裝RAC的配置一樣。Mount上共享磁盤。但是不要安裝Oracle 和 grid software
2 設置節點間的ssh, 使用grid安裝包中的腳本
3 在grid 用戶下添加節點,主要是添加grid組件 ,會copy grid_home下的內容到新的節點
4 在oracle用戶下添加節點,主要是添加oracle組件,會copy oracle_home下的內容到新的節點
5 使用DBCA添加新的instance 或者手工添加也可以 (本次dbca添加)

難點:

1.節點數據的一致性。

單實例,內存裏有事務信息、鎖,如果把不同節點的數據同步,避免不同節點衝突。CacheFusion,緩存融合
服務器間緩存共享。與hadoop的分佈式不太一樣,hdp基於分佈式文件系統,在節點上基於block計算,然後合併,是真獨立,不存在全局資源目錄GRD的概念。rac是共享存儲,還是一個文件,沒有分治。

問題:

hba卡

光纖網卡

虛擬ip的作用?

安裝Oracle的過程中自動生成綁定在公網網卡上,並對外提供服務(公網網卡的虛擬ip)
如果rac2失敗,其虛擬ip會自動漂移到rac1的物理網卡上;客戶端請求進來,rac2會返回失敗的消息,讓重新連接vip1進來。
如果沒有vip,客戶單請求進來,會直到tcp\ip連接3次嘗試失敗後,返回失敗,體驗很差。
vip是HA實現的重要手段。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章