成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

深入了解 Oracle Flex ASM 及其優(yōu)點

IT那活兒 / 2521人閱讀
深入了解 Oracle Flex ASM 及其優(yōu)點
一. 簡 介

在 Oracle 12c 之前,對于要使用 ASM 的數(shù)據(jù)庫實例來說,所有節(jié)點上的 ASM 實例必須已處于運行狀態(tài),才能啟動數(shù)據(jù)庫實例。如果 ASM 實例未運行,則意味著在存儲級使用 ASM 的數(shù)據(jù)庫實例不能啟動。這實際上意味著無論采用何種技術(shù)(即 RAC、ASM 和共享存儲),均不能訪問數(shù)據(jù)庫實例。

隨著 Oracle 12c 的推出,一個名為 Oracle Flex ASM 的特性解除了上述限制,它的一個主要特性是故障切換到集群中的其他節(jié)點。本質(zhì)上是一個中心和葉架構(gòu),Oracle Clusterware 通過一個替代 ASM 實例將故障節(jié)點的連接將無縫轉(zhuǎn)移到另一個成員節(jié)點。在給定集群中運行的 ASM 實例數(shù)被稱作 ASM 基數(shù),默認(rèn)值為 3。但此基數(shù)值可以使用 Clusterware 命令修改。


二. Oracle Flex ASM的實現(xiàn)方面

Oracle Flex ASM 可通過兩種方式實現(xiàn):
  • 純 12c Flex ASM(相同版本)

  • Grid Infrasctructure (GI) 和數(shù)據(jù)庫都運行在 Oracle 12c 上

  • Oracle 12c 之前的混合版本(不同版本)

  • 和平常一樣,ASM 實例將在每個節(jié)點上運行,F(xiàn)lex 配置支持 12c 之前的數(shù)據(jù)庫。使用 ASM 磁盤組的兼容性參數(shù)管理各數(shù)據(jù)庫實例之間的兼容性。這種方法的優(yōu)點是,如果 Oracle 12c 數(shù)據(jù)庫實例與一個 ASM 實例的連接斷開,數(shù)據(jù)庫連接將故障切換至其他服務(wù)器上的另一個 ASM 實例。通過將基數(shù)設(shè)置為 all 即可以實現(xiàn)這種故障切換。


使用Oracle Flex ASM的Oracle RAC 12c

標(biāo)準(zhǔn) Oracle Flex ASM 配置:

 Oracle Flex ASM 配置上的 ASM 實例故障:

  • 登錄 RAC 數(shù)據(jù)庫實例 1 (rac1)
[grid@rac12node1 ~]$ hostname
rac12node1
  • 檢查 ASM 實例和 RAC 數(shù)據(jù)庫實例的狀態(tài)

[grid@rac12node1 ~]$ ps -ef | grep pmon
grid    2038   25582 0  16:37 pts/1    00:00:00 grep pmon
grid    11838      1 0  15:04 ?        00:00:00 asm_pmon_+ASM1
oracle  12830      1 0  15:05 ?        00:00:00 ora_pmon_rac12db1
  • 從實例 1 (rac1) 檢查 RAC 數(shù)據(jù)庫實例中 ASM 實例的狀態(tài)

[grid@rac12node1 ~]$ srvctl status asm
ASM is running on rac12node1,rac12node2
  • 在實例 1 (rac1) 中檢查集群狀態(tài)

[grid@rac12node1 ~]$ crsctl check cluster
CRS-4537: Cluster Ready Services is online
CRS-4529: Cluster Synchronization Services is online
CRS-4533: Event Manager is online
  • 用于檢查 Oracle Flex ASM 是否啟用的命令 (rac1)

[grid@rac12node1 ~]$ asmcmd
ASMCMD> showclustermode
ASM cluster : Flex mode enabled
ASMCMD> showclusterstate
Normal
ASMCMD>
  • 用于更改 ASM 基數(shù)的命令 (rac1)

[grid@rac12node1 ~]$ srvctl status asm -detail
ASM is running on rac12node1,rac12node2
ASM is enabled.
ASM instance +ASM1 is running on node rac12node1
Number of connected clients: 2
Client names: rac12db1:rac12db:rac12no-cluster rac12node1:_OCR:rac12no-cluster
ASM instance +ASM2 is running on node rac12node2
Number of connected clients: 3
Client names: -MGMTDB:_mgmtdb:rac12no-cluster rac12db2:rac12db:rac12no-cluster rac12node2:_OCR:rac12no-cluster
[grid@rac12node1 ~]$
  • 用于檢查 Oracle Flex ASM 是否啟用的命令 (rac2)

[grid@rac12node2 ~]$ asmcmd
ASMCMD> showclustermode
ASM cluster : Flex mode enabled
ASMCMD> showclusterstate
Normal
ASMCMD>
  • 如何更改 ASM 基數(shù) (rac2)

[grid@rac12node2 ~]$ srvctl config asm -detail
ASM home:
Password file: +ocrdg/orapwASM
Backup of Password file:
ASM listener: LISTENER
ASM is enabled.
ASM is individually enabled on nodes: 
ASM is individually disabled on nodes: 
ASM instance count: 3
Cluster ASM listener: ASMNET1LSNR_ASM
[grid@rac12node2 ~]$
  • 查看節(jié)點2上訪問ASM實例的客戶端。

節(jié)點2初始狀態(tài),grid用戶下:

set line 200
col INSTANCE_NAME for a60
select distinct instance_name,db_name,status from v$asm_client;

INSTANCE_NAME                            DB_NAME         STATUS
---------------------------------- ------------------ -----------------------
+ASM2                                   +ASM            CONNECTED
-MGMTDB                                 _mgmtdb         CONNECTED
rac12db2                                rac12db         CONNECTED
rac12node2                              _OCR            CONNECTED
  • 在 RAC 數(shù)據(jù)庫實例 1 (rac1) 中關(guān)閉 ASM 實例

[grid@rac12node1 ~]$ srvctl stop asm -node rac12node1 -stopoption abort -force
  • 在 RAC 數(shù)據(jù)庫實例 1 (rac1) 中檢查 ASM 實例的狀態(tài)

[grid@rac12node1 ~]$ srvctl status asm
ASM is running on rac12node2
  • 在 RAC 數(shù)據(jù)庫實例 1 (rac1) 中檢查集群服務(wù)的狀態(tài)

[grid@rac12node1 ~]$ crsctl check cluster
CRS-4537: Cluster Ready Services is online
CRS-4529: Cluster Synchronization Services is online
CRS-4533: Event Manager is online
  • 在實例 1 (rac1) 中檢查 ASM 和 RAC 數(shù)據(jù)庫的狀態(tài)

[grid@rac12node1 ~]$ ps -ef | grep pmon
grid    3339 25582   0 16:42 pts/1    00:00:00 grep pmon
oracle 12830     1   0 15:05 ?        00:00:00 ora_pmon_rac12db1

注:在這里,數(shù)據(jù)庫實例與特定節(jié)點中運行的特定 ASM 實例關(guān)聯(lián)。如果因為某種原因,ASM 實例無法啟動/服務(wù)關(guān)閉,數(shù)據(jù)庫實例仍然可以啟動,因為數(shù)據(jù)庫實例將查找同一集群中運行的 ASM 實例。圖 3 描繪了 Flex ASM 的高可用特性。

  • 從 RAC 數(shù)據(jù)庫實例 1 (rac1) 登錄數(shù)據(jù)庫實例

[oracle@rac12node1 ~]$ sqlplus / as sysdba

SQL*Plus: Release 12.2.0.1.0 Production on Thu Oct 17 16:45:05 2019

Copyright (c) 1982, 2016, Oracle. All rights reserved.


Connected to:
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production

SQL>
 select open_mode from v$database;

OPEN_MODE
--------------------
READ WRITE
---在節(jié)點1上數(shù)據(jù)庫實例并未受到影響
SQL> select instance_name,instance_number from gv$instance;

INSTANCE_NAME    INSTANCE_NUMBER
---------------- ---------------
rac12db1                       1
rac12db2                       2

SQL>
 select instance_name,instance_number from v$instance;

INSTANCE_NAME    INSTANCE_NUMBER
---------------- ---------------
rac12db1                       1

SQL>

grid用戶下:

查看節(jié)點2 asm連接信息,查看節(jié)點2上訪問ASM實例的客戶端,有了來自節(jié)點1的客戶端訪問。

SQL> select distinct instance_name,db_name,status from v$asm_client; 
  
INSTANCE_NAME                    DB_NAME          STATUS
---------------------------- ---------------- -----------------------
+ASM2                           +ASM               CONNECTED
-MGMTDB                         _mgmtdb            CONNECTED
rac12db1                        rac12db            CONNECTED
rac12db2                        rac12db            CONNECTED
rac12node2                      _OCR               CONNECTED
Flex ASM可以在ASM實例意外終止后(節(jié)點 1),讓受影響節(jié)點作為客戶端訪問遠(yuǎn)程節(jié)點(節(jié)點2)的ASM實例。
  • asmcmd連接查看

---強制連接到+ASM1

[grid@rac12node1 ~]$ asmcmd --privilege sysasm --inst +ASM1
Connected to an idle instance.

---強制連接到+ASM2

[grid@rac12node1 ~]$ asmcmd --privilege sysasm --inst +ASM2
ASMCMD> lsct //查看asm實例連接情況
DB_Name Status Software_Version Compatible_version Instance_Name Disk_Group
+ASM CONNECTED 12.2.0.1.0 12.2.0.1.0 +ASM2 DATADG
+ASM CONNECTED 12.2.0.1.0 12.2.0.1.0 +ASM2 MGMTDG
+ASM CONNECTED 12.2.0.1.0 12.2.0.1.0 +ASM2 OCRDG
_mgmtdb CONNECTED 12.2.0.1.0 12.2.0.0.0 -MGMTDB MGMTDG
rac12db CONNECTED 12.2.0.1.0 12.2.0.0.0 rac12db1 DATADG
rac12db CONNECTED 12.2.0.1.0 12.2.0.0.0 rac12db2 DATADG
_OCR CONNECTED - - rac12node2 OCRDG
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 8192 1824 0 1824 0 N DATADG/
MOUNTED EXTERN N 512 512 4096 4194304 40960 34232 0 34232 0 N MGMTDG/
MOUNTED EXTERN N 512 512 4096 4194304 3072 2736 0 2736 0 Y OCRDG/
ASMCMD>

總結(jié):數(shù)據(jù)庫實例使用一個專用 ASM 實例,我們強制該 ASM 實例被停止工作來模擬故障,因此數(shù)據(jù)庫實例重新連接到另一節(jié)點(在本示例中為節(jié)點 2 (rac2))上的現(xiàn)有 ASM 實例。

  • 查看節(jié)點2上訪問ASM實例的客戶端,有了來自節(jié)點1的客戶端訪問。

節(jié)點2初始狀態(tài):

set line 200
col INSTANCE_NAME for a60
select distinct instance_name,db_name,status from v$asm_client;

INSTANCE_NAME DB_NAME STATUS
----------------------------------------------- ------------------------ --------------------------
+ASM2 +ASM CONNECTED
-MGMTDB _mgmtdb CONNECTED
rac12db2 rac12db CONNECTED
rac12node2 _OCR CONNECTED

手動關(guān)掉節(jié)點1 asm實例:
[grid@rac12node1 ~]$ srvctl stop asm -node rac12node1 -stopoption abort -force

手動關(guān)掉節(jié)點1 asm實例:

[grid@rac12node1 ~]$ srvctl stop asm -node rac12node1 -stopoption abort -force

再次查看節(jié)點2 asm連接信息,查看節(jié)點2上訪問ASM實例的客戶端,有了來自節(jié)點1的客戶端訪問。

SQL> select distinct instance_name,db_name,status from v$asm_client; 

INSTANCE_NAME DB_NAME STATUS
-------------------------------------------- ---------------------- -------------------------------
+ASM2 +ASM CONNECTED
-MGMTDB _mgmtdb CONNECTED
rac12db1 rac12db CONNECTED
rac12db2 rac12db CONNECTED
rac12node2 _OCR CONNECTED


三. Oracle Database 11.2 或早期版本

如前面針對 Oracle 12c 的介紹所述,ASM 與數(shù)據(jù)庫實例的關(guān)聯(lián)本質(zhì)上是特定的。這意味著,如果 ASM 實例無法啟動,該節(jié)點/ASM 中的關(guān)聯(lián)數(shù)據(jù)庫實例也無法啟動,從而導(dǎo)致該數(shù)據(jù)庫無法訪問。

1. 登錄 RAC 數(shù)據(jù)庫實例 1 (rac1)

login as: oracle
oracle@192.168.xx.xxs password:
Last login: Fri Sep 27 06:05:44 2013

2. 檢查 ASM 實例和 RAC 數(shù)據(jù)庫實例的狀態(tài):

[oracle@rac1 ~]$ ps -ef | grep pmon
oracle 3053     1  0 05:56 ? 00:00:00 asm_pmon_+ASM1
oracle 3849     1  0 05:57 ? 00:00:00 ora_pmon_flavia1

3. 在 RAC 數(shù)據(jù)庫實例 1 (rac1) 中檢查 ASM 實例的狀態(tài)

[oracle@rac1 ~]$ srvctl status asm
ASM is running on rac2,rac1

4. 在 RAC 數(shù)據(jù)庫實例 1 (rac1) 中檢查集群的狀態(tài)

[oracle@rac1 ~]$ crsctl check cluster
CRS-4537: Cluster Ready Services is online
CRS-4529: Cluster Synchronization Services is online
CRS-4533: Event Manager is online

5. 在 RAC 數(shù)據(jù)庫實例 1 (rac1) 中停止 ASM 實例

[oracle@rac1 ~]$ srvctl stop asm -n rac1 -o abort -f

6. 在 RAC 數(shù)據(jù)庫實例 1 (rac1) 中檢查 ASM 實例的狀態(tài)

[oracle@rac1 ~]$ srvctl status asm
ASM is running on rac2

7. 檢查 ASM 實例和 RAC 數(shù)據(jù)庫實例 (rac1) 的狀態(tài)

[oracle@rac1 ~]$ ps -ef | grep pmon
oracle 7885  5795  0 06:20 pts/0    00:00:00 grep pmon

總結(jié):數(shù)據(jù)庫實例與 ASM 實例強關(guān)聯(lián)。如果 ASM 實例發(fā)生故障,同一節(jié)點上的數(shù)據(jù)庫實例也會發(fā)生故障。


四. 為何使用Oracle Flex ASM

  • Oracle Flex ASM 支持 Oracle Database 12c 客戶端使用更大的 LUN 大小。
  • 支持的最大磁盤組數(shù)為 511。

  • 可以靈活地重命名磁盤組中的 ASM 磁盤。

  • ASM 實例的補丁級驗證

  • 滾動補丁期間禁用補丁級驗證

  • 復(fù)制物理元數(shù)據(jù)


五. Oracle Flex ASM中的網(wǎng)絡(luò)增強

  • 在早期版本中,集群要求:

  • 一個供客戶端應(yīng)用訪問的公共網(wǎng)絡(luò)

    一個或多個用于集群內(nèi)節(jié)點間通信(包括 ASM 通信)的專用網(wǎng)絡(luò)

  • Flex ASM 增加 ASM 網(wǎng)絡(luò),可用于 ASM 與其客戶端之間的通信,以便隔離和分流 ASM 通信。


六. 部署 Flex ASM

在12.2.0.1版本中,已經(jīng)強制使用Flex ASM,在安裝是無需選擇,F(xiàn)lex ASM已經(jīng)默認(rèn)集成在12.2.0.1版本中


END


更多精彩干貨分享

點擊下方名片關(guān)注

IT那活兒

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/129880.html

相關(guān)文章

  • 深入字節(jié)碼 -- 計算方法執(zhí)行時間

    摘要:什么是字節(jié)碼程序通過編譯之后生成文件就是字節(jié)碼集合正是有這樣一種中間碼字節(jié)碼,使得等函數(shù)語言只用實現(xiàn)一個編譯器即可運行在上。 什么是字節(jié)碼? java程序通過javac編譯之后生成文件.class就是字節(jié)碼集合,正是有這樣一種中間碼(字節(jié)碼),使得scala/groovy/clojure等函數(shù)語言只用實現(xiàn)一個編譯器即可運行在JVM上??纯匆欢魏唵未a。 public long ...

    娣辯孩 評論0 收藏0
  • Android 性能監(jiān)控系列一(原理篇)

    摘要:全稱應(yīng)用性能管理監(jiān)控后面我會通過一系列的文章來介紹的原理框架設(shè)計與實現(xiàn)等等。在應(yīng)用構(gòu)建期間,通過修改字節(jié)碼的方式來進(jìn)行字節(jié)碼插樁就是實現(xiàn)自動化的方案之一。 showImg(https://segmentfault.com/img/bVbbRX6?w=1995&h=1273); 歡迎關(guān)注微信公眾號:BaronTalk,獲取更多精彩好文! 一. 前言 性能問題是導(dǎo)致 App 用戶流失的罪魁...

    yacheng 評論0 收藏0
  • DBASK問答集萃第四期

    摘要:問題九庫控制文件擴展報錯庫的擴展報錯,用的是裸設(shè)備,和還是原來大小,主庫的沒有報錯,并且大小沒有變,求解釋。專家解答從報錯可以看出,控制文件從個塊擴展到個塊時報錯,而裸設(shè)備最大只支持個塊,無法擴展,可以嘗試將參數(shù)改小,避免控制文件報錯。 鏈接描述引言 近期我們在DBASK小程序新關(guān)聯(lián)了運維之美、高端存儲知識、一森咖記、運維咖啡吧等數(shù)據(jù)領(lǐng)域的公眾號,歡迎大家閱讀分享。 問答集萃 接下來,...

    SKYZACK 評論0 收藏0
  • 為何Spring MVC可獲取到方法參數(shù)名,而MyBatis卻不行?【享學(xué)Spring MVC】

    每篇一句 胡適:多談些問題,少聊些主義 前言 Spring MVC和MyBatis作為當(dāng)下最為流行的兩個框架,大家平時開發(fā)中都在用。如果你往深了一步去思考,你應(yīng)該會有這樣的疑問: 在使用Spring MVC的時候,你即使不使用注解,只要參數(shù)名和請求參數(shù)的key對應(yīng)上了,就能自動完成數(shù)值的封裝 在使用MyBatis(接口模式)時,接口方法向xml里的SQL語句傳參時,必須(當(dāng)然不是100%的必須,...

    孫淑建 評論0 收藏0
  • Asm.js: Javascript的編譯目標(biāo)

    摘要:來自于應(yīng)用的一個新領(lǐng)域編譯成的應(yīng)用它是應(yīng)用的一個全新流派,由的項目催生而來。所有外部數(shù)據(jù)在一個稱為堆的對象中存儲并被引用。到目前為止,大部分的使用情況下,代碼性能是至關(guān)重要的比如運行游戲,圖像,處理語言翻譯和庫。 正如許多開發(fā)者一樣,我也為Asm.js的前景而感到興奮不已。最近的新聞——Asm.js正在被Firefox支持——引起了我的興趣。同樣感興趣的還有Mozilla和Epic聲明...

    用戶84 評論0 收藏0

發(fā)表評論

0條評論

IT那活兒

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<