1. 程式人生 > >【ORACLE RAC】維護:asm維護, srvctl、crsctl,orcconfig等指令的使用。

【ORACLE RAC】維護:asm維護, srvctl、crsctl,orcconfig等指令的使用。

2 asm

************************************************************************
****原文:blog.csdn.net/clark_xu  徐長亮的專欄
************************************************************************
管理

2.1檢視資料檔案所在位置

select name from v$datafile

union

select member from v$logfile

union

select name from v$controlfile

union

select name from v$tempfile;

2.2在庫例項中檢視asm diskgroup

檢視:V$asm_diskgroup, v$asm_disk,

Select GROUP_NUMBER,NAME,STATE,TYPE,TOTAL_MB,FREE_MBUNBALANCED from v$asm_diskgroup ;

檢視更詳細的資訊

select STATE,REDUNDANCY,TOTAL_MB,FREE_MB,NAME,FAILGROUP from v$asm_disk;

TATE    REDUNDA  TOTAL_MB    FREE_MB NAME

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

FAILGROUP

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

NORMAL   UNKNOWN      2048          0 DGDATA_0000

NORMAL   UNKNOWN      2048          0 DGDATA_0001

NORMAL   UNKNOWN        512          0 DGFRA_0000

檢視asm disk

SQL>select path,group_number from v$asm_disk;

[[email protected] crs]$ export ORACLE_SID=+ASM1

[[email protected] crs]$ asmcmd

ASMCMD> ls

DGDATA/

DGFRA/

 [[email protected] ~]$ asmcmd lsdg

State    Type   Rebal  Unbal  Sector Block       AU  Total_MB Free_MB  Req_mir_free_MB  Usable_file_MB  Offline_disks Name

MOUNTED  EXTERN N      N         512  4096  1048576      4096    2777                0            2777              0 DGDATA/

MOUNTED  EXTERN N      N         512  4096  1048576       512     178                0             178              0 DGFRA/

[[email protected] ~]$ asmcmd lsct

DB_Name   Status       Software_Version Compatible_version  Instance_Name

EDWPRD    CONNECTED           10.2.0.1.0          10.2.0.1.0  EDWPRD1

EDWPRD    CONNECTED           10.2.0.1.0          10.2.0.1.0  EDWPRD1

[[email protected] ~]$ asmcmd ls -l

State    Type   Rebal  Unbal  Name

MOUNTED  EXTERN N      N      DGDATA/

MOUNTED  EXTERN N      N      DGFRA/

3.監聽的管理

LSNRCTL> help

The following operations are available

An asterisk (*) denotes a modifierorextended command:

start               stop                status             

services            version             reload             

save_config         trace               spawn              

change_password     quit                exit               

set*                show*              

LSNRCTL> status

Connectingto(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=172.16.10.173)(PORT=1521)))(連線監聽器的名稱和資訊:主機名+監聽埠號)

STATUS of the LISTENER

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

Alias                     LISTENER

Version                   TNSLSNR for Linux:Version10.2.0.5.0 Production(Listener版本資訊,在一臺機器多例項的情況下,很重要!因為版本對應向下相容)

Start Date                05-DEC-2012 16:29:42

Uptime                    47 days 17 hr. 58 min. 56sec

Trace Level               off(除錯資訊,可以設定針對監聽器的跟蹤)

Security                  ON: Local OS Authentication(表明啟動、關閉監聽器的操作許可權是通過OS驗證實現的。也就意味著,可以對監聽器設定密碼專案,也是Oracle安全配置的一個重要方面)

SNMP                      OFF

Listener Parameter File  /u01/app/oracle/product/10.2/db_1/network/admin/listener.ora(引數檔案位置)

Listener Log File       /u01/app/oracle/product/10.2/db_1/network/log/listener.log(日誌檔案位置)

Listening Endpoints Summary...

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=172.16.10.173)(PORT=1521)))

(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC0)))

Services Summary... (當前已經註冊在監聽器中的服務列表)

4節點層和網路層維護

[email protected] ~]$ olsnodes -n

host1  1

host2  2

[[email protected] ~]$ olsnodes -p

host1  host1-priv

host2  host2-priv

[[email protected] ~]$ olsnodes -i

host1  host1-vip

host2  host2-vip

[[email protected] ~]$ olsnodes -l

host1

Oracle的每個網路介面包括名稱,網段地址,介面型別3個屬性

Oifcfg 命令的格式如下:interface_name/subnet:interface_type

介面型別有兩種,publicprivate,前者說明介面用於外部通訊,用於Oracle NetVIP地址,而後者說明介面用於Interconnect。介面的配置方式分為兩類: globalnode-specific。前者說明叢集所有節點的配置資訊相同,而後者意味著這個節點的配置和其他節點配置不同

Iflist:顯示網口列表

Getif: 獲得單個網口資訊

Setif:配置單個網口

Delif:刪除網口

oifcfg getif

eth0 100.100.100.0  global  public

eth1 10.10.10.0  global  cluster_interconnect

#刪除介面配置

[[email protected] bin]# ./oifcfg delif -global

#新增介面配置

[[email protected] bin]# ./oifcfg setif -globaleth0/192.168.1.119:public

[[email protected] bin]# ./oifcfg setif -globaleth1/10.85.10.119:cluster_interconnect

5叢集層管理

#檢查crs狀態

[[email protected] ~]$ crsctl check crs

CSS appears healthy

CRS appears healthy

EVM appears healthy

CRS 程序棧預設隨著作業系統的啟動而自啟動,有時出於維護目的需要關閉這個特性,可以用root使用者執行下面命令,這個命令實際是修改了/etc/oracle/scls_scr/raw/root/crsstart這個檔案裡的內容。

[[email protected] ~]$ crsctl disable crs

Insufficient user privileges.

[[email protected] ~]$ su -

Password:

[[email protected] ~]# /oracle/product/crs/bin/crsctldisable crs

#檢視 votedisk

[[email protected] ~]$ crsctl query css votedisk

 0.    0    /dev/raw/raw3

 1.    0    /dev/raw/raw4

 2.    0    /dev/raw/raw5

located 3 votedisk(s).

檢視服務模組

[[email protected] ~]$ crsctl lsmodules css

The following are the CSS modules ::

   CSSD

   COMMCRS

COMMNS

5.1.1新增votedisk

1)  停止所有節點的CRS

[[email protected] bin]# ./crsctl stop crs

2)新增Votedisk

    [[email protected] bin]# ./crsctl add css votedisk /dev/raw/raw1 -force

注意:即使在CRS 關閉後,也必須通過-force 引數來新增和刪除Votedisk,並且-force引數只有在CRS關閉的場合下使用才安全。

否則會報:Cluter is not a ready state for online disk addition.

3)  確認新增後的情況:

[[email protected] bin]# ./crsctl query cssvotedisk

4)啟動CRS

[[email protected] bin]# ./crsctl start crs

只有一個節點能對OCR Disk進行讀寫操作,這個節點叫作Master Node,所有節點都會在記憶體中保留一份OCR的拷貝,同時喲一個OCR Process從這個記憶體中讀取內容。 OCR 內容發生改變時,由Master NodeOCR Process負責同步到其他節點的OCR Process。因為OCR的內容如此重要,Oracle4個小時對其做一次備份,並且保留最後的3個備份,以及前一天,前一週的最後一個備份。這個備份由Master Node CRSD程序完成,備份的預設位置是$CRS_HOME/crs/cdata/<cluster_name>目錄下。每次備份後,備份檔名自動更改,以反應備份時間順序,最近一次的備份叫作backup00.ocr。這些備份檔案除了儲存在本地,DBA還應該在其他儲存裝置上保留一份,以防止意外的儲存故障

#ocrdump:列印orcdump的內容

-stdout: 把內容列印輸出到螢幕上

Filename:內容輸出到檔案中

-keyname:只打印某個鍵及其子健內容

-xml:以xml格式列印輸出

 [[email protected]]$ ocrcheck

Status of Oracle Cluster Registry is asfollows :

        Version                  :          2

        Total space (kbytes)     :     204712

        Used space (kbytes)      :       3804

        Available space (kbytes) :    200908

        ID                       :1631858718

         Device/File Name         : /dev/raw/raw1

                                    Device/Fileintegrity check succeeded

        Device/File Name         :/dev/raw/raw2

                                    Device/Fileintegrity check succeeded

命令執行過程會在$CRS_HOME/log/nodename/client目錄下產生ocrcheck_pid.log日誌檔案

OCR磁碟最多隻能有兩個,一個PrimaryOCR和一個Mirror OCR

-- 檢視自助備份

[[email protected] crs]$ ocrconfig -showbackup

host1    2014/02/17 04:40:40    /oracle/product/crs/cdata/crs

Oracle 建議使用 cluvfy comp ocr-n all命令來做一次全面的檢查。

[[email protected] crs]$ cluvfy comp ocr -n all

Verifying OCR integrity

Checking OCR integrity...

Checking the absence of a non-clusteredconfiguration...

All nodes free of non-clustered, local-onlyconfigurations.

Uniqueness check for OCR device passed.

Checking the version of OCR...

OCR of correct Version "2"exists.

Checking data integrity of OCR...

Data integrity check for OCR passed.

OCR integrity check passed.

Verification of OCR integrity wassuccessful.

1)首先關閉所有節點的CRS

[[email protected] bin]# ./crsctl stop crs

2)用root使用者匯出OCR內容

[[email protected] bin]# ./ocrconfig -export/u01/ocr.exp

3)重啟CRS

[[email protected] bin]# ./crsctl start crs

Attempting to start CRS stack

The CRS stack will be started shortly

 4)檢查CRS狀態

[[email protected] bin]# ./crsctl check crs

CSS appears healthy

CRS appears healthy

EVM appears healthy

 5)破壞OCR內容

[[email protected] bin]# dd if=/dev/zeroof=/dev/raw/raw1 bs=1024 count=102400

102400+0 records in

102400+0 records out

6)檢查OCR一致性

[[email protected] bin]# ./ocrcheck

PROT-601: Failed to initialize ocrcheck

7)使用cluvfy工具檢查一致性

[[email protected] cluvfy]# ./runcluvfy.sh comp ocr-n all

Verifying OCR integrity

Unable to retrieve nodelist from Oracleclusterware.

Verification cannot proceed.

8)使用Import恢復OCR 內容

[[email protected] bin]# ./ocrconfig -import/u01/ocr.exp

9)再次檢查OCR

[[email protected] bin]# ./ocrcheck

6應用層

#crs_stat:

檢視制定資源狀態

[[email protected] bin]# ./crs_stat ora.raw2.vip

使用-v 選項,檢視詳細內容,這時輸出多出4項內容,分別是允許重啟次數,已執行重啟次數,失敗閥值,失敗次數

使用-p 選項檢視更詳細內容

使用-ls 選項,可以檢視每個資源的許可權定義

這個命令用於管理配置ONS(Oracle Notification Service).

檢視程序狀態

Onsctl ping

ONS Oracle Clusterware實現FAN EventPush模型的基礎。RAC環境中,需要使用$CRS_HOME下的ONS,而不是$ORACLE_HOME下面的ONS,這點需要注意配置檔案在$CRS_HOME/opmn/conf/ons.config.

物件:DatabaseInstanceASMServiceListener Node Application,其中Node application又包括GSDONSVIPONS可以使用onsctl命令進行管理;Listener可以通過lsnrctl 管理

使用config檢視配置

[[email protected] crs]$ srvctl config database-d EDWPRD -a

host1 EDWPRD1 /oracle/product/10.2.0

host2 EDWPRD2 /oracle/product/10.2.0

DB_NAME: EDWPRD

ORACLE_HOME: /oracle/product/10.2.0

SPFILE: +DGDATA/EDWPRD/spfileEDWPRD.ora

DOMAIN: null

DB_ROLE: null

START_OPTIONS: null

POLICY: AUTOMATIC

ENABLE FLAG: DB ENABLED

[[email protected] crs]$ srvctl config nodeapps-n host2 -a

VIP exists.: /host2-vip/100.100.100.21/255.255.255.0/eth0

[[email protected] crs]$ srvctl config nodeapps-n host2 -g

GSD exists.

[[email protected] crs]$ srvctl config nodeapps-n host2 -s

ONS daemon exists.

[[email protected] crs]$ srvctl config nodeapps-n host2 -l

Listener exists.

[[email protected] crs]$ srvctl config listener-n host1

host1 LISTENER_HOST1

[[email protected] crs]$ srvctl config asm -nhost1

+ASM1 /oracle/product/10.2.0

[[email protected] crs]$

一般情況下,應用層資源通過dbca netca,vipca自動註冊到OCR中的.

但是有些時候需要手工把資源註冊到OCR中。這時候就需要add命令了。

1)新增資料庫

[[email protected] bin]# ./srvctl add database -ddmm -o $ORACLE_HOME

2)  新增例項

[[email protected] bin]# ./srvctl add instance -ddmm -n rac1 -i dmm1

[[email protected] bin]# ./srvctl add instance -ddmm -n rac2 -i dmm2

預設情況下資料庫,例項,服務,ASM都是隨著CRS的啟動而自啟動的,有時候由於維護的需要,可以先關閉這個特性。

-- 啟用資料庫的自啟動:

[[email protected] bin]# ./srvctl enable database-d raw

-- 禁止資料庫在CRS啟動後自啟動,這時需要手動啟動

[[email protected] bin]# ./srvctl disable database-d raw

關閉某個例項的自動啟動

[[email protected] bin]# ./srvctl disable instance-d raw -i raw1

[[email protected] bin]# ./srvctl enable instance -draw -i raw1

禁止某個服務在例項上執行

[[email protected] bin]# ./srvctl enable service -draw -s rawservice -i raw1

[[email protected] bin]# ./srvctl disable service-d raw -s rawservice -i raw1

使用remove命令刪除的是物件在OCR中的定義資訊,物件本身比如資料庫的資料檔案等不會被刪除,以後隨時可以使用add命令重新新增到OCR中。

1) 刪除Service,在刪除之前,命令會給出確定提示

[[email protected] bin]# ./srvctl remove service -draw -s rawservice

2)刪除例項,刪除之前同樣會給出提示

[[email protected] bin]# ./srvctl remove instance-d raw -i raw1

3)刪除資料庫

[[email protected] bin]# ./srvctl remove database-d raw

6.3.5啟動和關閉模式

啟動資料庫,預設啟動到open狀態

[[email protected] bin]# ./srvctl start database -draw

2)指定啟動狀態

[[email protected] bin]# ./srvctl start database -draw -i raw1 -o mount

[[email protected] bin]# ./srvctl start database -draw -i raw1 -o nomount

3)關閉物件,並指定關閉方式

[[email protected] bin]# ./srvctl stop instance -draw -i raw1 -o immediate

[[email protected] bin]# ./srvctl stop instance -draw -i raw1 -o abort

4)  在指定例項上啟動服務:

[[email protected] bin]# ./srvctl start service -draw -s rawservice -i raw1

-- 檢視服務狀態

[[email protected] bin]# ./srvctl status service -draw -v

5)關閉指定例項上的服務

[[email protected] bin]# ./srvctl stop service -draw -s rawservice -i raw1

相關推薦

ORACLE RAC維護asm維護 srvctlcrsctl,orcconfig指令的使用

2 asm ************************************************************************ ****原文:blog.csdn.net/

ORACLE RACroot.sh原理ocr管理

************************************************************************ ****原文:blog.csdn.net/clark_

ORACLE RAC修改歸檔位置: FRA和其他位置

************************************************************************ ****原文:blog.csdn.net/clark

程式10題目列印樓梯同時在樓梯上方列印兩個笑臉

1.程式分析:用ASCII 1 來輸出笑臉;用i控制行,j來控制列,j根據i的變化來控制輸出黑方格的個數。(如出現亂碼,解決方法參考【程式7】) 2.程式原始碼: #include<stdio.h> int main() { int i,j; printf(

程式13 題目一個整數它加上100後是一個完全平方數再加上168 又是一個完全平方數請問該數是多少?

/* 2017年3月6日15:19:01 java基礎50道經典練習題 例13 Athor: ZJY Purpose: 【程式13】 題目:一個整數,它加上100後是一個完全平方數,再加

洛谷4180模板嚴格次小生成樹[BJWC2010]鏈剖線段樹維護最大嚴格次大值

P4180 【模板】嚴格次小生成樹[BJWC2010] 題目描述 小C最近學了很多最小生成樹的演算法,Prim演算法、Kurskal演算法、消圈演算法等等。正當小C洋洋得意之時,小P又來潑小C冷水了。小P說,讓小C求出一個無向圖的次小生成

Oracle RAC+DG實驗Oracle RAC+ASM+DataGuard配置實驗記錄+常見問題

【Oracle RAC+DG實驗】Oracle RAC+ASM+DataGuard配置實驗記錄+常見問題 1、環境規劃: ---RAC環境介紹(primary database)            rac1       rac2 ____________________

Oracle 叢集11G RAC 知識圖文詳細教程之RAC在LINUX上使用NFS安裝前準備(六)

目錄 介紹                           下載軟體 本文使用Oracle Enterprise Linux 5.7。 一般的圖形作業系統安裝指南在這裡。 更具體地說,它應該是一個伺服器安裝的2 g交換(最好是3-4G),Li

sql基礎1.DML語句--Oracle資料庫

####七、DML語句 Data Manipulation Language,資料操縱語言,增刪改。 #####1. INSERT語句 ######1.1 格式一 insert into student (stu_id, stu_name) values(1

Oracle 叢集Oracle 11G RAC教程之叢集安裝(七)

Oracle登入rac1進行上傳,解壓安裝p13390677_112040_Linux-x86-64_1of7.zip、p13390677_112040_Linux-x86-64_2of7.zip、p13390677_112040_Linux-x86-64_3of7.zip到/media下,並解壓

Oracle 叢集Linux下Oracle RAC叢集搭建之Oracle DataBase安裝(八)

  以oracle使用者身份登入RAC1主節點,對解壓後的檔案安裝。(只需要主節點進行配置即可,子節點通過ssh通訊,自動配置) ./runInstaller 不選擇複選框security updates checkbox,下一步.  

Oracle 叢集ORACLE DATABASE 11G RAC 知識圖文詳細教程之RAC 特殊問題和實戰經驗(五)

在需要將一個 LUN (邏輯單元號)對映給多個節點、為叢集提供一個共享的儲存卷時,同一個儲存 LUN 在各個主機端的 LUNID 必須是相同的。比如:  (一) 在為多個 ESX 節點建立一個 VMFS 卷的時候 (二) 在雙機 HA 叢集建立共享儲存的時候 時間一致性 叢集模式下,各

Oracle 叢集Linux下Oracle RAC叢集搭建之基本測試與使用(九)

概述:寫下本文件的初衷和動力,來源於上篇的《oracle基本操作手冊》。oracle基本操作手冊是作者研一假期對oracle基礎知識學習的彙總。然後形成體系的總結,一則進行回顧複習,另則便於查詢使用。本圖文文件亦源於此。閱讀Oracle RAC安裝與使用教程前,筆者先對這篇文章整體構思和形成進行梳理。

Oracle 叢集ORACLE DATABASE 11G RAC 知識圖文詳細教程之RAC 工作原理和相關元件(三)

概述:寫下本文件的初衷和動力,來源於上篇的《oracle基本操作手冊》。oracle基本操作手冊是作者研一假期對oracle基礎知識學習的彙總。然後形成體系的總結,一則進行回顧複習,另則便於查詢使用。本圖文文件亦源於此。閱讀Oracle RAC安裝與使用教程前,筆者先對這篇文章整體構思和形成進行梳理。

Oracle 叢集ORACLE DATABASE 11G RAC 知識圖文詳細教程之快取融合技術和主要後臺程序(四)

      前面已經介紹了 RAC 的後臺程序,為了更深入的瞭解這些後臺程序的工作原理,先了解一下 RAC 中多節點對共享資料檔案訪問的管理是如何進行的。要了解 RAC 工作原理的中心,需要知道 Cache Fusion 這個重要的概念,要發揮 Cache Fusion 的作用,要有一個前提條件,那就

Oracle 叢集ORACLE DATABASE 11G RAC 知識圖文詳細教程之叢集概念介紹(一)

白寧超 2015年7月16日 概述:寫下本文件的初衷和動力,來源於上篇的《oracle基本操作手冊》。oracle基本操作手冊是作者研一假期對oracle基礎知識學習的彙總。然後形成體系的總結,一則進行回顧複習,另則便於查詢使用。本圖文文件亦源於此。閱讀Oracle RAC安裝與使用教程前,筆者先

sql基礎多表關聯查詢--Oracle資料庫

####四、多表關聯查詢 #####4.1聯合查詢–等於連結–示例 員工表(員工id, 員工姓名,部門id) 部門表(部門id, 部門名稱) 要查詢員工id、姓名、部門名稱: select 員工表.員工id, 員工表.員工姓名, 部門表.部門姓名 from 員

Oracle RAC OCR 的管理與維護

OCR相當於Windows的登錄檔。對於Windows而言,所有的軟體資訊,使用者,配置,安全等等統統都放到登錄檔裡邊。而叢集呢,同樣如此,所有和叢集相關的資源,配置,節點,RAC資料庫統統都放在這個倉庫裡。如果OCR被破壞則導致叢集服務啟動異常,需要修復OCR。因此OC

深度思考如何優雅告知使用者網站正在升級維護

## 1. 前言 2020-07-30早上到公司後,習慣性的開啟掘金首頁,想看下有沒有自己感興趣的文章,卻意外的看到下面這樣的驚喜: ![](https://images.zwwhnly.com/picture/2020/07/snipaste_20200730_090239.png) 對的,我升級Lv

程序5 題目利用條件運算符的嵌套來完成此題學習成績>=90分的同學用A表示60-89分之間的用B表示60分以下的用C表示 1.程序分析(a>b)?a:b這是條件運算符的基本例子

window code 例子 prompt 利用 學習 amp text span if…else語句相對比較多,但是容易理解 1 var scroe = window.prompt("請輸入1-100之間的數") 2 scroe = parseInt