I. 개요

1. 사용 Software

제품명버전아키텍쳐배포 사이트
VirtualBox6.1.x호스트 환경에 따름https://www.virtualbox.org
Oracle Enterprise Linux7 (Update 5 이상 권장)x86 64bit

https://edelivery.oracle.com/linux

Oracle 11g RAC11.2.0.4Linux x86 64bithttps://edelivery.oracle.com (등록된 고객만 다운로드 가능)
Oracle 11g Grid Patch18370031Linux x86 64bithttps://support.oracle.com (Extended Support 고객만 다운로드 가능)
Oracle 11g Patch Set Update30501155 (202001)Linux x86 64bithttps://support.oracle.com (Extended Support 고객만 다운로드 가능)
Oracle 19c RAC19.3Linux x86 64bithttp://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html
Oracle 19c Release Update30501910 (202001)Linux x86 64bithttps://support.oracle.com (등록된 고객만 다운로드 가능)
Opatch11.2 & 12.2Linux x86 64bithttps://support.oracle.com (등록된 고객만 다운로드 가능)
  • Linux 7에 Grid 설치를 위해서 18370031 패치는 필수 입니다. 패치를 적용하지 않고 root 스크립트를 수행할 경우 클러스터 구성에 실패합니다.
  • Grid를 11.2.0.4에서 19c로 업그레이드 하려면 28553832 (11.2.0.4.GIPSU:191015), 17617807 (11.2.0.4.GIPSU04), 21255373 (11.2.0.4.GIPSU:160419) 패치가 필요합니다.
  • PSU 패치 30501155 (11.2.0.4.GIPSU:200114)를 적용하면 3가지가 통합되어 패치가 됩니다.

2. 구성 계획

A) 서버

VMHost NameMemoryNet Adapter 1Net Adapter 2구성 방법비고
RAC1rac110GB브리지 어댑터호스트 전용 어댑터리눅스 설치dnsmasq를 사용하여 DNS 구성
RAC2rac210GB브리지 어댑터호스트 전용 어댑터RAC1 복제dnsmasq를 사용하여 DNS 구성

리눅스 기반의 2 node RAC로 구성합니다.

B) 스토리지

파일 이름용량타입용도비고
rac1.vdi100GBDynamic / NormalRAC1 노드 스토리지디스크 사용량을 최소화하기 위해 Dynamic으로 생성합니다.
rac2.vdi100GBDynamic / NormalRAC2 노드 스토리지vboxmanage clonemedium을 이용하여 rac1.vdi 파일을 복제합니다.
CRS1.vdi1GBFixed / ShareableOCR / Vote 저장 영역  공유(shareable) 디스크로 사용하기 위해서는 Fixed Size로 생성해야 합니다.  


   


  
CRS2.vdi1GBFixed / Shareable
CRS3.vdi1GBFixed / Shareable
DATA.vdi30GBFixed / ShareableDATA 영역
FRA.vdi20GBFixed / ShareableFast Recovery Area 
RAW.vdi20GBFixed / ShareableRaw Device 영역

Automatic Storage Management를 이용하여 Data 공간과 Fast Recovery Area를 구성합니다.

테스트를 위한 VM이므로 디스크 공간을 절약하기 위해 파일을 업로드 없이 VirtualBox의 게스트 확장 기능으로 VM에서 불러와 사용합니다.

C) 네트워크

VMPublic IPPrivate IPVirtual IPNetmaskGatewayDNS ServerSCAN IP
RAC110.0.1.10110.0.5.10110.0.1.201255.255.255.010.0.1.1127.0.0.1

10.0.1.191, 10.0.1.192, 10.0.1.193

RAC210.0.1.10210.0.5.10210.0.1.202255.255.255.010.0.1.1127.0.0.1

Netmask의 경우 Public과 Private 모두 24bit(255.255.255.0)을 사용합니다.

인터넷 공유기 또는 Gateway의 IP에 맞춰 Public IP와 Virtual IP를 설정하기 바랍니다.

별도의 DNS 서버 구성 없이 dnsmasq를 사용하여 RAC를 구축할 계획이므로 DNS는 Loopback IP로 지정합니다.

3. 호스트 환경

A) 시스템

12c부터는 64비트의 운영체제만을 지원하므로, 호스트 장비 또한 64비트 운영체제를 사용하여 구축해야 합니다.

메모리는 오라클의 권고에 따라 VM 노드당 8GB 이상이 필요하므로, 가능하면 20GB 이상의 메모리가 장착된 환경에서 작업하는 것을 권합니다.

(구축 테스트를 위해 임시적으로 설치하는 것이라면 경고 메시지를 무시하고 8GB 이하로 구성할 수도 있으나, 운영 환경에서는 권고하지 않습니다.)

B) 스토리지

디스크 I/O에 의한 지연을 최소화하기 위해 호스트의 OS가 설치되지 않은 별도의 내장 디스크를 사용하거나 SSD의 사용을 권합니다.

ESATA 또는 USB 3.0 이상의 빠른 속도를 보장하는 외장 디스크를 사용하는 것도 방법일 수 있습니다만 지속적인 연결이 보장되어야 합니다.

사실상 디스크의 속도에 따라 설치에 소요되는 시간이 크게 좌우되므로, 가급적이면 안정적이고 빠른 스토리지를 사용하기 바랍니다.

II. VM 구성

1. VM 생성

RAC 1번 노드 구성을 위한 VM을 생성합니다.

<새로 만들기> 버튼을 클릭합니다.

A) 가상 머신 만들기

OS의 종류는 'Linux'로 하고 설치될 버전은 'Oracle (64-bit)'를 선택합니다.

머신 폴더는 VM 설정을 위한 파일이나, 가상 이미지를 저장할 디렉토리를 선택합니다. 가급적 성능이 좋은 디스크나 SSD에 저장할 것을 권합니다.

Oracle Database은 12c R1 버전부터 64bit만을 지원하고 있습니다.

Client 소프트웨어만 32bit 프로그램을 제공합니다.

기본 메모리는 "10240MB"로 지정합니다.

Grid를 설치하기 위한 최소 메모리는 8GB 이지만, 원활한 작업을 위해서는 가급적 10GB 이상을 할당하는 것이 좋습니다.

새로운 디스크를 생성해야 하므로 '지금 새 가상 하드 디스크 만들기'를 선택하고 <만들기>를 클릭합니다.

B) 가상 하드 디스크 만들기

가상 하드 디스크 파일의 종류는 'VDI(VirtualBox 디스크 이미지)'를 선택한 후 <다음>을 클릭합니다.

물리적 하드 드라이브 저장 방식은 '동적 할당'으로 하고 <다음>을 클릭합니다.

디스크 파일의 크기는 "100GB"로 한 후 <만들기>를 클릭하면 VM이 생성됩니다.

2. VM 설정 변경

생성된 가상 머신의 설정을 변경해야 하므로, 가상 머신을 선택하고 <설정>을 클릭합니다.

A) 시스템

부팅 순서에서 "플로피 디스크"를 해제하고, "광 디스크"가 우선권을 갖도록 합니다.

B) 디스플레이

VirtualBox에서 제공하는 Guest Additions 기능을 설치하는 과정에서 화면이 깨지는 경우가 있으므로, 잠시 그래피 컨트롤러를 "VBoxVGA"로 선택합니다.

설치가 정상으로 된 후에는 원래의 설정인 "VMSVGA"로 원복시켜주면 됩니다.

C) 저장소

설치할 리눅스 디스크 이미지를 마운트 하기 위해 저장소로 이동합니다.

'컨트롤러 : IDE'를 선택하고, 속성의 '광학 드라이브' 우측의 광 디스크 모양 아이콘을 클릭합니다.

리눅스 이미지가 있는 경로를 찾아가서 마운트하면, IDE 컨트롤러에 리눅스 설치 이미지가 마운트 됩니다.

D) 오디오

오디오는 사용하지 않을 것이므로 '오디오 사용하기'는 해제합니다.

E) 네트워크

1번 네트워크 카드를 설치될 환경에 맞게 적절한 장치에 연결합니다.

일반적으로 외부와 통신을 하기 위해서 '어댑터에 브리지'를 선택합니다.

RAC 노드간의 통신을 위해 2번 어댑터를 활성화해야 합니다.

어댑터 2번 항목에 가서 '네트워크 어댑터 사용하기'를 체크합니다.

그리고, RAC 노드 내부에서만 사용할 것이므로 '호스트 전용 어댑터'를 클릭합니다.

사전에 VirtualBox의 호스트 전용 네트워크가 생성되어 있어야 합니다.

F) 공유 폴더

VirtualBox 상에서 Guest Additions 을 설치하면, 공유 폴더 기능을 사용할 수 있습니다.

공유 폴더를 설정할 경우, 호스트 서버에 저장된 설치 파일을 업로드 없이 바로 사용할 수 있습니다.

오른쪽에 폴더 모양에 '+' 표시가 있는 아이콘을 클릭합니다.

공유할 폴더를 입력하기 위해 폴더 경로에 '기타'를 선택합니다

공유할 폴더를 선택하고, 폴더 이름을 "oracle"로 지정하고 '자동 마운트'를 선택한 후 <OK>를 클릭합니다

설정 변경이 모두 완료되었으므로 <OK>를 클릭합니다.

리눅스 설치를 위해 <시작> 버튼을 클릭하면, 마운트된 리눅스 이미지로 가상 시스템이 부팅되며 OS 설치가 시작 됩니다.

III. Oracle Linux 7 설치

1. 부팅

A) 미디어 검사 여부 선택

설치 미디어에 대한 테스트 없이 바로 설치를 진행하려면 'Install Oracle Linux 7.x'를 키보드로 선택하고 "엔터"를 입력합니다.

B) 언어 선택

실습의 편의를 위해 설치 언어는 '한국어'를 선택하고 <계속 진행>을 클릭합니다.

운영 환경에서는 이슈 발생시의 문제 해결이나 디버깅 등을 위해 영어로 설치하는 것을 권합니다.

2. 설치 요약

A) 소프트웨어 선택

설치 요약 화면입니다.

이 화면에서 각 항목별로 필요한 옵션을 수정한 후에 설치를 진행할 예정입니다.

먼저 '소프트웨어 선택' 항목을 클릭합니다.

서버에서 직접 GUI 모드로 설치하기 위해 '서버 - GUI 사용'을 선택하고, 우측의 '선택한 환경의 기능'에서 다음의 두 기능을 추가합니다.

  • 호환성 라이브러리
  • 개발용 도구

그리고 <완료>를 클릭합니다.

B) 설치 대상

다음으로 '설치 대상'을 수정합니다.

설치할 디스크를 체크하고 '파티션을 설정합니다'를 선택한 후에 <완료> 버튼을 클릭합니다.

C) 파티션 설정

'수동으로 파티션 설정' 화면으로 전환됩니다.

'새로운 Oracle Linux 7.x 설치' 항목 좌측 하단에 <+> 버튼을 클릭하여 마운트 지점을 생성합니다

마운트 지점을 "/boot"로 지정하고 "500MiB"를 할당한 후 <마운트 지점 추가>를 클릭합니다.

swap 영역도 <+> 버튼을 클릭하여 '새 마운트 지점 추가' 창을 연 후에 RAM 크기와 동일한 10GiB를 할당하고, <마운트 지점 추가> 버튼을 클릭합니다.

swap의 크기는 아래와 같이 크기를 할당할 수 있습니다.

물리 메모리(RAM) 크기swap 영역 크기
1GB~2GBRAM의 1.5배 크기
2GB~16GBRAM과 동일한 크기
16GB 이상16GB

동일한 방식으로 나머지 공간을 "/"(root) 영역에 할당 합니다.

용량 항목을 빈 칸으로 입력한 후 <마운트 지점 추가>를 클릭하면 나머지 전체 영역이 할당됩니다.

각각의 마운트 지점이 아래와 같은 크기로 할당됩니다.

할당 영역

크기

/boot200MB
swap10GB
/나머지 공간 할당

적용된 내용을 확인한 후에 <완료> 버튼을 클릭합니다.

변경 요약 화면이 나오면 <변경 사항 적용> 버튼을 클릭합니다.

D) KDUMP

실습을 위한 구축이므로 'KDUMP' 항목에서 kdump 기능을 비활성화하려 합니다.

'KDUMP' 항목으로 이동합니다.

'kdump 활성화'를 해제합니다.

운영 환경에서는 문제 해결 등의 이유로 활성화된 상태로 사용할 수 있으며, 운영 정책에 따라 지정해야 합니다.

필요한 옵션을 선택하였으면 <완료>를 클릭합니다

네트워크 및 호스트명

네트워크와 호스트명을 변경하기 위해 '네트워크 및 호스트명' 항목을 선택합니다.

네트워크와 호스트 이름을 설정해야 합니다.

좌측에서 Public 네트워크와 연결할 이더넷 인터페이스인 enp0s3을 선택하고 우측 하단의 <설정> 버튼을 클릭합니다.

VirtualBox가 아닌 VMware를 사용할 경우, 인터페이스 이름이 다를 수 있습니다.

(https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Networking_Guide/ch-Consistent_Network_Device_Naming.html)

네트워크 인터페이스명은 BIOS나 firmware를 기준으로 자동으로 생성됩니다.

RAC를 구성하는데 있어서, 모든 노드의 public 이더넷과 private 이더넷의 이름이 각 그룹내에서 동일해야 경고없이 설치나 패치를 진행할 수 있습니다.

일반 탭에서 '사용 가능하면 자동으로 이 네트워크에 연결'을 체크합니다.

IPv4 설정 탭으로 이동하여 방식에 '수동'을 선택합니다.

'Add' 버튼을 클릭하고 다음의 정보를 입력합니다.

항목입력값비고
주소10.0.1.1011번 노드 Public IP 주소
넷마스크24서브넷 마스크 값으로  255.255.255.0 사용 가능
게이트웨이10.0.1.1Public 망의 게이트웨이
DNS 서버127.0.0.1dnsmasq를 사용할 경우 loopback IP 사용
검색 도메인localdomain로컬 도메인 정보 입력

DNS가 없는 환경이어서 dnsmasq를 사용할 것이므로 DNS 서버에 "127.0.0.1"을 입력하였으나, 운영 환경에서는 적절한 DNS 주소 입력이 필요합니다.

IPv6는 사용하지 않을 것이므로 방식에 '무시'를 선택하고, <저장>을 클릭합니다.

이더넷(enp0s3)에 입력한 Public 네트워크 정보가 적용된 것을 확인할 수 있습니다.

이번에는 좌측에서 Private 네트워크와 연결할 이더넷 인터페이스인 enp0s8을 선택하고 우측 하단의 <설정> 버튼을 클릭합니다.

일반 탭에서 '사용 가능하면 자동으로 이 네트워크에 연결'을 체크합니다.

IPv4 설정 탭으로 이동하여 방식에 '수동'을 선택합니다.

'Add' 버튼을 클릭하고 다음의 정보를 입력합니다.

항목입력값비고
주소10.0.5.1011번 노드 Private IP 주소
넷마스크24서브넷 마스크 값으로  255.255.255.0 사용 가능

Private 망을 위한 설정으로 게이트웨이나 DNS값은 비워둡니다.

실습에서는 Private 연결에 별도의 장치를 구성하지는 않았지만, 운영 환경에서는 노드 간의 통신은 L2 이상의 장비를 통해 연결되어야 합니다. (오라클 권고)

IPv6는 사용하지 않을 것이므로 방식에 '무시'를 선택하고, <저장>을 클릭합니다.

이더넷(enp0s8)에 입력한 Private 네트워크 정보가 적용된 것을 확인할 수 있습니다.

좌측 하단에 서버에 사용될 호스트명을 입력하고 <적용>을 클릭합니다.

실습 환경에서는 1번 노드는 "rac1"을 사용할 것입니다.

네트워크 구성이 완료되었으므로 <완료> 버튼을 클릭합니다.

E) SECURITY POLICY

보안 관련 설정을 변경하기 위해 'SECURITY POLICY' 항목으로 이동합니다.

실습에서는 'SECURITY POLICY'의 모든 내용을 끄고 진행하겠습니다.

'Apply security policy'를 끄고 <완료>를 클릭합니다.

운영 환경에서는 보안 정책을 고려하여 설정을 변경할 것을 권고합니다.

설치를 위한 사전 준비가 모두 완료되었으므로 <설치 시작>을 클릭합니다.

3. 사용자 설정

A) ROOT 암호

설치가 진행되는 중간에 root 계정의 암호와 추가 사용자를 생성할 수 있습니다.

먼저 'ROOT 암호'를 선택합니다.

적당한 암호를 입력하고 <완료> 버튼을 클릭합니다.

취약한 암호를 사용할 경우에는 <완료> 버튼을 2번 클릭해야 합니다.

B) 사용자 생성

'사용자 생성'에서는 root와는 별개의 관리자 권한을 생성하겠습니다.

리눅스 7버전에서는 별도의 관리자 계정을 생성하여 사용하는 것을 권하고 있습니다.

추가할 관리자 계정의 정보를 입력하고 <완료> 버튼을 클릭합니다.

OS 설치가 진행되는 동안 기다립니다.

4. 재부팅

설치가 완료되면 <재부팅> 버튼을 클릭합니다.

가상 머신이 재부팅됩니다.

A) LICENSE INFORMATION

재부팅 화면에서 'LICENSE INFORMATION'을 클릭하여 라이센스 동의를 진행합니다.

'약관에 동의합니다'를 체크하고 <완료>를 클릭합니다.

모든 구성이 완료되었으므로 본격적인 사용을 위해 <설정 완료>를 클릭합니다.

IV. 리눅스 환경 설정

1. GUI 접속 환경 설정

A) root 계정 접속

VirtualBox를 사용하는 실습 환경에서는 편의를 위해 Guest Addition을 설치하는 것이 좋습니다.

VMware라면 VMware Tools를 설치할 수 있습니다.

물론 가상머신을 사용하지 않는 운영 환경에서는 이 방법을 사용할 수 없고, ftp나 sftp 등의 방식으로 파일을 서버에 업로드해야 합니다.

root 유저로 접속하기 위해서 초기 접속 화면에 '목록에 없습니까?'를 클릭합니다.

사용자 이름에 "root"를 입력하고 <다음>을 클릭합니다.

암호에 root 계정의 암호를 입력하고 <다음>을 클릭합니다.

처음 접속시 환영 메시지와 함께 초기 설정 화면이 나옵니다.

언어를 '한국어'로 선택한 상태에서 <다음>을 클릭합니다.

운영 환경에서는 영어(English)를 사용하는 것을 권합니다.

키보드 배치에 '한국어'가 선택된 상태에서 <다음>을 클릭합니다.

위치 정보 서비스를 '끔'으로 변경하고 <다음>을 클릭합니다.

온라인 계정 설정 화면에서 <건너뛰기>를 클릭합니다.

마지막으로 'Oracle Linux Server 시작'을 클릭하면, 초기 설정 창이 닫힙니다.

시작하기란 새로운 창이 열리면 창 우측 상단의 'x' 표시를 클릭하여 닫아 줍니다.

GUI 모드로 다른 계정에 처음 접속할 때도, 동일한 방식으로 접속을 진행하면 됩니다.

B) VirtualBox Guest Additions 설치

호스트 머신의 VirtualBox 메뉴에서 '장치' > '게스트 확장 CD 이미지 삽입'을 클릭하여, Guest Additions CD를 가상머신에 mount 시켜줍니다

설치 미디어가 인식되면 자동 시작 프로그램에 대한 안내 창이 뜹니다.

설치를 진행하기 위해 <실행>을 클릭합니다.

Guest Additions이 정상적으로 설치되었으면, 마운트 된 설치 이미지를 eject 해야 합니다.

바탕화면을 마우스 우측 버튼으로 클릭하면 드롭다운 메뉴가 펼쳐지며, '터미널 열기'를 클릭하면 됩니다.

터미널에서 eject 명령어로 이미지를 해제한 후, 가상머신의 디스플레이 설정을 변경하기 위해서 shutdown 명령어로 서버를 중지합니다.

가상머신의 설정 메뉴에서 디스플레이의 그래픽 컨트롤러를 'VMSVGA'로 원복한 후에 가상 머신을 다시 기동합니다.

자동 설치 스크립트가 실행되며, VM에 Guest Addition이 설치됩니다.

설치가 완료되면 "엔터"를 입력하여 실행 창을 닫아줍니다.

C) 화면 해상도 변경

가상 머신을 설치하게 되면 기본 화면 크기가 800*600으로 설정되어 있습니다.

OUI 로 설치를 진행하기 위해서는 화면의 해상도를 변경해야 합니다.

메뉴바에서 '프로그램' > '시스템 도구' > '설정'을 클릭합니다.

좌측의 항목 중에서 '장치'를 클릭합니다.

장치 목록에서 '디스플레이'를 선택한 후, '해상도' 부분을 클릭합니다.

해상도를 선택할 수 있는 창이 열리면 '1024x768' 이상의 화면 크기롤 선택합니다.

원하는 해상도를 선택하였으면 우측 상단의 <적용> 버튼을 클릭하여, 선택한 값으로 해상도가 변경되도록 합니다.

정상적으로 화면이 출력된다면, 디스클레이 설정 유지 여부를 뭍는 창에서 '바뀐 사항 유지'를 클릭하면 변경된 해상도로 계속 사용할 수 있게 됩니다.

2. 리눅스 환경 설정

A) 설치 정보 확인

OS 정보 확인
uname -a
cat /etc/oracle-release
[root@rac1 ~]# uname -a
Linux rac1 4.1.12-112.16.4.el7uek.x86_64 #2 SMP Mon Mar 12 23:57:12 PDT 2018 x86_64 x86_64 x86_64 GNU/Linux
[root@rac1 ~]# cat /etc/oracle-release
Oracle Linux Server release 7.5

먼저 설치된 리눅스의 버전 정보를 확인합니다.

B) 미사용 서비스 정리

미사용 서비스 정리
### 방화벽 중지
systemctl stop firewalld
systemctl disable firewalld
### 블루투스 중지
systemctl stop bluetooth
systemctl disable bluetooth
### 시간 동기화 중지
systemctl stop chronyd
systemctl disable chronyd
mv /etc/chrony.conf /etc/chrony.conf.bak
### NTP 중지
systemctl stop ntpdate
systemctl disable ntpdate
### AVAHI 중지
systemctl stop avahi-daemon.socket
systemctl disable avahi-daemon.socket
systemctl stop avahi-daemon
systemctl disable avahi-daemon
### 가상 시스템 관리 중지
systemctl stop libvirtd
systemctl disable libvirtd
[root@rac1 ~]# systemctl stop firewalld
[root@rac1 ~]# systemctl disable firewalld
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.

[root@rac1 ~]# systemctl stop bluetooth
[root@rac1 ~]# systemctl disable bluetooth
Removed symlink /etc/systemd/system/dbus-org.bluez.service.
Removed symlink /etc/systemd/system/bluetooth.target.wants/bluetooth.service.

[root@rac1 ~]# systemctl stop chronyd
[root@rac1 ~]# systemctl disable chronyd
Removed symlink /etc/systemd/system/multi-user.target.wants/chronyd.service.
[root@rac1 ~]# mv /etc/chrony.conf /etc/chrony.conf.bak

[root@rac1 ~]# systemctl stop ntpdate
[root@rac1 ~]# systemctl disable ntpdate

[root@rac1 ~]# systemctl stop avahi-daemon.socket
[root@rac1 ~]# systemctl disable avahi-daemon.socket
Removed symlink /etc/systemd/system/sockets.target.wants/avahi-daemon.socket.

[root@rac1 ~]# systemctl stop avahi-daemon
[root@rac1 ~]# systemctl disable avahi-daemon
Removed symlink /etc/systemd/system/multi-user.target.wants/avahi-daemon.service.
Removed symlink /etc/systemd/system/dbus-org.freedesktop.Avahi.service.

[root@rac1 ~]# systemctl stop libvirtd
[root@rac1 ~]# systemctl disable libvirtd
Removed symlink /etc/systemd/system/multi-user.target.wants/libvirtd.service.
Removed symlink /etc/systemd/system/sockets.target.wants/virtlogd.socket.
Removed symlink /etc/systemd/system/sockets.target.wants/virtlockd.socket.

테스트 환경에서 사용하지 않는 서비스를 정리합니다.

실습 환경에서는 CTSS를 활성화 모드로 운영할 것이므로 NTP나 chrony 등의 시간 동기화 서비스를 중지할 것입니다.

그러나 실제 운영환경에서는 구성 환경을 고려하여 사용 여부를 결정해야하며, 가급적 NTP를 설정(-x 포함)하여 사용하는 것을 권장합니다.

C) 리눅스 제공 필수 패키지 설치

Linux 필수 패키지 설치
cd <리눅스 설치 디스크 마운트 경로>/Packages
rpm -ivh ksh-*.el7.x86_64.rpm
rpm -ivh libaio-devel-*.el7.x86_64.rpm
rpm -ivh oracleasm-support-*.el7.x86_64.rpm
[root@rac1 ~]# cd /run/media/root/OL-7.5\ Server.x86_64/Packages

[root@rac1 Packages]# rpm -ivh ksh-20120801-137.0.1.el7.x86_64.rpm
경고: ksh-20120801-137.0.1.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY
준비 중...                         ################################# [100%]
Updating / installing...
   1:ksh-20120801-137.0.1.el7         ################################# [100%]

[root@rac1 Packages]# rpm -ivh libaio-devel-0.3.109-13.el7.x86_64.rpm
경고: libaio-devel-0.3.109-13.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY
준비 중...                         ################################# [100%]
Updating / installing...
   1:libaio-devel-0.3.109-13.el7      ################################# [100%]

[root@rac1 Packages]# rpm -ivh oracleasm-support-2.1.11-2.el7.x86_64.rpm
경고: oracleasm-support-2.1.11-2.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY
준비 중...                         ################################# [100%]
Updating / installing...
   1:oracleasm-support-2.1.11-2.el7   ################################# [100%]
알림: 'systemctl enable oracleasm.service'에 요청을 전송하고 있습니다.
Created symlink from /etc/systemd/system/multi-user.target.wants/oracleasm.service to /usr/lib/systemd/system/oracleasm.service.

리눅스 설치시에 기본적으로 설치된 패키지 외에 추가로 3개의 패키지를 설치해야 합니다.

리눅스 설치 이미지를 mount한 후에 Package 디렉토리로 이동하여 패키지를 설치합니다.

D) 11g 설치를 위한 필수 패키지 추가 설치

오라클 11g R2를 위한 추가 패키지 설치
rpm -ivh zlib-devel-*.el7.x86_64.rpm
rpm -ivh elfutils-libelf-devel-*.el7.x86_64.rpm
[root@rac1 Packages]# rpm -ivh zlib-devel-1.2.7-17.el7.x86_64.rpm
경고: zlib-devel-1.2.7-17.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY
준비 중...                         ################################# [100%]
Updating / installing...
   1:zlib-devel-1.2.7-17.el7          ################################# [100%]

[root@rac1 Packages]# rpm -ivh elfutils-libelf-devel-0.170-4.el7.x86_64.rpm
경고: elfutils-libelf-devel-0.170-4.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY
준비 중...                         ################################# [100%]
Updating / installing...
   1:elfutils-libelf-devel-0.170-4.el7################################# [100%]

리눅스 7에 오라클 11g R2를 설치하기 위해서는 추가로 elfutils-libelf-devel 패키지를 설치해야 하며, 이 패키지를 설치하기 위해서는 zlib-devel 패키지가 먼서 설치되어야 합니다.

E) OCFS2를 위한 패키지 추가 설치

OCFS2를 위한 패키지 추가 설치
rpm -ivh ocfs2-tools-*.el7.x86_64.rpm
rpm -ivh libcom_err-devel-*.el7.x86_64.rpm
rpm -ivh e2fsprogs-devel-*.el7.x86_64.rpm
rpm -ivh pcre-devel-*.el7.x86_64.rpm
rpm -ivh glib2-devel-*.el7.x86_64.rpm
rpm -ivh ocfs2-tools-devel-*.x86_64.rpm
cd
eject
[root@rac1 Packages]# rpm -ivh ocfs2-tools-1.8.6-9.el7.x86_64.rpm
경고: ocfs2-tools-1.8.6-9.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY
준비 중...                         ################################# [100%]
Updating / installing...
   1:ocfs2-tools-1.8.6-9.el7          ################################# [100%]

[root@rac1 Packages]# rpm -ivh libcom_err-devel-1.42.9-11.0.1.el7.x86_64.rpm
경고: libcom_err-devel-1.42.9-11.0.1.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY
준비 중...                         ################################# [100%]
Updating / installing...
   1:libcom_err-devel-1.42.9-11.0.1.el################################# [100%]

[root@rac1 Packages]# rpm -ivh e2fsprogs-devel-1.42.9-11.0.1.el7.x86_64.rpm
경고: e2fsprogs-devel-1.42.9-11.0.1.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY
준비 중...                         ################################# [100%]
Updating / installing...
   1:e2fsprogs-devel-1.42.9-11.0.1.el7################################# [100%]

[root@rac1 Packages]# rpm -ivh pcre-devel-8.32-17.el7.x86_64.rpm
경고: pcre-devel-8.32-17.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY
준비 중...                         ################################# [100%]
Updating / installing...
   1:pcre-devel-8.32-17.el7           ################################# [100%]

[root@rac1 Packages]# rpm -ivh glib2-devel-2.54.2-2.el7.x86_64.rpm
경고: glib2-devel-2.54.2-2.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY
준비 중...                         ################################# [100%]
Updating / installing...
   1:glib2-devel-2.54.2-2.el7         ################################# [100%]

[root@rac1 Packages]# rpm -ivh ocfs2-tools-devel-1.8.6-9.el7.x86_64.rpm
경고: ocfs2-tools-devel-1.8.6-9.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY
준비 중...                         ################################# [100%]
Updating / installing...
   1:ocfs2-tools-devel-1.8.6-9.el7    ################################# [100%]

[root@rac1 Packages]# cd

[root@rac1 ~]# eject

Raw Device에서 아카이브 로그 저장을 위한 공유 스토리즈를 사용하기 위해 OCFS2를 위한 패키지를 추가로 설치합니다.

설치가 완료되면 설치 이미지 밖의 경로로 이동한 후에 이미지를 eject 시켜줍니다.

그러지 않을 경우, 재부팅시 다시 리눅스 설치 화면으로 돌아오게 됩니다.

Linux 필수 패키지 설치 여부 확인
rpm -q binutils
rpm -q compat-libcap1
rpm -q compat-libstdc++-33
rpm -q glibc
rpm -q glibc-devel
rpm -q kmod-20
rpm -q kmod-libs-20
rpm -q ksh
rpm -q libaio
rpm -q libaio-devel
rpm -q libgcc
rpm -q libstdc++
rpm -q libstdc++-devel
rpm -q libX11
rpm -q libXau
rpm -q libxcb
rpm -q libXi
rpm -q libXtst
rpm -q make
rpm -q net-tools
rpm -q nfs-utils
rpm -q smartmontools
rpm -q sysstat
[root@rac1 ~]# rpm -q binutils
binutils-2.27-27.base.el7.x86_64
[root@rac1 ~]# rpm -q compat-libcap1
compat-libcap1-1.10-7.el7.x86_64
[root@rac1 ~]# rpm -q compat-libstdc++-33
compat-libstdc++-33-3.2.3-72.el7.x86_64
[root@rac1 ~]# rpm -q glibc
glibc-2.17-222.el7.x86_64
[root@rac1 ~]# rpm -q glibc-devel
glibc-devel-2.17-222.el7.x86_64
[root@rac1 ~]# rpm -q kmod-20
kmod-20-21.0.1.el7.x86_64
[root@rac1 ~]# rpm -q kmod-libs-20
kmod-libs-20-21.0.1.el7.x86_64
[root@rac1 ~]# rpm -q ksh
ksh-20120801-137.0.1.el7.x86_64
[root@rac1 ~]# rpm -q libaio
libaio-0.3.109-13.el7.x86_64
[root@rac1 ~]# rpm -q libaio-devel
libaio-devel-0.3.109-13.el7.x86_64
[root@rac1 ~]# rpm -q libgcc
libgcc-4.8.5-28.0.1.el7.x86_64
[root@rac1 ~]# rpm -q libstdc++
libstdc++-4.8.5-28.0.1.el7.x86_64
[root@rac1 ~]# rpm -q libstdc++-devel
libstdc++-devel-4.8.5-28.0.1.el7.x86_64
[root@rac1 ~]# rpm -q libX11
libX11-1.6.5-1.el7.x86_64
[root@rac1 ~]# rpm -q libXau
libXau-1.0.8-2.1.el7.x86_64
[root@rac1 ~]# rpm -q libxcb
libxcb-1.12-1.el7.x86_64
[root@rac1 ~]# rpm -q libXi
libXi-1.7.9-1.el7.x86_64
[root@rac1 ~]# rpm -q libXtst
libXtst-1.2.3-1.el7.x86_64
[root@rac1 ~]# rpm -q make
make-3.82-23.el7.x86_64
[root@rac1 ~]# rpm -q net-tools
net-tools-2.0-0.22.20131004git.el7.x86_64
[root@rac1 ~]# rpm -q nfs-utils
nfs-utils-1.3.0-0.54.0.1.el7.x86_64
[root@rac1 ~]# rpm -q smartmontools
smartmontools-6.5-1.el7.x86_64
[root@rac1 ~]# rpm -q sysstat
sysstat-10.1.5-13.el7.x86_64

오라클 설치에 필요한 리눅스 패키지들이 모두 설치되어 있는지 검증합니다.

누락된 패키지가 있다면 반드시 설치해야 합니다.

패키지 파일은 yum 이용하여 직접 설치하거나 Oracle Linux Repository에서 다운로드   있습니다.

대부분의 패키지는 설치 미디어에 함께 제공되고 있습니다.

F) hosts 파일 수정

vi /etc/hosts 로 호스트 파일 수정
### Public
10.0.1.101  rac1        rac1.localdomain
10.0.1.102  rac2        rac2.localdomain
### Private
10.0.5.101  rac1-priv   rac1-priv.localdomain
10.0.5.102  rac2-priv   rac2-priv.localdomain
### Virtual
10.0.1.201  rac1-vip    rac1-vip.localdomain
10.0.1.202  rac2-vip    rac2-vip.localdomain
### DNS
10.0.1.150  dns         dns.localdomain
### SCAN
10.0.1.191  rac-scan    rac-scan.localdomain
10.0.1.192  rac-scan    rac-scan.localdomain
10.0.1.193  rac-scan    rac-scan.localdomain

/etc/hosts 파일에 설치할 모든 서버의 IP와 호스트명을 추가합니다.

오라클 소프트웨어 설치를 정상적으로 진행하기 위해 로컬 노드와 원격 노드에 대한 정보를 정확히 입력해야 합니다.

SCAN IP는 1개만 할당해도 설치에 지장은 없습니다. 다만, 18c부터는 3개를 할당하지 않을 경우, 필요 조건 검사 과정에서 검증 실패 메시지가 출력됩니다.

G) 보안 설정 변경

vi /etc/selinux/config 로 selinux 모드 변경
SELINUX=permissive
SELinux 모드를 온라인 상에서 변경
setenforce permissive

Selinux 모드를 permissive로 변경합니다.

H) dnsmasq 활성화

vi /etc/dnsmasq.conf 로 dnsmasq에 로컬 도메인 정보 추가
local=/localdomain/

dnsmasq 서비스의 환경 설정 파일에 로컬 도메인에 대한 정보를 입력합니다.

resolv.conf 내용 확인 및 dnsmasq 활성화
cat /etc/resolv.conf
systemctl start dnsmasq
systemctl enable dnsmasq
nslookup rac-scan.localdomain	# 재기동 필요
[root@rac1 ~]# cat /etc/resolv.conf
# Generated by NetworkManager
search localdomain
nameserver 127.0.0.1

[root@rac1 ~]# systemctl start dnsmasq
[root@rac1 ~]# systemctl enable dnsmasq
Created symlink from /etc/systemd/system/multi-user.target.wants/dnsmasq.service to /usr/lib/systemd/system/dnsmasq.service.

[root@rac1 ~]# nslookup rac-scan.localdomain
Server:         127.0.0.1
Address:        127.0.0.1#53

Name:   rac-scan.localdomain
Address: 10.0.1.191
Name:   rac-scan.localdomain
Address: 10.0.1.192
Name:   rac-scan.localdomain
Address: 10.0.1.193

[root@rac1 ~]# nslookup rac-scan.localdomain
Server:         127.0.0.1
Address:        127.0.0.1#53

Name:   rac-scan.localdomain
Address: 10.0.1.192
Name:   rac-scan.localdomain
Address: 10.0.1.193
Name:   rac-scan.localdomain
Address: 10.0.1.191

[root@rac1 ~]# nslookup rac-scan.localdomain
Server:         127.0.0.1
Address:        127.0.0.1#53

Name:   rac-scan.localdomain
Address: 10.0.1.193
Name:   rac-scan.localdomain
Address: 10.0.1.191
Name:   rac-scan.localdomain
Address: 10.0.1.192

별도의 DNS 서비스 없이 SCAN을 사용하기 위해 dnsmasq 서비스를 활성화합니다.

DNS 설정 파일(resolv.conf)에는 "nameserver 127.0.0.1"가 입력되어 있어야 합니다.

I) 가상 메모리 파일 시스템 할당

vi /etc/fstab 로 tmpfs 영역 할당
tmpfs                   /dev/shm                tmpfs   size=8g         0 0
mount 명령으로 /dev/shm 영역 remount
mount -o remount /dev/shm
tmpfs                   /dev/shm                tmpfs   size=8g         0 0
[root@rac1 ~]# mount -o remount /dev/shm

[root@rac1 ~]# df -h | grep shm
tmpfs                8.0G   84K  8.0G   1% /dev/shm

가상 메모리 파일 시스템(tmpfs) 값을 설정하고 remount하여 적용시킵니다.

J) oracle 제공 추가 패키지 설치

Oracle 사전환경 구성 패키지 및 ASMLib 패키지 설치
rpm -ivh oracle-database-preinstall-19c-*.el7.x86_64.rpm
rpm -ivh oracleasmlib-*.el7.x86_64.rpm
[root@rac1 tmp]# rpm -ivh oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm
경고: oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY
준비 중...                         ################################# [100%]
Updating / installing...
   1:oracle-database-preinstall-19c-1.################################# [100%]

[root@rac1 tmp]# rpm -ivh oracleasmlib-2.0.12-1.el7.x86_64.rpm
경고: oracleasmlib-2.0.12-1.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY
준비 중...                         ################################# [100%]
Updating / installing...
   1:oracleasmlib-2.0.12-1.el7        ################################# [100%]

preinstall 패키지는 Oracle Linux Repository에서 받을 수 있고, ASMLib 패키지는 아래 경로에서 다운로드 합니다.

https://www.oracle.com/technetwork/server-storage/linux/asmlib/rhel7-2773795.html

K) 그룹 및 사용자 계정 작업

그룹 등록 및 사용자 설정 변경
### 그룹 등록 (정책에 따라 생략)
# groupadd oper
# groupadd backupdba
# groupadd dgdba
# groupadd kmdba
# groupadd racdba
groupadd asmadmin
groupadd asmdba
groupadd asmoper
### 유저 그룹 설정 변경 (vboxsf는 VirtualBox의 Guest Additions 사용시 설정)
usermod -g oinstall -G dba,oper,backupdba,dgdba,kmdba,racdba,asmadmin,asmdba,asmoper,vboxsf oracle
# usermod -g oinstall -G dba,oper,backupdba,dgdba,kmdba,racdba,asmadmin,asmdba,asmoper oracle
### 계정 암호 변경
passwd oracle
[root@rac1 ~]# groupadd asmadmin
[root@rac1 ~]# groupadd asmdba
[root@rac1 ~]# groupadd asmoper

[root@rac1 ~]# usermod -g oinstall -G dba,oper,backupdba,dgdba,kmdba,racdba,asmadmin,asmdba,asmoper,vboxsf oracle

[root@rac1 ~]# passwd oracle
oracle 사용자의 비밀 번호 변경 중
새  암호:
잘못된 암호: 암호는 8 개의 문자 보다 짧습니다
새  암호 재입력:
passwd: 모든 인증 토큰이 성공적으로 업데이트 되었습니다.

소프트웨어를 설치할 사용자 계정과 그룹을 생성 또는 추가합니다.

preinstall 패키지가 설치되었다면 oracle 유저와 oinstall, dba, oper, backupdba, dgdba, kmdba, racdba 그룹은 이미 생성되어 있습니다.

vboxsf 그룹은 VirtualBox의 Guest Addition을 사용하기 위한 그룹으로, 실제 운영 환경에서 Guest Addition을 사용하지 않는다면 추가하지 않습니다.

passwd 명령어로 각 계정의 암호를 지정해주면 됩니다.

L) 설치 경로 생성

설치 경로 생성 및 권한 부여
mkdir -p /u01/app/oracle
chown -R oracle:oinstall /u01
chmod -R 775 /u01
[root@rac1 ~]# mkdir -p /u01/app/oracle
[root@rac1 ~]# chown -R oracle:oinstall /u01
[root@rac1 ~]# chmod -R 775 /u01

오라클 소프트웨어 설치를 위한 경로를 생성하고, 해당 경로에 대한 권한과 소유권을 수정합니다.

M) 사용자 환경 설정

vi ~oracle/.bash_profile 로 oracle 프로필 설정
export TMP=/tmp
export TMPDIR=$TMP
export EDITOR=vi
export ORACLE_HOSTNAME=rac1             # 호스트명에 맞게 변경
export ORACLE_UNQNAME=racdb
export ORACLE_BASE=/u01/app/oracle
export GRID_HOME=/u01/app/11.2.0/grid
export DB_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_HOME=$DB_HOME
export ORACLE_SID=racdb1                # 2번 노드 racdb2
export ORACLE_TERM=xterm
export BASE_PATH=/usr/sbin:$PATH
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$GRID_HOME/bin:$BASE_PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
export NLS_LANG=AMERICAN_KOREA.AL32UTF8
PS1='[$ORACLE_SID:$PWD]> '

oracle 유저의 .bash_profile을 수정합니다.

root계정에서 해당 파일을 직접 수정할 수 있습니다.

먼저 11g R2의 RAC를 구축할 것이므로 경로는 이에 맞게 설정합니다.

vi ~oracle/.bashrc 로 alias 설정
alias grid_env='export ORACLE_HOME=$GRID_HOME;export ORACLE_SID=+ASM1;export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$BASE_PATH'
alias db_env='export ORACLE_HOME=$DB_HOME;export ORACLE_SID=racdb1;export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$BASE_PATH'

Grid와 DB 인스턴스 간의 변환을 쉽게 하기 위해 alias를 설정합니다.

vi ~/.bash_profile 로 root 프로필 수정
export ORACLE_BASE=/u01/app/oracle
export GRID_HOME=/u01/app/11.2.0/grid
export DB_HOME=$ORACLE_BASE/product/11.2.0/db_1
export PATH=$PATH:$GRID_HOME/bin

작업의 편의를 위해 root 계정의 .bash_profile에도 경로 정보를 추가로 입력합니다.

V. 공유 환경 및 2번 노드 구성

1. 공유 스토리지 생성

공유 스토리지 구성을 위해 고정 공간이 할당된 가상 디스크 6개를 추가로 생성합니다.

파일 이름용량타입용도비고

CRS1.vdi

1GBFixed / ShareableCRS 저장 영역공유(shareable) 디스크로 사용하기 위해서 Fixed Size로 생성합니다.
CRS2.vdi1GBFixed / Shareable
CRS3.vdi1GBFixed / Shareable
DATA.vdi30GBFixed / ShareableData 저장 영역
FRA.vdi20GBFixed / ShareableFast Recovery Area
RAW.vdi20GBFixed / ShareableRaw Device 영역

A) 가상 스토리지 파일 생성

공유 스토리지 가상 디스크 생성
vboxmanage createmedium --filename CRS1.vdi --size 1024 --format VDI --variant Fixed
vboxmanage createmedium --filename CRS2.vdi --size 1024 --format VDI --variant Fixed
vboxmanage createmedium --filename CRS3.vdi --size 1024 --format VDI --variant Fixed
vboxmanage createmedium --filename DATA.vdi --size 30720 --format VDI --variant Fixed
vboxmanage createmedium --filename FRA.vdi --size 20480 --format VDI --variant Fixed
vboxmanage createmedium --filename RAW.vdi --size 20480 --format VDI --variant Fixed
PS D:\VM> pwd

Path
----
D:\VM

PS D:\VM> vboxmanage createmedium --filename CRS1.vdi --size 1024 --format VDI --variant Fixed
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Medium created. UUID: 3a6327e8-0367-4edc-bb5b-591efe123e8d
PS D:\VM> vboxmanage createmedium --filename CRS2.vdi --size 1024 --format VDI --variant Fixed
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Medium created. UUID: 9d4524a2-5a06-478a-b733-81cd9889e59e
PS D:\VM> vboxmanage createmedium --filename CRS3.vdi --size 1024 --format VDI --variant Fixed
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Medium created. UUID: a9d5a021-b91a-4c43-b7d5-2136bf447e83
PS D:\VM> vboxmanage createmedium --filename DATA.vdi --size 30720 --format VDI --variant Fixed
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Medium created. UUID: 94a0fac2-2040-42ec-9b7e-2fecc49bcf05
PS D:\VM> vboxmanage createmedium --filename FRA.vdi --size 20480 --format VDI --variant Fixed
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Medium created. UUID: 8f120938-511d-42b1-b15b-dfd4e20218e9
PS D:\VM> vboxmanage createmedium --filename RAW.vdi --size 20480 --format VDI --variant Fixed
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Medium created. UUID: 4f20eb5e-79a3-42e3-8b35-c9c9983b9040

Host 컴퓨터에서 VM에 연결시킬 공유 디스크를 생성합니다.

디스크는 2개의 노드에서 공유할 것이므로, 반드시 Fixed 모드로 디스크 공간이 사전에 할당되도록 생성해야 합니다.

B) 스토리지 파일 공유 설정

가상 디스크 타입 변경
vboxmanage modifymedium CRS1.vdi --type shareable
vboxmanage modifymedium CRS2.vdi --type shareable
vboxmanage modifymedium CRS3.vdi --type shareable
vboxmanage modifymedium DATA.vdi --type shareable
vboxmanage modifymedium FRA.vdi --type shareable
vboxmanage modifymedium RAW.vdi --type shareable
PS D:\VM> vboxmanage modifymedium CRS1.vdi --type shareable
PS D:\VM> vboxmanage modifymedium CRS2.vdi --type shareable
PS D:\VM> vboxmanage modifymedium CRS3.vdi --type shareable
PS D:\VM> vboxmanage modifymedium DATA.vdi --type shareable
PS D:\VM> vboxmanage modifymedium FRA.vdi --type shareable
PS D:\VM> vboxmanage modifymedium RAW.vdi --type shareable

생성된 디스크들은 모두 shareable 디스크로 속성 변경이 필요합니다.

VirtualBox의 GUI 툴을 사용하여 변경할 수도 있습니다.

C) VM에 스토리지 연결

정지된 1번 노드의 설정 모드로 들어가서 디스크 파일을 추가합니다.

SATA 콘트롤러의 오른쪽에 하드디스크 모양의 아이콘을 클릭합니다

vboxmanage 명령으로 이미 생성된 디스크 파일을 추가할 것이므로 <기존 디스크 선택하기>를 클릭합니다.

Not Attatched에 등록된 디스크 목록에서 "CRS1.vdi"를 선택한 후 <선택>을 클릭합니다.

만약 생성된 디스크 이미지가 목록에 없다면 <추가> 아이콘을 클릭한 후에 디스크 이미지를 찾아서 추가하면 됩니다.

정상적으로 스토리지가 추가된 것을 확인할 수 있습니다.

다른 공유 디스크들도 같은 방법으로 추가해줍니다.

나머지 디스크 파일 모두 순서에 맞게 SATA 컨트롤러에 등록시켜줍니다.

반드시 동일한 순서대로 다른 노드에도 등록시켜야 합니다.

2. 공유 스토리지 환경 구성

A) 디스크 파티셔닝

스토리지 파티션 생성
ls /dev/sd*
fdisk /dev/sdb  ### "n", "p", "1", "엔터", "엔터", "w" 입력
fdisk /dev/sdc  ### "n", "p", "1", "엔터", "엔터", "w" 입력
fdisk /dev/sdd  ### "n", "p", "1", "엔터", "엔터", "w" 입력
fdisk /dev/sde  ### "n", "p", "1", "엔터", "엔터", "w" 입력
fdisk /dev/sdf  ### "n", "p", "1", "엔터", "엔터", "w" 입력
fdisk /dev/sdg  ### "n", "p", "1", "엔터", "+15G" 입력, "n", "p", "2", "엔터", "엔터", "w" 입력
ls /dev/sd*
[root@rac1 ~]# ls /dev/sd*
/dev/sda   /dev/sda2  /dev/sdc  /dev/sde  /dev/sdg
/dev/sda1  /dev/sdb   /dev/sdd  /dev/sdf

[root@rac1 ~]# fdisk /dev/sdb
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0xcc8fe296.

Command (m for help): n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-2097151, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-2097151, default 2097151):
Using default value 2097151
Partition 1 of type Linux and of size 1023 MiB is set

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

[root@rac1 ~]# fdisk /dev/sdc
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0x721e08dc.

Command (m for help): n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-2097151, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-2097151, default 2097151):
Using default value 2097151
Partition 1 of type Linux and of size 1023 MiB is set

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

[root@rac1 ~]# fdisk /dev/sdd
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0x4f1e2a87.

Command (m for help): n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-2097151, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-2097151, default 2097151):
Using default value 2097151
Partition 1 of type Linux and of size 1023 MiB is set

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

[root@rac1 ~]# fdisk /dev/sde
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0x02219e92.

Command (m for help): n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-62914559, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-62914559, default 62914559):
Using default value 62914559
Partition 1 of type Linux and of size 30 GiB is set

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

[root@rac1 ~]# fdisk /dev/sdf
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0xecdb8b19.

Command (m for help): n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-41943039, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-41943039, default 41943039):
Using default value 41943039
Partition 1 of type Linux and of size 20 GiB is set

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.
[root@rac1 ~]# fdisk /dev/sdg
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0x6f157778.

Command (m for help): n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-41943039, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-41943039, default 41943039): +15G
Partition 1 of type Linux and of size 15 GiB is set

Command (m for help): n
Partition type:
   p   primary (1 primary, 0 extended, 3 free)
   e   extended
Select (default p): p
Partition number (2-4, default 2): 2
First sector (31459328-41943039, default 31459328):
Using default value 31459328
Last sector, +sectors or +size{K,M,G} (31459328-41943039, default 41943039):
Using default value 41943039
Partition 2 of type Linux and of size 5 GiB is set

Command (m for help): p

Disk /dev/sdg: 21.5 GB, 21474836480 bytes, 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x6f157778

   Device Boot      Start         End      Blocks   Id  System
/dev/sdg1            2048    31459327    15728640   83  Linux
/dev/sdg2        31459328    41943039     5241856   83  Linux

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

[root@rac1 ~]# ls /dev/sd*
/dev/sda   /dev/sdb   /dev/sdc1  /dev/sde   /dev/sdf1  /dev/sdg2
/dev/sda1  /dev/sdb1  /dev/sdd   /dev/sde1  /dev/sdg
/dev/sda2  /dev/sdc   /dev/sdd1  /dev/sdf   /dev/sdg1

VM에 연결된 디스크에 fdisk 명령어로 파티션 분할 작업을 수행 합니다.

/dev/sdb에서부터 /dev/sdf까지는 하나의 파티션으로 분할하여 ASM 스토리지로 사용할 것입니다.

/dev/sdg 디스크는 15GB와 5GB의 파티셔으로 분할하여, 15GB는 raw device 영역으로 사용하고 나머지 5GB는 OCFS2으로 클러스터링하여 FRA 영역으로 사용합니다.

B) ASM 구성

ASM 환경 설정
oracleasm configure -i
oracleasm init
oracleasm status
oracleasm configure
[root@rac1 ~]# oracleasm configure -i
Configuring the Oracle ASM library driver.

This will configure the on-boot properties of the Oracle ASM library
driver.  The following questions will determine whether the driver is
loaded on boot and what permissions it will have.  The current values
will be shown in brackets ('[]').  Hitting <ENTER> without typing an
answer will keep that current value.  Ctrl-C will abort.

Default user to own the driver interface []: oracle
Default group to own the driver interface []: asmadmin
Start Oracle ASM library driver on boot (y/n) [n]: y
Scan for Oracle ASM disks on boot (y/n) [y]:
Writing Oracle ASM library driver configuration: done

[root@rac1 ~]# oracleasm init
Creating /dev/oracleasm mount point: /dev/oracleasm
Loading module "oracleasm": oracleasm
Configuring "oracleasm" to use device physical block size
Mounting ASMlib driver filesystem: /dev/oracleasm

[root@rac1 ~]# oracleasm status
Checking if ASM is loaded: yes
Checking if /dev/oracleasm is mounted: yes

[root@rac1 ~]# oracleasm configure
ORACLEASM_ENABLED=true
ORACLEASM_UID=oracle
ORACLEASM_GID=asmadmin
ORACLEASM_SCANBOOT=true
ORACLEASM_SCANORDER=""
ORACLEASM_SCANEXCLUDE=""
ORACLEASM_SCAN_DIRECTORIES=""
ORACLEASM_USE_LOGICAL_BLOCK_SIZE="false"

ASM library에 대한 추가적인 환경 설정(사용자, 그룹, 부팅시 활성화, 부팅시 스캔 여부)을 수행하고 적용 여부를 검증합니다.

ASM 디스크 생성 및 확인
oracleasm createdisk CRS1 /dev/sdb1
oracleasm createdisk CRS2 /dev/sdc1
oracleasm createdisk CRS3 /dev/sdd1
oracleasm createdisk DATA /dev/sde1
oracleasm createdisk FRA /dev/sdf1
oracleasm scandisks
oracleasm listdisks
[root@rac1 ~]# oracleasm createdisk CRS1 /dev/sdb1
Writing disk header: done
Instantiating disk: done
[root@rac1 ~]# oracleasm createdisk CRS2 /dev/sdc1
Writing disk header: done
Instantiating disk: done
[root@rac1 ~]# oracleasm createdisk CRS3 /dev/sdd1
Writing disk header: done
Instantiating disk: done
[root@rac1 ~]# oracleasm createdisk DATA /dev/sde1
Writing disk header: done
Instantiating disk: done
[root@rac1 ~]# oracleasm createdisk FRA /dev/sdf1
Writing disk header: done
Instantiating disk: done

[root@rac1 ~]# oracleasm scandisks
Reloading disk partitions: done
Cleaning any stale ASM disks...
Scanning system for ASM disks...

[root@rac1 ~]# oracleasm listdisks
CRS1
CRS2
CRS3
DATA
FRA

VM에 마운트된 디스크를 각각 ASM Disk로 할당해줍니다.

순서대로 마운트가 되었다면, 디바이스 명의 알파벳 순으로 ASM 디스크를 생성하면 됩니다.

C) Raw Device 구성

Raw Device 볼륨 그룹 생성
pvcreate /dev/sdg1
pvdisplay /dev/sdg1
vgcreate rawvg /dev/sdg1
vgdisplay rawvg
[root@rac1 ~]# pvcreate /dev/sdg1
  Physical volume "/dev/sdg1" successfully created.
  
[root@rac1 ~]# pvdisplay /dev/sdg1
  "/dev/sdg1" is a new physical volume of "15.00 GiB"
  --- NEW Physical volume ---
  PV Name               /dev/sdg1
  VG Name
  PV Size               15.00 GiB
  Allocatable           NO
  PE Size               0
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               30eYro-iXra-PEwU-ncIe-oo0D-ijud-8RBXmu

[root@rac1 ~]# vgcreate rawvg /dev/sdg1
  Volume group "rawvg" successfully created
  
[root@rac1 ~]# vgdisplay rawvg
  --- Volume group ---
  VG Name               rawvg
  System ID
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  1
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                0
  Open LV               0
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               <15.00 GiB
  PE Size               4.00 MiB
  Total PE              3839
  Alloc PE / Size       0 / 0
  Free  PE / Size       3839 / <15.00 GiB
  VG UUID               Eqt7EF-d4Qt-DuQP-ChuW-Lceo-uG9r-X1DZ6t

Raw Device로 사용할 디스크의 물리 볼륨과 볼륨 그룹을 생성합니다.

Raw Device 논리 볼륨 생성
lvcreate -L 300M -n ocr01 rawvg
lvcreate -L 300M -n ocr02 rawvg
lvcreate -L 300M -n vote01 rawvg
lvcreate -L 300M -n vote02 rawvg
lvcreate -L 300M -n vote03 rawvg
lvcreate -L 2048M -n system rawvg
lvcreate -L 2048M -n sysaux rawvg
lvcreate -L 1024M -n users rawvg
lvcreate -L 700M -n temp rawvg
lvcreate -L 2048M -n undotbs1 rawvg
lvcreate -L 2048M -n undotbs2 rawvg
lvcreate -L 100M -n control01 rawvg
lvcreate -L 100M -n control02 rawvg
lvcreate -L 200M -n redo01 rawvg
lvcreate -L 200M -n redo02 rawvg
lvcreate -L 200M -n redo03 rawvg
lvcreate -L 200M -n redo04 rawvg
lvcreate -L 200M -n redo05 rawvg
lvcreate -L 200M -n redo06 rawvg
lvcreate -L 200M -n spfile rawvg
lvdisplay
[root@rac1 ~]# lvcreate -L 300M -n ocr01 rawvg
  Logical volume "ocr01" created.
  
[root@rac1 ~]# lvcreate -L 300M -n ocr02 rawvg
  Logical volume "ocr02" created.
  
[root@rac1 ~]# lvcreate -L 300M -n vote01 rawvg
  Logical volume "vote01" created.
  
[root@rac1 ~]# lvcreate -L 300M -n vote02 rawvg
  Logical volume "vote02" created.
  
[root@rac1 ~]# lvcreate -L 300M -n vote03 rawvg
  Logical volume "vote03" created.
  
[root@rac1 ~]# lvcreate -L 2048M -n system rawvg
  Logical volume "system" created.
  
[root@rac1 ~]# lvcreate -L 2048M -n sysaux rawvg
  Logical volume "sysaux" created.
  
[root@rac1 ~]# lvcreate -L 1024M -n users rawvg
  Logical volume "users" created.
  
[root@rac1 ~]# lvcreate -L 700M -n temp rawvg
  Logical volume "temp" created.
  
[root@rac1 ~]# lvcreate -L 2048M -n undotbs1 rawvg
  Logical volume "undotbs1" created.
  
[root@rac1 ~]# lvcreate -L 2048M -n undotbs2 rawvg
  Logical volume "undotbs2" created.
  
[root@rac1 ~]# lvcreate -L 100M -n control01 rawvg
  Logical volume "control01" created.
  
[root@rac1 ~]# lvcreate -L 100M -n control02 rawvg
  Logical volume "control02" created.
  
[root@rac1 ~]# lvcreate -L 200M -n redo01 rawvg
  Logical volume "redo01" created.
  
[root@rac1 ~]# lvcreate -L 200M -n redo02 rawvg
  Logical volume "redo02" created.
  
[root@rac1 ~]# lvcreate -L 200M -n redo03 rawvg
  Logical volume "redo03" created.
  
[root@rac1 ~]# lvcreate -L 200M -n redo04 rawvg
  Logical volume "redo04" created.
  
[root@rac1 ~]# lvcreate -L 200M -n redo05 rawvg
  Logical volume "redo05" created.
  
[root@rac1 ~]# lvcreate -L 200M -n redo06 rawvg
  Logical volume "redo06" created.
  
[root@rac1 ~]# lvcreate -L 200M -n spfile rawvg
  Logical volume "spfile" created.

[root@rac1 ~]# lvdisplay
  --- Logical volume ---
  LV Path                /dev/rawvg/ocr01
  LV Name                ocr01
  VG Name                rawvg
  LV UUID                VP12OH-WsGO-nuQc-3KGr-0sIl-q8Hj-QZ0zL1
  LV Write Access        read/write
  LV Creation host, time rac1, 2020-04-13 13:24:56 +0900
  LV Status              available
  # open                 0
  LV Size                300.00 MiB
  Current LE             75
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           249:2

  --- Logical volume ---
  LV Path                /dev/rawvg/ocr02
  LV Name                ocr02
  VG Name                rawvg
  LV UUID                2nMgYm-Et4K-ODEK-WXM9-c5u7-ZP3W-zxEjxN
  LV Write Access        read/write
  LV Creation host, time rac1, 2020-04-13 13:24:56 +0900
  LV Status              available
  # open                 0
  LV Size                300.00 MiB
  Current LE             75
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           249:3

  --- Logical volume ---
  LV Path                /dev/rawvg/vote01
  LV Name                vote01
  VG Name                rawvg
  LV UUID                OuYYAj-yANF-kSxa-X92S-6WHt-2s9Z-sihzqr
  LV Write Access        read/write
  LV Creation host, time rac1, 2020-04-13 13:24:56 +0900
  LV Status              available
  # open                 0
  LV Size                300.00 MiB
  Current LE             75
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           249:4

  --- Logical volume ---
  LV Path                /dev/rawvg/vote02
  LV Name                vote02
  VG Name                rawvg
  LV UUID                by0V2t-L14c-GTuC-6eeA-lm9g-Ikiv-YabeRA
  LV Write Access        read/write
  LV Creation host, time rac1, 2020-04-13 13:24:56 +0900
  LV Status              available
  # open                 0
  LV Size                300.00 MiB
  Current LE             75
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           249:5

  --- Logical volume ---
  LV Path                /dev/rawvg/vote03
  LV Name                vote03
  VG Name                rawvg
  LV UUID                kBx6Wo-h8a0-ETtq-FbIV-5dat-84rI-uTKv2L
  LV Write Access        read/write
  LV Creation host, time rac1, 2020-04-13 13:24:56 +0900
  LV Status              available
  # open                 0
  LV Size                300.00 MiB
  Current LE             75
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           249:6

  --- Logical volume ---
  LV Path                /dev/rawvg/system
  LV Name                system
  VG Name                rawvg
  LV UUID                m0x6bB-bEzR-qgDO-DgnQ-OMDO-y3Td-0sxnGh
  LV Write Access        read/write
  LV Creation host, time rac1, 2020-04-13 13:24:56 +0900
  LV Status              available
  # open                 0
  LV Size                2.00 GiB
  Current LE             512
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           249:7

  --- Logical volume ---
  LV Path                /dev/rawvg/sysaux
  LV Name                sysaux
  VG Name                rawvg
  LV UUID                KKgx8r-f1kl-su3S-K3GI-h2kr-dsnZ-nZPQqa
  LV Write Access        read/write
  LV Creation host, time rac1, 2020-04-13 13:24:56 +0900
  LV Status              available
  # open                 0
  LV Size                2.00 GiB
  Current LE             512
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           249:8

  --- Logical volume ---
  LV Path                /dev/rawvg/users
  LV Name                users
  VG Name                rawvg
  LV UUID                FSGR2q-0MZZ-rFdR-5VSD-KNCu-ujLb-zmha2D
  LV Write Access        read/write
  LV Creation host, time rac1, 2020-04-13 13:24:56 +0900
  LV Status              available
  # open                 0
  LV Size                1.00 GiB
  Current LE             256
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           249:9

  --- Logical volume ---
  LV Path                /dev/rawvg/temp
  LV Name                temp
  VG Name                rawvg
  LV UUID                qntMvR-9Dm0-dtRv-4azP-2f9R-hR7e-Dsw0g5
  LV Write Access        read/write
  LV Creation host, time rac1, 2020-04-13 13:24:56 +0900
  LV Status              available
  # open                 0
  LV Size                700.00 MiB
  Current LE             175
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           249:10

  --- Logical volume ---
  LV Path                /dev/rawvg/undotbs1
  LV Name                undotbs1
  VG Name                rawvg
  LV UUID                srl0yr-gufu-Byf3-zgdG-Wwr6-oIsv-5hTK9u
  LV Write Access        read/write
  LV Creation host, time rac1, 2020-04-13 13:24:57 +0900
  LV Status              available
  # open                 0
  LV Size                2.00 GiB
  Current LE             512
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           249:11

  --- Logical volume ---
  LV Path                /dev/rawvg/undotbs2
  LV Name                undotbs2
  VG Name                rawvg
  LV UUID                TCK1xl-ZvXs-2bRT-PZWI-isqV-Ei73-AAv152
  LV Write Access        read/write
  LV Creation host, time rac1, 2020-04-13 13:24:57 +0900
  LV Status              available
  # open                 0
  LV Size                2.00 GiB
  Current LE             512
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           249:12

  --- Logical volume ---
  LV Path                /dev/rawvg/control01
  LV Name                control01
  VG Name                rawvg
  LV UUID                2uw94p-td32-23yd-li8G-y3xE-bnJg-dpuxJe
  LV Write Access        read/write
  LV Creation host, time rac1, 2020-04-13 13:24:57 +0900
  LV Status              available
  # open                 0
  LV Size                100.00 MiB
  Current LE             25
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           249:13

  --- Logical volume ---
  LV Path                /dev/rawvg/control02
  LV Name                control02
  VG Name                rawvg
  LV UUID                GbO1Iq-EdGK-gDXz-O2em-PSLV-s9rm-k2Gy3Y
  LV Write Access        read/write
  LV Creation host, time rac1, 2020-04-13 13:24:57 +0900
  LV Status              available
  # open                 0
  LV Size                100.00 MiB
  Current LE             25
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           249:14

  --- Logical volume ---
  LV Path                /dev/rawvg/redo01
  LV Name                redo01
  VG Name                rawvg
  LV UUID                lWipjE-Ted7-JF33-tDNe-BKUX-FnNc-5Garlr
  LV Write Access        read/write
  LV Creation host, time rac1, 2020-04-13 13:24:57 +0900
  LV Status              available
  # open                 0
  LV Size                200.00 MiB
  Current LE             50
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           249:15

  --- Logical volume ---
  LV Path                /dev/rawvg/redo02
  LV Name                redo02
  VG Name                rawvg
  LV UUID                iWGac1-yfbz-vWy4-jZ0C-7DFa-joq0-6OF03E
  LV Write Access        read/write
  LV Creation host, time rac1, 2020-04-13 13:24:57 +0900
  LV Status              available
  # open                 0
  LV Size                200.00 MiB
  Current LE             50
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           249:16

  --- Logical volume ---
  LV Path                /dev/rawvg/redo03
  LV Name                redo03
  VG Name                rawvg
  LV UUID                4WVBxD-gXs6-kkQD-MK8j-ApUF-kJFc-NbOcWz
  LV Write Access        read/write
  LV Creation host, time rac1, 2020-04-13 13:24:57 +0900
  LV Status              available
  # open                 0
  LV Size                200.00 MiB
  Current LE             50
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           249:17

  --- Logical volume ---
  LV Path                /dev/rawvg/redo04
  LV Name                redo04
  VG Name                rawvg
  LV UUID                TP8pev-sQ7z-UwlH-Wte3-96H7-DHvB-c0DHgK
  LV Write Access        read/write
  LV Creation host, time rac1, 2020-04-13 13:24:57 +0900
  LV Status              available
  # open                 0
  LV Size                200.00 MiB
  Current LE             50
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           249:18

  --- Logical volume ---
  LV Path                /dev/rawvg/redo05
  LV Name                redo05
  VG Name                rawvg
  LV UUID                SxhN6y-KNHF-OiOF-ENfW-ud4Q-Bc0o-Jh2Fah
  LV Write Access        read/write
  LV Creation host, time rac1, 2020-04-13 13:24:57 +0900
  LV Status              available
  # open                 0
  LV Size                200.00 MiB
  Current LE             50
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           249:19

  --- Logical volume ---
  LV Path                /dev/rawvg/redo06
  LV Name                redo06
  VG Name                rawvg
  LV UUID                TXeS5L-qPEk-RlBf-VHo6-Ab5F-buiY-HvhDNi
  LV Write Access        read/write
  LV Creation host, time rac1, 2020-04-13 13:24:57 +0900
  LV Status              available
  # open                 0
  LV Size                200.00 MiB
  Current LE             50
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           249:20

  --- Logical volume ---
  LV Path                /dev/rawvg/spfile
  LV Name                spfile
  VG Name                rawvg
  LV UUID                O1d4Ck-b15L-ORZx-EI4Z-RhA4-hl1B-9f3uag
  LV Write Access        read/write
  LV Creation host, time rac1, 2020-04-13 13:24:57 +0900
  LV Status              available
  # open                 0
  LV Size                200.00 MiB
  Current LE             50
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           249:21

  --- Logical volume ---
  LV Path                /dev/ol/swap
  LV Name                swap
  VG Name                ol
  LV UUID                E6X06I-63Al-dbJo-i53I-Fk7V-uR90-uCLpBf
  LV Write Access        read/write
  LV Creation host, time rac1, 2020-04-13 09:25:27 +0900
  LV Status              available
  # open                 2
  LV Size                10.00 GiB
  Current LE             2560
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           249:1

  --- Logical volume ---
  LV Path                /dev/ol/root
  LV Name                root
  VG Name                ol
  LV UUID                d1uCT2-Z8h7-HVtm-3mQ8-OWpX-WewL-a8zJQr
  LV Write Access        read/write
  LV Creation host, time rac1, 2020-04-13 09:25:27 +0900
  LV Status              available
  # open                 1
  LV Size                <89.51 GiB
  Current LE             22914
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           249:0

데이터 파일이나 로그 파일, 컨트롤 파일 등에 사용할 크기별로 논리 볼륨을 할당합니다.

개별 논리 볼륨을 Raw Device로 할당
raw /dev/raw/raw1 /dev/rawvg/ocr01
raw /dev/raw/raw2 /dev/rawvg/ocr02
raw /dev/raw/raw3 /dev/rawvg/vote01
raw /dev/raw/raw4 /dev/rawvg/vote02
raw /dev/raw/raw5 /dev/rawvg/vote03
raw /dev/raw/raw6 /dev/rawvg/system
raw /dev/raw/raw7 /dev/rawvg/sysaux
raw /dev/raw/raw8 /dev/rawvg/users
raw /dev/raw/raw9 /dev/rawvg/temp
raw /dev/raw/raw10 /dev/rawvg/undotbs1
raw /dev/raw/raw11 /dev/rawvg/undotbs2
raw /dev/raw/raw12 /dev/rawvg/control01
raw /dev/raw/raw13 /dev/rawvg/control02
raw /dev/raw/raw14 /dev/rawvg/redo01
raw /dev/raw/raw15 /dev/rawvg/redo02
raw /dev/raw/raw16 /dev/rawvg/redo03
raw /dev/raw/raw17 /dev/rawvg/redo04
raw /dev/raw/raw18 /dev/rawvg/redo05
raw /dev/raw/raw19 /dev/rawvg/redo06
raw /dev/raw/raw20 /dev/rawvg/spfile
raw -qa
ls -l /dev/raw
[root@rac1 ~]# raw /dev/raw/raw1 /dev/rawvg/ocr01
/dev/raw/raw1:  bound to major 249, minor 2

[root@rac1 ~]# raw /dev/raw/raw2 /dev/rawvg/ocr02
/dev/raw/raw2:  bound to major 249, minor 3

[root@rac1 ~]# raw /dev/raw/raw3 /dev/rawvg/vote01
/dev/raw/raw3:  bound to major 249, minor 4

[root@rac1 ~]# raw /dev/raw/raw4 /dev/rawvg/vote02
/dev/raw/raw4:  bound to major 249, minor 5

[root@rac1 ~]# raw /dev/raw/raw5 /dev/rawvg/vote03
/dev/raw/raw5:  bound to major 249, minor 6

[root@rac1 ~]# raw /dev/raw/raw6 /dev/rawvg/system
/dev/raw/raw6:  bound to major 249, minor 7

[root@rac1 ~]# raw /dev/raw/raw7 /dev/rawvg/sysaux
/dev/raw/raw7:  bound to major 249, minor 8

[root@rac1 ~]# raw /dev/raw/raw8 /dev/rawvg/users
/dev/raw/raw8:  bound to major 249, minor 9

[root@rac1 ~]# raw /dev/raw/raw9 /dev/rawvg/temp
/dev/raw/raw9:  bound to major 249, minor 10

[root@rac1 ~]# raw /dev/raw/raw10 /dev/rawvg/undotbs1
/dev/raw/raw10:  bound to major 249, minor 11

[root@rac1 ~]# raw /dev/raw/raw11 /dev/rawvg/undotbs2
/dev/raw/raw11:  bound to major 249, minor 12

[root@rac1 ~]# raw /dev/raw/raw12 /dev/rawvg/control01
/dev/raw/raw12:  bound to major 249, minor 13

[root@rac1 ~]# raw /dev/raw/raw13 /dev/rawvg/control02
/dev/raw/raw13:  bound to major 249, minor 14

[root@rac1 ~]# raw /dev/raw/raw14 /dev/rawvg/redo01
/dev/raw/raw14:  bound to major 249, minor 15

[root@rac1 ~]# raw /dev/raw/raw15 /dev/rawvg/redo02
/dev/raw/raw15:  bound to major 249, minor 16

[root@rac1 ~]# raw /dev/raw/raw16 /dev/rawvg/redo03
/dev/raw/raw16:  bound to major 249, minor 17

[root@rac1 ~]# raw /dev/raw/raw17 /dev/rawvg/redo04
/dev/raw/raw17:  bound to major 249, minor 18

[root@rac1 ~]# raw /dev/raw/raw18 /dev/rawvg/redo05
/dev/raw/raw18:  bound to major 249, minor 19

[root@rac1 ~]# raw /dev/raw/raw19 /dev/rawvg/redo06
/dev/raw/raw19:  bound to major 249, minor 20

[root@rac1 ~]# raw /dev/raw/raw20 /dev/rawvg/spfile
/dev/raw/raw20:  bound to major 249, minor 21

[root@rac1 ~]# raw -qa
/dev/raw/raw1:  bound to major 249, minor 2
/dev/raw/raw2:  bound to major 249, minor 3
/dev/raw/raw3:  bound to major 249, minor 4
/dev/raw/raw4:  bound to major 249, minor 5
/dev/raw/raw5:  bound to major 249, minor 6
/dev/raw/raw6:  bound to major 249, minor 7
/dev/raw/raw7:  bound to major 249, minor 8
/dev/raw/raw8:  bound to major 249, minor 9
/dev/raw/raw9:  bound to major 249, minor 10
/dev/raw/raw10:  bound to major 249, minor 11
/dev/raw/raw11:  bound to major 249, minor 12
/dev/raw/raw12:  bound to major 249, minor 13
/dev/raw/raw13:  bound to major 249, minor 14
/dev/raw/raw14:  bound to major 249, minor 15
/dev/raw/raw15:  bound to major 249, minor 16
/dev/raw/raw16:  bound to major 249, minor 17
/dev/raw/raw17:  bound to major 249, minor 18
/dev/raw/raw18:  bound to major 249, minor 19
/dev/raw/raw19:  bound to major 249, minor 20

[root@rac1 ~]# ls -l /dev/raw
합계 0
crw-rw----. 1 oracle dba 162,  0  4월 13 14:42 rawctl
crw-rw----. 1 oracle dba 162,  1  4월 13 14:42 raw1
crw-rw----. 1 oracle dba 162,  2  4월 13 14:42 raw2
crw-rw----. 1 oracle dba 162,  3  4월 13 14:42 raw3
crw-rw----. 1 oracle dba 162,  4  4월 13 14:42 raw4
crw-rw----. 1 oracle dba 162,  5  4월 13 14:42 raw5
crw-rw----. 1 oracle dba 162,  6  4월 13 14:42 raw6
crw-rw----. 1 oracle dba 162,  7  4월 13 14:42 raw7
crw-rw----. 1 oracle dba 162,  8  4월 13 14:42 raw8
crw-rw----. 1 oracle dba 162,  9  4월 13 14:42 raw9
crw-rw----. 1 oracle dba 162, 10  4월 13 14:42 raw10
crw-rw----. 1 oracle dba 162, 11  4월 13 14:42 raw11
crw-rw----. 1 oracle dba 162, 12  4월 13 14:42 raw12
crw-rw----. 1 oracle dba 162, 13  4월 13 14:42 raw13
crw-rw----. 1 oracle dba 162, 14  4월 13 14:42 raw14
crw-rw----. 1 oracle dba 162, 15  4월 13 14:42 raw15
crw-rw----. 1 oracle dba 162, 16  4월 13 14:42 raw16
crw-rw----. 1 oracle dba 162, 17  4월 13 14:42 raw17
crw-rw----. 1 oracle dba 162, 18  4월 13 14:42 raw18
crw-rw----. 1 oracle dba 162, 19  4월 13 14:42 raw19
crw-rw----. 1 oracle dba 162, 20  4월 13 14:42 raw20

생성된 논리 볼륨을 Raw Device에 할당합니다.

vi /etc/udev/rules.d/60-raw.rules 로 규칙 생성
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="ocr01", RUN+="/bin/raw /dev/raw/raw1 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="ocr02", RUN+="/bin/raw /dev/raw/raw2 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="vote01", RUN+="/bin/raw /dev/raw/raw3 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="vote02", RUN+="/bin/raw /dev/raw/raw4 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="vote03", RUN+="/bin/raw /dev/raw/raw5 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="system", RUN+="/bin/raw /dev/raw/raw6 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="sysaux", RUN+="/bin/raw /dev/raw/raw7 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="users", RUN+="/bin/raw /dev/raw/raw8 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="temp", RUN+="/bin/raw /dev/raw/raw9 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="undotbs1", RUN+="/bin/raw /dev/raw/raw10 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="undotbs2", RUN+="/bin/raw /dev/raw/raw11 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="control01", RUN+="/bin/raw /dev/raw/raw12 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="control02", RUN+="/bin/raw /dev/raw/raw13 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="redo01", RUN+="/bin/raw /dev/raw/raw14 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="redo02", RUN+="/bin/raw /dev/raw/raw15 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="redo03", RUN+="/bin/raw /dev/raw/raw16 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="redo04", RUN+="/bin/raw /dev/raw/raw17 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="redo05", RUN+="/bin/raw /dev/raw/raw18 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="redo06", RUN+="/bin/raw /dev/raw/raw19 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="spfile", RUN+="/bin/raw /dev/raw/raw20 %N"
ACTION=="add", KERNEL=="raw*", OWNER=="oracle", GROUP=="dba", MODE=="0660"
[root@rac1 ~]# cat > /etc/udev/rules.d/60-raw.rules
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="ocr01", RUN+="/bin/raw /dev/raw/raw1 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="ocr02", RUN+="/bin/raw /dev/raw/raw2 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="vote01", RUN+="/bin/raw /dev/raw/raw3 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="vote02", RUN+="/bin/raw /dev/raw/raw4 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="vote03", RUN+="/bin/raw /dev/raw/raw5 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="system", RUN+="/bin/raw /dev/raw/raw6 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="sysaux", RUN+="/bin/raw /dev/raw/raw7 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="users", RUN+="/bin/raw /dev/raw/raw8 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="temp", RUN+="/bin/raw /dev/raw/raw9 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="undotbs1", RUN+="/bin/raw /dev/raw/raw10 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="undotbs2", RUN+="/bin/raw /dev/raw/raw11 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="control01", RUN+="/bin/raw /dev/raw/raw12 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="control02", RUN+="/bin/raw /dev/raw/raw13 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="redo01", RUN+="/bin/raw /dev/raw/raw14 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="redo02", RUN+="/bin/raw /dev/raw/raw15 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="redo03", RUN+="/bin/raw /dev/raw/raw16 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="redo04", RUN+="/bin/raw /dev/raw/raw17 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="redo05", RUN+="/bin/raw /dev/raw/raw18 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="redo06", RUN+="/bin/raw /dev/raw/raw19 %N"
ENV{DM_VG_NAME}=="rawvg", ENV{DM_LV_NAME}=="spfile", RUN+="/bin/raw /dev/raw/raw20 %N"
ACTION=="add", KERNEL=="raw*", OWNER=="oracle", GROUP=="dba", MODE=="0660"
^C

서버를 재부팅 시에 논리 볼륨을 raw device에 할당할 수 있도록 rule 파일을 생성하고, 소유자와 그룹 설정을 추가합니다.

Raw Device 규칙을 적용
udevadm control --reload-rules
udevadm trigger --type=devices --action=change
[root@rac1 ~]# udevadm control --reload-rules

[root@rac1 ~]# udevadm trigger --type=devices --action=change

생성된 rule을 적용합니다.

D) OCFS2 구성

OCFS2 클러스터 정보 등록
o2cb add-cluster <클러스터명>
o2cb add-node <클러스터명> <node1명> --ip <node1 사설IP>
o2cb add-node <클러스터명> <node2명> --ip <node2 사설IP>
cat /etc/ocfs2/cluster.conf
[root@rac1 ~]# o2cb add-cluster raccluster

[root@rac1 ~]# o2cb add-node raccluster rac1 --ip 10.0.5.101

[root@rac1 ~]# o2cb add-node raccluster rac2 --ip 10.0.5.102

[root@rac1 ~]# cat /etc/ocfs2/cluster.conf
cluster:
        heartbeat_mode = local
        node_count = 2
        name = raccluster

node:
        number = 0
        cluster = raccluster
        ip_port = 7777
        ip_address = 10.0.5.101
        name = rac1

node:
        number = 1
        cluster = raccluster
        ip_port = 7777
        ip_address = 10.0.5.102
        name = rac2

Archive Log를 저장하기 위해서는 파일을 저장할 수 있는 공유 영역이 있어야 하며, 이를 위해서 OCFS2를 구성해야 합니다.

각각의 노드에 파일로 저장할 경우, 파일을 공유할 수 없어서 노드 장애로 인한 복구가 어려울 수 있습니다.

먼저 클러스터의 이름과 연결될 노드 정보를 저장합니다.

OCFS2 환경 설정 및 활성화
/sbin/o2cb.init configure	# "y" 입력, "엔터" 입력, <클러스터명> 입력, "엔터" 입력, "엔터" 입력, "엔터" 입력, "엔터" 입력
/sbin/o2cb.init status
systemctl enable o2cb
systemctl enable ocfs2
[root@rac1 ~]# /sbin/o2cb.init configure
Configuring the O2CB driver.

This will configure the on-boot properties of the O2CB driver.
The following questions will determine whether the driver is loaded on
boot.  The current values will be shown in brackets ('[]').  Hitting
<ENTER> without typing an answer will keep that current value.  Ctrl-C
will abort.

Load O2CB driver on boot (y/n) [n]: y
Cluster stack backing O2CB [o2cb]:
Cluster to start on boot (Enter "none" to clear) [ocfs2]: raccluster
Specify heartbeat dead threshold (>=7) [31]:
Specify network idle timeout in ms (>=5000) [30000]:
Specify network keepalive delay in ms (>=1000) [2000]:
Specify network reconnect delay in ms (>=2000) [2000]:
Writing O2CB configuration: OK
checking debugfs...
Loading stack plugin "o2cb": OK
Loading filesystem "ocfs2_dlmfs": OK
Creating directory '/dlm': OK
Mounting ocfs2_dlmfs filesystem at /dlm: OK
Setting cluster stack "o2cb": OK
Registering O2CB cluster "raccluster": OK
Setting O2CB cluster timeouts : OK

[root@rac1 ~]# /sbin/o2cb.init status
Driver for "configfs": Loaded
Filesystem "configfs": Mounted
Stack glue driver: Loaded
Stack plugin "o2cb": Loaded
Driver for "ocfs2_dlmfs": Loaded
Filesystem "ocfs2_dlmfs": Mounted
Checking O2CB cluster "raccluster": Online
  Heartbeat dead threshold: 31
  Network idle timeout: 30000
  Network keepalive delay: 2000
  Network reconnect delay: 2000
  Heartbeat mode: Local
Checking O2CB heartbeat: Not active
Debug file system at /sys/kernel/debug: mounted

[root@rac1 ~]# systemctl enable o2cb
Created symlink from /etc/systemd/system/multi-user.target.wants/o2cb.service to /usr/lib/systemd/system/o2cb.service.

[root@rac1 ~]# systemctl enable ocfs2
Created symlink from /etc/systemd/system/multi-user.target.wants/ocfs2.service to /usr/lib/systemd/system/ocfs2.service.

OCFS2를 사용하기 위한 환경 설정과 서비스 활성화를 수행합니다.

vi /etc/sysctl.conf 로 커널 파라미터 추가
# Define panic and panic_on_oops for cluster operation
kernel.panic = 30
kernel.panic_on_oops = 1

추가적으로 필요한 커널 파라미터를 /etc/sysctl.conf에 추가합니다.

마운트 경로 및 OCFS2 영역 생성
mkdir /FRA
mkfs.ocfs2 -L "fra" /dev/sdg2
[root@rac1 ~]# mkdir /FRA

[root@rac1 ~]# mkfs.ocfs2 -L "fra" /dev/sdg2
mkfs.ocfs2 1.8.6
Cluster stack: classic o2cb
Label: fra
Features: sparse extended-slotmap backup-super unwritten inline-data strict-journal-super xattr indexed-dirs refcount discontig-bg
Block size: 4096 (12 bits)
Cluster size: 4096 (12 bits)
Volume size: 5367660544 (1310464 clusters) (1310464 blocks)
Cluster groups: 41 (tail covers 20224 clusters, rest cover 32256 clusters)
Extent allocator size: 4194304 (1 groups)
Journal size: 67108864
Node slots: 4
Creating bitmaps: done
Initializing superblock: done
Writing system files: done
Writing superblock: done
Writing backup superblock: 2 block(s)
Formatting Journals: done
Growing extent allocator: done
Formatting slot map: done
Formatting quota files: done
Writing lost+found: done
mkfs.ocfs2 successful

OCFS2 영역을 마운트할 경로를 생성하고, 공유할 디스크 영역에 대한 포맷을 수행합니다.

vi /etc/fstab 으로 마운트 정보 저장
/dev/sdg2               /FRA            ocfs2   _netdev,defaults        0 0

포맷한 영역이 공유 경로에 마운트될 수 있도록 /etc/fstab에 정보를 저장합니다.

vi /etc/rc.d/rc.local 로 소유자 및 권한 설정
chown -R oracle:dba /FRA
chmod -R 770 /FRA

OCFS2 영역의 소유자와 권한 부여 작업을  /etc/rc.d/rc.local에 저장하여 재기동시에 설정이 유지될 수 있도록 합니다.

부팅시 자동 수행 활성화
chmod +x /etc/rc.d/rc.local
[root@rac1 ~]# chmod +x /etc/rc.d/rc.local

/etc/rc.d/rc.local 파일에 실행 모드를 추가하여 재기동시 작업이 수행되도록 활성화시킵니다.

3. 2번 노드 구성

A) 2번 노드 가상 머신 만들기

.

가상 머신 2번 노드를 만들기 위해 VirtualBox에서 ‘새로 만들기’를 클릭합니다.

가상 머신의 이름을 "rac2"로 정하고, 1번 노드와 동일한 경로를 머신 폴더로 지정합니다.

해당 디렉토리 아래에 rac2라는 디렉토리가 생성되고, 디렉토리 안에 가상 머신 관련 파일들이 저장됩니다.

OS의 종류는 'Linux'로 하고 설치될 버전은 'Oracle (64-bit)'를 선택한 후 <다음>을 클릭합니다.

메모리 크기는 1번 노드와 동일하게 10240MB로 선택한 후 <다음>을 클릭합니다.

B) 1번 노드 VM 복제

2번 노드 가상 디스크 이미지 복제
vboxmanage clonemedium disk .\rac1.vdi ..\rac2\rac2.vdi
PS D:\VM\rac1> vboxmanage clonemedium disk .\rac1.vdi ..\rac2\rac2.vdi
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Clone medium created in format 'VDI'. UUID: 28c8742c-e783-4dca-b95c-5919bfd1257e

1번 노드가 정지된 상태에서 1번 노드의 복제본을 rac2 디렉토리에 저장합니다.

1번 노드의 UUID값과 다른 이미지가 생성되도록 반드시 VirtualBox에서 제공하는 방식으로 복제합니다.

하드 디스크는 '기존의 가상 하드 디스크 파일 사용'을 선택합니다.

그리고 방금 복제한 가상 하드 디스크 파일을 선택하기 위해 폴더 모양의 아이콘을 클릭합니다.

vboxmanage 명령으로 디스크를 복제했다면, Not Attatched 항목에 rac2.vdi 파일이 존재합니다.

만약 목록에 없다면 <추가> 버튼을 클릭하여 복제한 이미지를 찾아 불러오면 됩니다.

rac2.vdi 파일을 선택한 후 <선택> 버튼을 클릭합니다.

<만들기>를 클릭하면, 지금까지 선택한 환경에 맞게 가상 머신이 생성됩니다.

C) 2번 노드 VM 환경 설정

기본적으로 생성된 가상 머신을 RAC 환경에 맞게 변경해야 하므로, 2번 노드를 선택하고 <설정>을 클릭합니다.

부팅 순서에서 플로피 디스크를 해제합니다.

1번 노드와 동일한 순서로 공유 디스크를 추가시켜 줍니다.

반드시 같은 순서대로 SATA 컨트롤러에 연결시켜야 합니다.

오디오는 사용하지 않을 것이므로 '오디오 사용하기'를 해제합니다.

어댑터 1의 네트워크 설정을 1번 노드와 동일하게 구성합니다.

본인이 사용할 네트워크 환경에 맞게 설정하면 됩니다.

RAC 노드간의 통신을 위해 어댑터 2를 활성화시킵니다.

어댑터 2번 항목에 가서 '네트워크 어댑터 사용하기'를 체크하고, 1번 노드와 동일하게 '호스트 전용 어댑터'로 구성합니다.

1번 노드와 동일하게 공유 폴더 기능을 설정합니다.

공유 폴더를 설정할 경우, 호스트 서버에 저장된 설치 파일을 업로드 없이 바로 사용할 수 있습니다.

모든 구성이 완료되었으면 <확인>을 클릭해서 변경한 설정 값을 저장하고, 가상머신을 기동합니다.

D) 네트워크 설정 변경

네트워크 설정을 변경하기 위해 root 계정으로 접속한 후에 '프로그램' > '시스템 도구' > '설정'을 클릭합니다.

네트워크 항목으로 이동한 후에 각 이더넷 항목에 톱니바퀴 모양의 아이콘을 클릭하여 설정을 변경합니다.

참고로 VirtualBox를 기준으로 했을 떄, 이더넷 enp0s3은 Public 네트워크이고 enp0s8은 Private 네트워크의 인터페이스입니다.


네트워크 인터페이스 alias 변경
ip link set <old NIC alias> down
ip link set <old NIC alias> name <new NIC alias>
ip link set <new NIC alias> up
mv /etc/sysconfig/network-scripts/ifcfg-<old NIC alias> /etc/sysconfig/network-scripts/ifcfg-<new NIC alias>
sed -ire "s/NAME=\"<old NIC alias>\"/NAME=\"<new NIC alias>\"/" /etc/sysconfig/network-scripts/ifcfg-<new NIC alias>
sed -ire "s/DEVICE=\"<old NIC alias>\"/NAME=\"<new NIC alias>\"/" /etc/sysconfig/network-scripts/ifcfg-<new NIC alias>

만약 2번 VM의 NIC(Network Interface Card)의 alias가 1번 노드의 alias와 일치하지 않을 경우, grid 검증 과정에서 오류가 발생합니다.

좌측의 명령어로 alias를 1번과 동일하게 변경하여 해결할 수 있습니다.

추가적으로 NIC별 UUID 확인이 필요할 경우 다음의 명령어를 사용합니다.

NIC별 UUID 확인
nmcli connection



이더넷 enp0s3의 IPv4 항목에서 주소를 "10.0.1.102"(2번 노드의 Public 네트워크 IP)로 변경한 후 <적용>을 클릭합니다.

리눅스 버전에 따라 네트워크 정보가 초기화되어 있을 수 있습니다.

그럴 때는 아래의 정보와 같이 입력합니다.

항목

입력값

비고

주소10.0.1.1021번 노드 Public IP 주소
네트마스크24서브넷 마스크 값으로  255.255.255.0 사용 가능
게이트웨이10.0.1.1Public 망의 게이트웨이
네임서버(DNS)127.0.0.1dnsmasq를 사용할 경우 loopback IP 사용
검색 도메인localdomain로컬 도메인 정보 입력

이더넷 enp0s8의 IPv4 항목에서 주소를 "10.0.5.102"(2번 노드의 Private 네트워크 IP)로 변경한 후 <적용>을 클릭합니다.

마찬가지로 네트워크 정보가 초기화 되었을 경우, 아래와 같이 입력합니다.

항목

입력값

비고

주소10.0.5.1011번 노드 Private IP 주소
네트마스크24서브넷 마스크 값으로  255.255.255.0 사용 가능

각 이더넷 인터페이스를 껏다가 키면 변경된 설정이 적용됩니다.

또는 명령 프롬프트에서 아래 명령을 수행합니다.

root 유저로 네트워크 재기동 수행
systemctl restart network
2번 노드 IP 주소 변경하기 (옵션)
ip addr show
vi /etc/sysconfig/network-scripts/ifcfg-<public 인터페이스명>
# IPADDR=XXX.XXX.XXX.XXX 부분 변경
vi /etc/sysconfig/network-scripts/ifcfg-<private 인터페이스명>
# IPADDR=XXX.XXX.XXX.XXX 부분 변경
systemctl restart network
ip addr show
[root@rac1 ~]# ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:72:b8:d8 brd ff:ff:ff:ff:ff:ff
    inet 10.0.1.101/24 brd 10.0.1.255 scope global noprefixroute enp0s3
       valid_lft forever preferred_lft forever
    inet6 fe80::a00:27ff:fe72:b8d8/64 scope link 
       valid_lft forever preferred_lft forever
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:fd:6d:a9 brd ff:ff:ff:ff:ff:ff
    inet 10.0.5.101/24 brd 10.0.5.255 scope global noprefixroute enp0s8
       valid_lft forever preferred_lft forever
    inet6 fe80::cd39:da9a:86ab:40a8/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever

[root@rac1 ~]# vi /etc/sysconfig/network-scripts/ifcfg-enp0s3
... << 생략 >> ...
IPADDR=10.0.1.102
... << 생략 >> ...

[root@rac1 ~]# vi /etc/sysconfig/network-scripts/ifcfg-enp0s8
... << 생략 >> ...
IPADDR=10.0.5.102
... << 생략 >> ...

[root@rac1 ~]# systemctl restart network

[root@rac1 ~]# ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:72:b8:d8 brd ff:ff:ff:ff:ff:ff
    inet 10.0.1.102/24 brd 10.0.1.255 scope global noprefixroute enp0s3
       valid_lft forever preferred_lft forever
    inet6 fe80::a00:27ff:fe72:b8d8/64 scope link 
       valid_lft forever preferred_lft forever
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:fd:6d:a9 brd ff:ff:ff:ff:ff:ff
    inet 10.0.5.102/24 brd 10.0.5.255 scope global noprefixroute enp0s8
       valid_lft forever preferred_lft forever
    inet6 fe80::cd39:da9a:86ab:40a8/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever

위의 GUI 방식보다 간단하게 CLI 모드에서 vi 편집기를 사용하여 IP를 수정할 수도 있습니다.

다만 Public Private 이더넷을 혼동하여 잘못 설정할  있으므로 주의가 필요합니다.

E) 호스트명 변경

2번 노드 hostname 변경
hostnamectl status
hostnamectl set-hostname rac2
hostnamectl status
[root@rac1 ~]# hostnamectl status
   Static hostname: rac1
         Icon name: computer-vm
           Chassis: vm
        Machine ID: 5554cd8ab5124283be4afd144783a884
           Boot ID: dc642dbe4f44426f82469fbda8e61f27
    Virtualization: kvm
  Operating System: Oracle Linux Server 7.6
       CPE OS Name: cpe:/o:oracle:linux:7:6:server
            Kernel: Linux 4.14.35-1818.3.3.el7uek.x86_64
      Architecture: x86-64
	  
[root@rac1 ~]# hostnamectl set-hostname rac2

[root@rac1 ~]# hostnamectl status
   Static hostname: rac2
         Icon name: computer-vm
           Chassis: vm
        Machine ID: 5554cd8ab5124283be4afd144783a884
           Boot ID: dc642dbe4f44426f82469fbda8e61f27
    Virtualization: kvm
  Operating System: Oracle Linux Server 7.6
       CPE OS Name: cpe:/o:oracle:linux:7:6:server
            Kernel: Linux 4.14.35-1818.3.3.el7uek.x86_64
      Architecture: x86-64

2번 노드의 호스트 명은 CLI 모드에서 간단한 명령어로 변경할 수 있습니다.

2번 노드 CLI 모드로 변경
systemctl set-default multi-user.target
[root@rac2 ~]# systemctl set-default multi-user.target
Removed symlink /etc/systemd/system/default.target.
Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/multi-user.target.

설치 과정 중에 리소스를 절약하기 위해 2번 노드는 텍스트 모드로 실행되도록 수정합니다.

F) 사용자 환경 변수 변경

vi ~oracle/.bash_profile로 2번 노드 oracle 프로필 변경
export ORACLE_HOSTNAME=rac2
export ORACLE_SID=racdb2
[root@rac2 ~]# cat ~oracle/.bash_profile
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/.local/bin:$HOME/bin

export PATH

export TMP=/tmp
export TMPDIR=$TMP
export EDITOR=vi
export ORACLE_HOSTNAME=rac2             # 호스트명에 맞게 변경
export ORACLE_UNQNAME=racdb
export ORACLE_BASE=/u01/app/oracle
export GRID_HOME=/u01/app/11.2.0/grid
export DB_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_HOME=$DB_HOME
export ORACLE_SID=racdb2                # 2번 노드 racdb2
export ORACLE_TERM=xterm
export BASE_PATH=/usr/sbin:$PATH
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$GRID_HOME/bin:$BASE_PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
export NLS_LANG=AMERICAN_KOREA.AL32UTF8
PS1='[$ORACLE_SID:$PWD]> '

oracle 유저의 환경 설정을 2번 노드에 맞게 수정합니다.

vi ~oracle/.bashrc 2번 노드의 alias 설정 변경
alias grid_env='export ORACLE_HOME=$GRID_HOME;export ORACLE_SID=+ASM2;export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$BASE_PATH'
alias db_env='export ORACLE_HOME=$DB_HOME;export ORACLE_SID=racdb2;export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$BASE_PATH'

aslias 설정의 ORACLE_SID 정보도 2번 노드에 맞게 수정합니다.

VI. 11g Grid Infrastructure 설치

1. Grid Infrastructure 설치 및 클러스터 구축

A) 사전 준비

1번 노드 cvuqdisk 패키지 설치 및 2번 노드로 전송
cd <Grid 설치 파일 압축 해제 경로>/rpm
rpm -ivh cvuqdisk-1.0.9-1.rpm
scp cvuqdisk-1.0.9-1.rpm root@rac2:/tmp
[root@rac1 ~]# cd /media/sf_oracle/11.2/grid/rpm

[root@rac1 rpm]# rpm -ivh cvuqdisk-1.0.9-1.rpm
준비 중...                         ################################# [100%]
Using default group oinstall to install package
Updating / installing...
   1:cvuqdisk-1.0.9-1                 ################################# [100%]

[root@rac1 rpm]# scp cvuqdisk-1.0.9-1.rpm root@rac2:/tmp
The authenticity of host 'rac2 (10.0.1.102)' can't be established.
ECDSA key fingerprint is SHA256:OIsLbVfyE5WfHmGP9j2nnMA7DOOZ9OGF2vrFXKypYyQ.
ECDSA key fingerprint is MD5:a0:76:58:38:02:f0:e1:06:48:ee:dc:cf:e4:1b:4e:58.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'rac2,10.0.1.102' (ECDSA) to the list of known hosts.
root@rac2's password:
cvuqdisk-1.0.9-1.rpm                           100% 8288     5.4MB/s   00:00

root 계정으로 1번 노드에서 cvuqdisk 패키지를 설치한 후, 2번 노드로 파일을 전송합니다.

2번 노드 cvuqdisk 패키지 설치
cd /tmp
rpm -ivh cvuqdisk-1.0.9-1.rpm
[root@rac1 ~]# cd /tmp

[root@rac2 tmp]# rpm -ivh cvuqdisk-1.0.9-1.rpm
준비 중...                         ################################# [100%]
Using default group oinstall to install package
Updating / installing...
   1:cvuqdisk-1.0.9-1                 ################################# [100%]

2번 노드에서도 root 계정으로 cvuqdisk 패키지를 설치합니다.

oracle 계정의 패스워드 없는 SSH 접속 환경 설정
cd <Grid 설치 파일 압축 해제 경로>/sshsetup
./sshUserSetup.sh -user oracle -hosts "<노드 1번 호스트명> <노드 2번 호스트명>" -noPromptPassphrase -advanced
[racdb1:/home/oracle]> cd /media/sf_oracle/11.2/grid/sshsetup

[racdb1:/media/sf_oracle/11.2/grid/sshsetup]> ./sshUserSetup.sh -user oracle -hosts "rac1 rac2" -noPromptPassphrase -advanced
The output of this script is also logged into /tmp/sshUserSetup_2020-04-14-08-21-52.log
Hosts are rac1 rac2
user is oracle
Platform:- Linux
Checking if the remote hosts are reachable
PING rac1 (10.0.1.101) 56(84) bytes of data.
64 bytes from rac1 (10.0.1.101): icmp_seq=1 ttl=64 time=0.016 ms
64 bytes from rac1 (10.0.1.101): icmp_seq=2 ttl=64 time=0.053 ms
64 bytes from rac1 (10.0.1.101): icmp_seq=3 ttl=64 time=0.059 ms
64 bytes from rac1 (10.0.1.101): icmp_seq=4 ttl=64 time=0.043 ms
64 bytes from rac1 (10.0.1.101): icmp_seq=5 ttl=64 time=0.041 ms

--- rac1 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 3999ms
rtt min/avg/max/mdev = 0.016/0.042/0.059/0.015 ms
PING rac2 (10.0.1.102) 56(84) bytes of data.
64 bytes from rac2 (10.0.1.102): icmp_seq=1 ttl=64 time=1.19 ms
64 bytes from rac2 (10.0.1.102): icmp_seq=2 ttl=64 time=0.910 ms
64 bytes from rac2 (10.0.1.102): icmp_seq=3 ttl=64 time=0.632 ms
64 bytes from rac2 (10.0.1.102): icmp_seq=4 ttl=64 time=0.472 ms
64 bytes from rac2 (10.0.1.102): icmp_seq=5 ttl=64 time=1.24 ms

--- rac2 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4004ms
rtt min/avg/max/mdev = 0.472/0.890/1.242/0.302 ms
Remote host reachability check succeeded.
The following hosts are reachable: rac1 rac2.
The following hosts are not reachable: .
All hosts are reachable. Proceeding further...
firsthost rac1
numhosts 2
The script will setup SSH connectivity from the host rac1 to all
the remote hosts. After the script is executed, the user can use SSH to run
commands on the remote hosts or copy files between this host rac1
and the remote hosts without being prompted for passwords or confirmations.

NOTE 1:
As part of the setup procedure, this script will use ssh and scp to copy
files between the local host and the remote hosts. Since the script does not
store passwords, you may be prompted for the passwords during the execution of
the script whenever ssh or scp is invoked.

NOTE 2:
AS PER SSH REQUIREMENTS, THIS SCRIPT WILL SECURE THE USER HOME DIRECTORY
AND THE .ssh DIRECTORY BY REVOKING GROUP AND WORLD WRITE PRIVILEDGES TO THESE
directories.

Do you want to continue and let the script make the above mentioned changes (yes/no)?
yes

The user chose yes
User chose to skip passphrase related questions.
Creating .ssh directory on local host, if not present already
Creating authorized_keys file on local host
Changing permissions on authorized_keys to 644 on local host
Creating known_hosts file on local host
Changing permissions on known_hosts to 644 on local host
Creating config file on local host
If a config file exists already at /home/oracle/.ssh/config, it would be backed up to /home/oracle/.ssh/config.backup.
Removing old private/public keys on local host
Running SSH keygen on local host with empty passphrase
Generating public/private rsa key pair.
Your identification has been saved in /home/oracle/.ssh/id_rsa.
Your public key has been saved in /home/oracle/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:oo5TWhOhim7CCvd0H5yuzJJDoYaE+mTpdy3sRa++qk4 oracle@rac1
The key's randomart image is:
+---[RSA 1024]----+
|                 |
|    .            |
|.  . .           |
|... o            |
|+o o o. S        |
|= * =. + o       |
|+*.=E+..= .      |
|o==*=+++.o       |
|= .+=**=*.       |
+----[SHA256]-----+
Creating .ssh directory and setting permissions on remote host rac1
THE SCRIPT WOULD ALSO BE REVOKING WRITE PERMISSIONS FOR group AND others ON THE HOME DIRECTORY FOR oracle. THIS IS AN SSH REQUIREMENT.
The script would create ~oracle/.ssh/config file on remote host rac1. If a config file exists already at ~oracle/.ssh/config, it would be backed up to ~oracle/.ssh/config.backup.
The user may be prompted for a password here since the script would be running SSH on host rac1.
Warning: Permanently added 'rac1,10.0.1.101' (ECDSA) to the list of known hosts.
oracle@rac1's password:
Done with creating .ssh directory and setting permissions on remote host rac1.
Creating .ssh directory and setting permissions on remote host rac2
THE SCRIPT WOULD ALSO BE REVOKING WRITE PERMISSIONS FOR group AND others ON THE HOME DIRECTORY FOR oracle. THIS IS AN SSH REQUIREMENT.
The script would create ~oracle/.ssh/config file on remote host rac2. If a config file exists already at ~oracle/.ssh/config, it would be backed up to ~oracle/.ssh/config.backup.
The user may be prompted for a password here since the script would be running SSH on host rac2.
Warning: Permanently added 'rac2,10.0.1.102' (ECDSA) to the list of known hosts.
oracle@rac2's password:
Done with creating .ssh directory and setting permissions on remote host rac2.
Copying local host public key to the remote host rac1
The user may be prompted for a password or passphrase here since the script would be using SCP for host rac1.
oracle@rac1's password:
Done copying local host public key to the remote host rac1
Copying local host public key to the remote host rac2
The user may be prompted for a password or passphrase here since the script would be using SCP for host rac2.
oracle@rac2's password:
Done copying local host public key to the remote host rac2
Creating keys on remote host rac1 if they do not exist already. This is required to setup SSH on host rac1.

Creating keys on remote host rac2 if they do not exist already. This is required to setup SSH on host rac2.
Generating public/private rsa key pair.
Your identification has been saved in .ssh/id_rsa.
Your public key has been saved in .ssh/id_rsa.pub.
The key fingerprint is:
SHA256:BdQ3lUzzNX+T2wmlpkuCJjoNPzAWLbS57eDCfa06cb4 oracle@rac2
The key's randomart image is:
+---[RSA 1024]----+
|   .   .o.   +++.|
|  . +    .. o =o=|
|   = .    .. = o+|
|    =   ..  o . *|
|   B o oS. o   o.|
|. +.X.+   o .    |
| o =+* .   .     |
|  ..o.o          |
|   .oE.          |
+----[SHA256]-----+
Updating authorized_keys file on remote host rac1
Updating known_hosts file on remote host rac1
Updating authorized_keys file on remote host rac2
Updating known_hosts file on remote host rac2
cat: /home/oracle/.ssh/known_hosts.tmp: 그런 파일이나 디렉터리가 없습니다
cat: /home/oracle/.ssh/authorized_keys.tmp: 그런 파일이나 디렉터리가 없습니다
SSH setup is complete.

------------------------------------------------------------------------
Verifying SSH setup
===================
The script will now run the date command on the remote nodes using ssh
to verify if ssh is setup correctly. IF THE SETUP IS CORRECTLY SETUP,
THERE SHOULD BE NO OUTPUT OTHER THAN THE DATE AND SSH SHOULD NOT ASK FOR
PASSWORDS. If you see any output other than date or are prompted for the
password, ssh is not setup correctly and you will need to resolve the
issue and set up ssh again.
The possible causes for failure could be:
1. The server settings in /etc/ssh/sshd_config file do not allow ssh
for user oracle.
2. The server may have disabled public key based authentication.
3. The client public key on the server may be outdated.
4. ~oracle or ~oracle/.ssh on the remote host may not be owned by oracle.
5. User may not have passed -shared option for shared remote users or
may be passing the -shared option for non-shared remote users.
6. If there is output in addition to the date, but no password is asked,
it may be a security alert shown as part of company policy. Append the
additional text to the <OMS HOME>/sysman/prov/resources/ignoreMessages.txt file.
------------------------------------------------------------------------
--rac1:--
Running /usr/bin/ssh -x -l oracle rac1 date to verify SSH connectivity has been setup from local host to rac1.
IF YOU SEE ANY OTHER OUTPUT BESIDES THE OUTPUT OF THE DATE COMMAND OR IF YOU ARE PROMPTED FOR A PASSWORD HERE, IT MEANS SSH SETUP HAS NOT BEEN SUCCESSFUL. Please note that being prompted for a passphrase may be OK but being prompted for a password is ERROR.
2020. 04. 14. (화) 08:22:21 KST
------------------------------------------------------------------------
--rac2:--
Running /usr/bin/ssh -x -l oracle rac2 date to verify SSH connectivity has been setup from local host to rac2.
IF YOU SEE ANY OTHER OUTPUT BESIDES THE OUTPUT OF THE DATE COMMAND OR IF YOU ARE PROMPTED FOR A PASSWORD HERE, IT MEANS SSH SETUP HAS NOT BEEN SUCCESSFUL. Please note that being prompted for a passphrase may be OK but being prompted for a password is ERROR.
2020. 04. 14. (화) 08:22:21 KST
------------------------------------------------------------------------
------------------------------------------------------------------------
Verifying SSH connectivity has been setup from rac1 to rac1
IF YOU SEE ANY OTHER OUTPUT BESIDES THE OUTPUT OF THE DATE COMMAND OR IF YOU ARE PROMPTED FOR A PASSWORD HERE, IT MEANS SSH SETUP HAS NOT BEEN SUCCESSFUL.
bash: -c: line 0: unexpected EOF while looking for matching `"'
bash: -c: line 1: syntax error: unexpected end of file
------------------------------------------------------------------------
------------------------------------------------------------------------
Verifying SSH connectivity has been setup from rac1 to rac2
IF YOU SEE ANY OTHER OUTPUT BESIDES THE OUTPUT OF THE DATE COMMAND OR IF YOU ARE PROMPTED FOR A PASSWORD HERE, IT MEANS SSH SETUP HAS NOT BEEN SUCCESSFUL.
bash: -c: line 0: unexpected EOF while looking for matching `"'
bash: -c: line 1: syntax error: unexpected end of file
------------------------------------------------------------------------
-Verification from complete-
SSH verification complete.

모든 노드에 대해 암호없는 SSH 접속 환경을 설정합니다.

스크립트 수행 시 암호를 뭍는 단계마다 각 노드의 oracle 계정 OS 암호를 입력합니다.

SSH 접속 확인
ssh rac1 date
ssh rac2 date
ssh rac1-priv date
ssh rac2-priv date
[racdb1:/home/oracle]> ssh rac1 date
2020. 04. 14. (화) 08:23:12 KST

[racdb1:/home/oracle]> ssh rac2 date
2020. 04. 14. (화) 08:23:15 KST

[racdb1:/home/oracle]> ssh rac1-priv date
The authenticity of host 'rac1-priv (10.0.5.101)' can't be established.
ECDSA key fingerprint is SHA256:OIsLbVfyE5WfHmGP9j2nnMA7DOOZ9OGF2vrFXKypYyQ.
ECDSA key fingerprint is MD5:a0:76:58:38:02:f0:e1:06:48:ee:dc:cf:e4:1b:4e:58.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'rac1-priv,10.0.5.101' (ECDSA) to the list of known hosts.
2020. 04. 14. (화) 08:23:21 KST

[racdb1:/home/oracle]> ssh rac2-priv date
The authenticity of host 'rac2-priv (10.0.5.102)' can't be established.
ECDSA key fingerprint is SHA256:OIsLbVfyE5WfHmGP9j2nnMA7DOOZ9OGF2vrFXKypYyQ.
ECDSA key fingerprint is MD5:a0:76:58:38:02:f0:e1:06:48:ee:dc:cf:e4:1b:4e:58.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'rac2-priv,10.0.5.102' (ECDSA) to the list of known hosts.
2020. 04. 14. (화) 08:23:26 KST
[racdb2:/home/oracle]> ssh rac1 date
2020. 04. 14. (화) 08:23:30 KST

[racdb2:/home/oracle]> ssh rac2 date
2020. 04. 14. (화) 08:23:32 KST

[racdb2:/home/oracle]> ssh rac1-priv date
The authenticity of host 'rac1-priv (10.0.5.101)' can't be established.
ECDSA key fingerprint is SHA256:OIsLbVfyE5WfHmGP9j2nnMA7DOOZ9OGF2vrFXKypYyQ.
ECDSA key fingerprint is MD5:a0:76:58:38:02:f0:e1:06:48:ee:dc:cf:e4:1b:4e:58.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'rac1-priv,10.0.5.101' (ECDSA) to the list of known hosts.
2020. 04. 14. (화) 08:23:40 KST

[racdb2:/home/oracle]> ssh rac2-priv date
The authenticity of host 'rac2-priv (10.0.5.102)' can't be established.
ECDSA key fingerprint is SHA256:OIsLbVfyE5WfHmGP9j2nnMA7DOOZ9OGF2vrFXKypYyQ.
ECDSA key fingerprint is MD5:a0:76:58:38:02:f0:e1:06:48:ee:dc:cf:e4:1b:4e:58.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'rac2-priv,10.0.5.102' (ECDSA) to the list of known hosts.
2020. 04. 14. (화) 08:23:45 KST

암호 없는 SSH 접속이 정상적으로 설정되었는지, 모든 노드에서 테스트합니다.

사전 환경 검증 스크립트 실행
grid_env
cd <Grid 설치 파일 압축 해제 경로>
./runcluvfy.sh stage -pre crsinst -n <노드 1번 호스트명>,<노드 2번 호스트명> -fixup -verbose
[+ASM1:/home/oracle]> cd /media/sf_oracle/11.2/grid

[+ASM1:/media/sf_oracle/11.2/grid]> ./runcluvfy.sh stage -pre crsinst -n rac1,rac2 -fixup -verbose

클러스터 서비스 설정에 대한 사전 확인 수행

노드 연결 가능성을 검사하는 중...

검사: "rac1" 노드에서의 노드 연결 가능성
  대상 노드                                 연결 가능?
  ------------------------------------  ------------------------
  rac2                                  예
  rac1                                  예
결과: "rac1" 노드에서 노드 연결 가능성 검사를 성공했습니다.


사용자 equivalence를 검사하는 중...

검사: 사용자 "oracle"에 대한 사용자 equivalence
  노드 이름                                 상태
  ------------------------------------  ------------------------
  rac2                                  성공
  rac1                                  성공
결과: 사용자 "oracle"에 대한 사용자 equivalence 검사를 성공했습니다.

노드 연결을 검사하는 중...

호스트 구성 파일 확인 중...
  노드 이름                                 상태
  ------------------------------------  ------------------------
  rac2                                  성공
  rac1                                  성공

호스트 구성 파일 확인을 성공했습니다.


"rac2" 노드에 대한 인터페이스 정보
 이름     IP 주소           서브넷             게이트웨이           Def. 게이트웨이      HW 주소             MTU
 ------ --------------- --------------- --------------- --------------- ----------------- ------
 enp0s3 10.0.1.102      10.0.1.0        0.0.0.0         10.0.1.1        08:00:27:6E:44:4D 1500
 enp0s8 10.0.5.102      10.0.5.0        0.0.0.0         10.0.1.1        08:00:27:BE:10:55 1500


"rac1" 노드에 대한 인터페이스 정보
 이름     IP 주소           서브넷             게이트웨이           Def. 게이트웨이      HW 주소             MTU
 ------ --------------- --------------- --------------- --------------- ----------------- ------
 enp0s3 10.0.1.101      10.0.1.0        0.0.0.0         10.0.1.1        08:00:27:39:AE:EE 1500
 enp0s8 10.0.5.101      10.0.5.0        0.0.0.0         10.0.1.1        08:00:27:D3:1A:94 1500


검사: "10.0.1.0" 서브넷에 대한 노드 연결
  소스                              대상                              접속됨?    
  ------------------------------  ------------------------------  ----------------
  rac2[10.0.1.102]                rac1[10.0.1.101]                예             
결과: rac2,rac1개의 노드를 사용하는 "10.0.1.0" 서브넷에 대한 노드 연결을 성공했습니다.


검사: "10.0.1.0" 서브넷의 TCP 접속
  소스                              대상                              접속됨?    
  ------------------------------  ------------------------------  ----------------
  rac1:10.0.1.101                 rac2:10.0.1.102                 성공           
결과: "10.0.1.0" 서브넷에 대한 TCP 접속 검사를 성공했습니다.


검사: "10.0.5.0" 서브넷에 대한 노드 연결
  소스                              대상                              접속됨?    
  ------------------------------  ------------------------------  ----------------
  rac2[10.0.5.102]                rac1[10.0.5.101]                예             
결과: rac2,rac1개의 노드를 사용하는 "10.0.5.0" 서브넷에 대한 노드 연결을 성공했습니다.


검사: "10.0.5.0" 서브넷의 TCP 접속
  소스                              대상                              접속됨?    
  ------------------------------  ------------------------------  ----------------
  rac1:10.0.5.101                 rac2:10.0.5.102                 성공           
결과: "10.0.5.0" 서브넷에 대한 TCP 접속 검사를 성공했습니다.


"10.0.1.0" 서브넷에서 발견된 VIP 후보로 적합한 인터페이스:
rac2 enp0s3:10.0.1.102
rac1 enp0s3:10.0.1.101

"10.0.5.0" 서브넷에서 발견된 전용 상호 접속 후보로 적합한 인터페이스:
rac2 enp0s8:10.0.5.102
rac1 enp0s8:10.0.5.101
서브넷 마스크 일관성 확인 중...
"10.0.1.0" 서브넷에 대한 서브넷 마스크 일관성 검사를 성공했습니다.
"10.0.5.0" 서브넷에 대한 서브넷 마스크 일관성 검사를 성공했습니다.
서브넷 마스크 일관성 검사를 성공했습니다.

결과: 노드 연결 검사를 성공했습니다.

멀티캐스트 통신을 검사하는 중...

멀티캐스트 그룹 "230.0.1.0"과(와) 멀티캐스트 통신을 위해 "10.0.1.0" 서브넷을 검사하는 중...
멀티캐스트 그룹 "230.0.1.0"과(와) 멀티캐스트 통신을 위한 "10.0.1.0" 서브넷 검사를 성공했습니다.

멀티캐스트 그룹 "230.0.1.0"과(와) 멀티캐스트 통신을 위해 "10.0.5.0" 서브넷을 검사하는 중...
멀티캐스트 그룹 "230.0.1.0"과(와) 멀티캐스트 통신을 위한 "10.0.5.0" 서브넷 검사를 성공했습니다.

멀티캐스트 통신 검사를 성공했습니다.

ASMLib 구성을 검사하는 중입니다.
  노드 이름                                 상태
  ------------------------------------  ------------------------
  rac2                                  성공
  rac1                                  성공
결과: ASMLib 구성 검사를 성공했습니다.

검사: 총 메모리
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          9.7635GB (1.0237792E7KB)  1.5GB (1572864.0KB)       성공
  rac1          9.7635GB (1.0237792E7KB)  1.5GB (1572864.0KB)       성공
결과: 총 메모리 검사를 성공했습니다.

검사: 사용 가능한 메모리
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          9.5567GB (1.0020956E7KB)  50MB (51200.0KB)          성공
  rac1          9.232GB (9680436.0KB)     50MB (51200.0KB)          성공
결과: 사용 가능한 메모리 검사를 성공했습니다.

검사: 교체 공간
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          10GB (1.0485756E7KB)      9.7635GB (1.0237792E7KB)  성공
  rac1          10GB (1.0485756E7KB)      9.7635GB (1.0237792E7KB)  성공
결과: 교체 공간 검사를 성공했습니다.

검사: "rac2:/tmp"에 대한 여유 디스크 공간
  경로                노드 이름         마운트 위치        사용 가능         필수            상태
  ----------------  ------------  ------------  ------------  ------------  ------------
  /tmp              rac2          /             89.5264GB     1GB           성공 
결과: "rac2:/tmp"에 대한 여유 디스크 공간 검사를 성공했습니다.

검사: "rac1:/tmp"에 대한 여유 디스크 공간
  경로                노드 이름         마운트 위치        사용 가능         필수            상태
  ----------------  ------------  ------------  ------------  ------------  ------------
  /tmp              rac1          /             89.4643GB     1GB           성공 
결과: "rac1:/tmp"에 대한 여유 디스크 공간 검사를 성공했습니다.

검사: "oracle"에 대한 사용자 존재 여부
  노드 이름         상태                        설명
  ------------  ------------------------  ------------------------
  rac2          성공                        존재함(54321)
  rac1          성공                        존재함(54321)

UID 값이 54321인 다중 사용자를 검사하는 중
결과: UID 값이 54321인 다중 사용자 검사를 성공했습니다.
결과: "oracle"에 대한 사용자 존재 여부 검사를 성공했습니다.

검사: "oinstall"에 대한 그룹 존재 여부
  노드 이름         상태                        설명
  ------------  ------------------------  ------------------------
  rac2          성공                        존재함
  rac1          성공                        존재함
결과: "oinstall"에 대한 그룹 존재 여부 검사를 성공했습니다.

검사: "dba"에 대한 그룹 존재 여부
  노드 이름         상태                        설명
  ------------  ------------------------  ------------------------
  rac2          성공                        존재함
  rac1          성공                        존재함
결과: "dba"에 대한 그룹 존재 여부 검사를 성공했습니다.

검사: "oinstall" 그룹[기본]의 사용자 "oracle"에 대한 멤버쉽
  노드 이름             사용자가 존재함      그룹이 존재함       그룹의 사용자       기본            상태
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac2              예             예             예             예             성공
  rac1              예             예             예             예             성공
결과: "oinstall" 그룹[기본]의 사용자 "oracle"에 대한 멤버쉽 검사를 성공했습니다.

검사: "dba" 그룹의 사용자 "oracle"에 대한 멤버쉽
  노드 이름             사용자가 존재함      그룹이 존재함       그룹의 사용자       상태
  ----------------  ------------  ------------  ------------  ----------------
  rac2              예             예             예             성공            
  rac1              예             예             예             성공            
결과: "dba" 그룹의 사용자 "oracle"에 대한 멤버쉽 검사를 성공했습니다.

검사: 실행 레벨
  노드 이름         실행 레벨                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          3                         3,5                       성공
  rac1          5                         3,5                       성공
결과: 실행 레벨 검사를 성공했습니다.

검사: "최대 열린 파일 기술자"에 대한 완전 제한
  노드 이름             유형            사용 가능         필수            상태   
  ----------------  ------------  ------------  ------------  ----------------
  rac2              완전            65536         65536         성공             
  rac1              완전            65536         65536         성공             
결과: "최대 열린 파일 기술자"에 대한 완전 제한 검사를 성공했습니다.

검사: "최대 열린 파일 기술자"에 대한 부분 제한
  노드 이름             유형            사용 가능         필수            상태   
  ----------------  ------------  ------------  ------------  ----------------
  rac2              부분            1024          1024          성공             
  rac1              부분            65536         1024          성공             
결과: "최대 열린 파일 기술자"에 대한 부분 제한 검사를 성공했습니다.

검사: "최대 사용자 프로세스"에 대한 완전 제한
  노드 이름             유형            사용 가능         필수            상태   
  ----------------  ------------  ------------  ------------  ----------------
  rac2              완전            16384         16384         성공             
  rac1              완전            16384         16384         성공             
결과: "최대 사용자 프로세스"에 대한 완전 제한 검사를 성공했습니다.

검사: "최대 사용자 프로세스"에 대한 부분 제한
  노드 이름             유형            사용 가능         필수            상태   
  ----------------  ------------  ------------  ------------  ----------------
  rac2              부분            16384         2047          성공             
  rac1              부분            16384         2047          성공             
결과: "최대 사용자 프로세스"에 대한 부분 제한 검사를 성공했습니다.

검사: 시스템 구조
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          x86_64                    x86_64                    성공
  rac1          x86_64                    x86_64                    성공
결과: 시스템 구조 검사를 성공했습니다.

검사: 커널 버전
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          4.1.12-112.16.4.el7uek.x86_64  2.6.9                     성공    
  rac1          4.1.12-112.16.4.el7uek.x86_64  2.6.9                     성공    
결과: 커널 버전 검사를 성공했습니다.

검사: "semmsl"에 대한 커널 매개변수
  노드 이름             현재            구성됨           필수            상태            설명
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac2              250           250           250           성공
  rac1              250           250           250           성공
결과: "semmsl"에 대한 커널 매개변수 검사를 성공했습니다.

검사: "semmns"에 대한 커널 매개변수
  노드 이름             현재            구성됨           필수            상태            설명
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac2              32000         32000         32000         성공
  rac1              32000         32000         32000         성공
결과: "semmns"에 대한 커널 매개변수 검사를 성공했습니다.

검사: "semopm"에 대한 커널 매개변수
  노드 이름             현재            구성됨           필수            상태            설명
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac2              100           100           100           성공
  rac1              100           100           100           성공
결과: "semopm"에 대한 커널 매개변수 검사를 성공했습니다.

검사: "semmni"에 대한 커널 매개변수
  노드 이름             현재            구성됨           필수            상태            설명
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac2              128           128           128           성공
  rac1              128           128           128           성공
결과: "semmni"에 대한 커널 매개변수 검사를 성공했습니다.

검사: "shmmax"에 대한 커널 매개변수
  노드 이름             현재            구성됨           필수            상태            설명
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac2              4398046511104  4398046511104  4294967295    성공             
  rac1              4398046511104  4398046511104  4294967295    성공             
결과: "shmmax"에 대한 커널 매개변수 검사를 성공했습니다.

검사: "shmmni"에 대한 커널 매개변수
  노드 이름             현재            구성됨           필수            상태            설명
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac2              4096          4096          4096          성공
  rac1              4096          4096          4096          성공
결과: "shmmni"에 대한 커널 매개변수 검사를 성공했습니다.

검사: "shmall"에 대한 커널 매개변수
  노드 이름             현재            구성됨           필수            상태            설명
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac2              1073741824    1073741824    2097152       성공
  rac1              1073741824    1073741824    2097152       성공
결과: "shmall"에 대한 커널 매개변수 검사를 성공했습니다.

검사: "file-max"에 대한 커널 매개변수
  노드 이름             현재            구성됨           필수            상태            설명
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac2              6815744       6815744       6815744       성공
  rac1              6815744       6815744       6815744       성공
결과: "file-max"에 대한 커널 매개변수 검사를 성공했습니다.

검사: "ip_local_port_range"에 대한 커널 매개변수
  노드 이름             현재            구성됨           필수            상태            설명
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac2              between 9000.0 & 65500.0  between 9000.0 & 65500.0  between 9000.0 & 65500.0  성공
  rac1              between 9000.0 & 65500.0  between 9000.0 & 65500.0  between 9000.0 & 65500.0  성공
결과: "ip_local_port_range"에 대한 커널 매개변수 검사를 성공했습니다.

검사: "rmem_default"에 대한 커널 매개변수
  노드 이름             현재            구성됨           필수            상태            설명
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac2              262144        262144        262144        성공
  rac1              262144        262144        262144        성공
결과: "rmem_default"에 대한 커널 매개변수 검사를 성공했습니다.

검사: "rmem_max"에 대한 커널 매개변수
  노드 이름             현재            구성됨           필수            상태            설명
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac2              4194304       4194304       4194304       성공
  rac1              4194304       4194304       4194304       성공
결과: "rmem_max"에 대한 커널 매개변수 검사를 성공했습니다.

검사: "wmem_default"에 대한 커널 매개변수
  노드 이름             현재            구성됨           필수            상태            설명
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac2              262144        262144        262144        성공
  rac1              262144        262144        262144        성공
결과: "wmem_default"에 대한 커널 매개변수 검사를 성공했습니다.

검사: "wmem_max"에 대한 커널 매개변수
  노드 이름             현재            구성됨           필수            상태            설명
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac2              1048576       1048576       1048576       성공
  rac1              1048576       1048576       1048576       성공
결과: "wmem_max"에 대한 커널 매개변수 검사를 성공했습니다.

검사: "aio-max-nr"에 대한 커널 매개변수
  노드 이름             현재            구성됨           필수            상태            설명
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac2              1048576       1048576       1048576       성공
  rac1              1048576       1048576       1048576       성공
결과: "aio-max-nr"에 대한 커널 매개변수 검사를 성공했습니다.

검사: "ocfs2-tools"에 대한 패키지 존재 여부
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          ocfs2-tools-1.8.6-9.el7   ocfs2-tools-1.2.7         성공
  rac1          ocfs2-tools-1.8.6-9.el7   ocfs2-tools-1.2.7         성공
결과: "ocfs2-tools"에 대한 패키지 존재 여부 검사를 성공했습니다.

검사: "make"에 대한 패키지 존재 여부
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          make-3.82-23.el7          make-3.80                 성공
  rac1          make-3.82-23.el7          make-3.80                 성공
결과: "make"에 대한 패키지 존재 여부 검사를 성공했습니다.

검사: "binutils"에 대한 패키지 존재 여부
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          binutils-2.27-27.base.el7  binutils-2.15.92.0.2      성공
  rac1          binutils-2.27-27.base.el7  binutils-2.15.92.0.2      성공
결과: "binutils"에 대한 패키지 존재 여부 검사를 성공했습니다.

검사: "gcc(x86_64)"에 대한 패키지 존재 여부
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          gcc(x86_64)-4.8.5-28.0.1.el7  gcc(x86_64)-3.4.6         성공     
  rac1          gcc(x86_64)-4.8.5-28.0.1.el7  gcc(x86_64)-3.4.6         성공     
결과: "gcc(x86_64)"에 대한 패키지 존재 여부 검사를 성공했습니다.

검사: "libaio(x86_64)"에 대한 패키지 존재 여부
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          libaio(x86_64)-0.3.109-13.el7  libaio(x86_64)-0.3.105    성공    
  rac1          libaio(x86_64)-0.3.109-13.el7  libaio(x86_64)-0.3.105    성공    
결과: "libaio(x86_64)"에 대한 패키지 존재 여부 검사를 성공했습니다.

검사: "glibc(x86_64)"에 대한 패키지 존재 여부
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          glibc(x86_64)-2.17-222.el7  glibc(x86_64)-2.3.4-2.41  성공       
  rac1          glibc(x86_64)-2.17-222.el7  glibc(x86_64)-2.3.4-2.41  성공       
결과: "glibc(x86_64)"에 대한 패키지 존재 여부 검사를 성공했습니다.

검사: "compat-libstdc++-33(x86_64)"에 대한 패키지 존재 여부
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          compat-libstdc++-33(x86_64)-3.2.3-72.el7  compat-libstdc++-33(x86_64)-3.2.3  성공
  rac1          compat-libstdc++-33(x86_64)-3.2.3-72.el7  compat-libstdc++-33(x86_64)-3.2.3  성공
결과: "compat-libstdc++-33(x86_64)"에 대한 패키지 존재 여부 검사를 성공했습니다.

검사: "elfutils-libelf(x86_64)"에 대한 패키지 존재 여부
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          elfutils-libelf(x86_64)-0.170-4.el7  elfutils-libelf(x86_64)-0.97  성공
  rac1          elfutils-libelf(x86_64)-0.170-4.el7  elfutils-libelf(x86_64)-0.97  성공
결과: "elfutils-libelf(x86_64)"에 대한 패키지 존재 여부 검사를 성공했습니다.

검사: "elfutils-libelf-devel"에 대한 패키지 존재 여부
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          elfutils-libelf-devel-0.170-4.el7  elfutils-libelf-devel-0.97  성공
  rac1          elfutils-libelf-devel-0.170-4.el7  elfutils-libelf-devel-0.97  성공
결과: "elfutils-libelf-devel"에 대한 패키지 존재 여부 검사를 성공했습니다.

검사: "glibc-common"에 대한 패키지 존재 여부
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          glibc-common-2.17-222.el7  glibc-common-2.3.4        성공
  rac1          glibc-common-2.17-222.el7  glibc-common-2.3.4        성공
결과: "glibc-common"에 대한 패키지 존재 여부 검사를 성공했습니다.

검사: "glibc-devel(x86_64)"에 대한 패키지 존재 여부
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          glibc-devel(x86_64)-2.17-222.el7  glibc-devel(x86_64)-2.3.4  성공
  rac1          glibc-devel(x86_64)-2.17-222.el7  glibc-devel(x86_64)-2.3.4  성공
결과: "glibc-devel(x86_64)"에 대한 패키지 존재 여부 검사를 성공했습니다.

검사: "glibc-headers"에 대한 패키지 존재 여부
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          glibc-headers-2.17-222.el7  glibc-headers-2.3.4       성공       
  rac1          glibc-headers-2.17-222.el7  glibc-headers-2.3.4       성공       
결과: "glibc-headers"에 대한 패키지 존재 여부 검사를 성공했습니다.

검사: "gcc-c++(x86_64)"에 대한 패키지 존재 여부
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          gcc-c++(x86_64)-4.8.5-28.0.1.el7  gcc-c++(x86_64)-3.4.6     성공 
  rac1          gcc-c++(x86_64)-4.8.5-28.0.1.el7  gcc-c++(x86_64)-3.4.6     성공 
결과: "gcc-c++(x86_64)"에 대한 패키지 존재 여부 검사를 성공했습니다.

검사: "libaio-devel(x86_64)"에 대한 패키지 존재 여부
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          libaio-devel(x86_64)-0.3.109-13.el7  libaio-devel(x86_64)-0.3.105  성공
  rac1          libaio-devel(x86_64)-0.3.109-13.el7  libaio-devel(x86_64)-0.3.105  성공
결과: "libaio-devel(x86_64)"에 대한 패키지 존재 여부 검사를 성공했습니다.

검사: "libgcc(x86_64)"에 대한 패키지 존재 여부
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          libgcc(x86_64)-4.8.5-28.0.1.el7  libgcc(x86_64)-3.4.6      성공  
  rac1          libgcc(x86_64)-4.8.5-28.0.1.el7  libgcc(x86_64)-3.4.6      성공  
결과: "libgcc(x86_64)"에 대한 패키지 존재 여부 검사를 성공했습니다.

검사: "libstdc++(x86_64)"에 대한 패키지 존재 여부
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          libstdc++(x86_64)-4.8.5-28.0.1.el7  libstdc++(x86_64)-3.4.6   성공
  rac1          libstdc++(x86_64)-4.8.5-28.0.1.el7  libstdc++(x86_64)-3.4.6   성공
결과: "libstdc++(x86_64)"에 대한 패키지 존재 여부 검사를 성공했습니다.

검사: "libstdc++-devel(x86_64)"에 대한 패키지 존재 여부
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          libstdc++-devel(x86_64)-4.8.5-28.0.1.el7  libstdc++-devel(x86_64)-3.4.6  성공
  rac1          libstdc++-devel(x86_64)-4.8.5-28.0.1.el7  libstdc++-devel(x86_64)-3.4.6  성공
결과: "libstdc++-devel(x86_64)"에 대한 패키지 존재 여부 검사를 성공했습니다.

검사: "sysstat"에 대한 패키지 존재 여부
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          sysstat-10.1.5-13.el7     sysstat-5.0.5             성공
  rac1          sysstat-10.1.5-13.el7     sysstat-5.0.5             성공
결과: "sysstat"에 대한 패키지 존재 여부 검사를 성공했습니다.

검사: "pdksh"에 대한 패키지 존재 여부
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          누락됨                       pdksh-5.2.14              실패      
  rac1          누락됨                       pdksh-5.2.14              실패      
결과: "pdksh"에 대한 패키지 존재 여부 검사를 실패했습니다.

검사: "expat(x86_64)"에 대한 패키지 존재 여부
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          expat(x86_64)-2.1.0-10.el7_3  expat(x86_64)-1.95.7      성공     
  rac1          expat(x86_64)-2.1.0-10.el7_3  expat(x86_64)-1.95.7      성공     
결과: "expat(x86_64)"에 대한 패키지 존재 여부 검사를 성공했습니다.

UID 값이 0인 다중 사용자를 검사하는 중
결과: UID 값이 0인 다중 사용자 검사를 성공했습니다.

검사: 현재 그룹 ID
결과: 현재 그룹 ID 검사를 성공했습니다.

루트 사용자의 기본 그룹 일관성 검사를 시작하는 중입니다.
  노드 이름                                 상태
  ------------------------------------  ------------------------
  rac2                                  성공
  rac1                                  성공

루트 사용자의 기본 그룹에 대한 일관성 검사를 성공했습니다.

NTP(Network Time Protocol)를 사용하여 시계 동기화 검사를 시작하는 중...

NTP 구성 파일 검사가 시작되었습니다.
노드에서 NTP(Network Time Protocol) 구성 파일을 찾을 수 없습니다. 클러스터 노드에 대한 시간 동기화에 NTP 대신 Oracle CTSS(Cluster Time Synchronization Service)를 사용할 수 있습니다.
실행 중인 NTP 데몬 또는 서비스가 없는 것으로 확인되었습니다.

결과: NTP(Network Time Protocol)를 사용한 시계 동기화 검사를 성공했습니다.

코어 파일 이름 패턴 일관성을 검사하는 중...
코어 파일 이름 패턴 일관성 검사를 성공했습니다.

사용자 "oracle"이(가) "root" 그룹에 속해 있지 않은지 확인하는 중입니다.
  노드 이름         상태                        설명
  ------------  ------------------------  ------------------------
  rac2          성공                        존재하지 않음
  rac1          성공                        존재하지 않음
결과: 사용자 "oracle"이(가) "root" 그룹에 속해 있지 않습니다. 검사를 성공했습니다.

기본 사용자 파일 생성 마스크 검사
  노드 이름         사용 가능                     필수                        설명
  ------------  ------------------------  ------------------------  ----------
  rac2          0022                      0022                      성공
  rac1          0022                      0022                      성공
결과: 기본 사용자 파일 생성 마스크 검사를 성공했습니다.
노드에서 "/etc/resolv.conf" 파일의 일관성을 검사하는 중

"/etc/resolv.conf" 파일에서 'domain' 및 'search' 항목이 하나씩만 정의되어 있는지 검사하는 중
"/etc/resolv.conf" 파일에 'domain' 항목과 'search' 항목이 모두 정의되지 않았습니다.
"/etc/resolv.conf" 파일의 'domain' 항목이 노드에서 일치하는지 여부를 검사하는 중...
"/etc/resolv.conf" 파일의 'domain' 항목이 노드에서 일치합니다.
"/etc/resolv.conf" 파일의 'search' 항목이 노드에서 일치하는지 여부를 검사하는 중...
"/etc/resolv.conf" 파일의 'search' 항목이 노드에서 일치합니다.
"/etc/resolv.conf" 파일에서 'search' 항목이 하나만 정의되었는지 검사하는 중
모든 노드의 "/etc/resolv.conf" 파일에 'search' 항목이 하나만 정의되었습니다.
모든 노드에서 'search' 항목이 "rac2" 노드에서 발견된 것과 동일한 "localdomain"인지 검사하는 중
클러스터의 모든 노드에서 'search' 값이 동일합니다.
연결할 수 없는 노드에 대한 DNS 응답 시간을 검사하는 중
  노드 이름                                 상태
  ------------------------------------  ------------------------
  rac2                                  성공
  rac1                                  성공
모든 노드에서 연결할 수 없는 노드에 대한 DNS 응답 시간이 허용되는 제한 범위에 속합니다.

"/etc/resolv.conf" 파일이 노드에서 일치합니다.

검사: 시간대 일관성
결과: 시간대 일관성 검사를 성공했습니다.

모든 노드에서 클러스터 서비스 설정에 대한 사전 확인을 실패했습니다.


B) response 파일 생성

grid_install.rsp 파일 생성 (주요 파라미터 요약)
oracle.install.responseFileVersion=/oracle/install/rspfmt_crsinstall_response_schema_v11_2_0
ORACLE_HOSTNAME=rac1
INVENTORY_LOCATION=/u01/app/oraInventory
SELECTED_LANGUAGES=en,ko
oracle.install.option=CRS_CONFIG
ORACLE_BASE=/u01/app/oracle
ORACLE_HOME=/u01/app/11.2.0/grid
oracle.install.asm.OSDBA=asmdba
oracle.install.asm.OSOPER=asmoper
oracle.install.asm.OSASM=asmadmin
oracle.install.crs.config.gpnp.scanName=rac-scan
oracle.install.crs.config.gpnp.scanPort=1521
oracle.install.crs.config.clusterName=rac
oracle.install.crs.config.gpnp.configureGNS=false
oracle.install.crs.config.autoConfigureClusterNodeVIP=false
oracle.install.crs.config.clusterNodes=rac1:rac1-vip,rac2:rac2-vip
oracle.install.crs.config.networkInterfaceList=enp0s3:10.0.1.0:1,enp0s8:10.0.5.0:2
oracle.install.crs.config.storageOption=ASM_STORAGE
oracle.install.crs.config.sharedFileSystemStorage.votingDiskRedundancy=EXTERNAL
oracle.install.crs.config.sharedFileSystemStorage.ocrRedundancy=EXTERNAL
oracle.install.crs.config.useIPMI=false
oracle.install.asm.SYSASMPassword=oracle_4U
oracle.install.asm.diskGroup.name=DATA
oracle.install.asm.diskGroup.redundancy=EXTERNAL
oracle.install.asm.diskGroup.AUSize=1
oracle.install.asm.diskGroup.disks=/dev/raw/raw6
oracle.install.asm.diskGroup.diskDiscoveryString=/dev/raw/raw*
oracle.install.asm.monitorPassword=oracle_4U
oracle.install.asm.upgradeASM=false
oracle.installer.autoupdates.option=SKIP_UPDATES
[+ASM1:/home/oracle]> cat > ~/grid_install.rsp
###############################################################################
## Copyright(c) Oracle Corporation 1998,2013. All rights reserved.           ##
##                                                                           ##
## Specify values for the variables listed below to customize                ##
## your installation.                                                        ##
##                                                                           ##
## Each variable is associated with a comment. The comment                   ##
## can help to populate the variables with the appropriate                   ##
## values.                                                                   ##
##                                                                           ##
## IMPORTANT NOTE: This file contains plain text passwords and               ##
## should be secured to have read permission only by oracle user             ##
## or db administrator who owns this installation.                           ##
##                                                                           ##
###############################################################################

###############################################################################
##                                                                           ##
## Instructions to fill this response file                                   ##
## To install and configure 'Grid Infrastructure for Cluster'                ##
##  - Fill out sections A,B,C,D,E,F and G                                    ##
##  - Fill out section G if OCR and voting disk should be placed on ASM      ##
##                                                                           ##
## To install and configure 'Grid Infrastructure for Standalone server'      ##
##  - Fill out sections A,B and G                                           ##
##                                                                           ##
## To install software for 'Grid Infrastructure'                             ##
##  - Fill out sections A,B and C                                           ##
##                                                                           ##
## To upgrade clusterware and/or Automatic storage management of earlier     ##
## releases                                                                  ##
##  - Fill out sections A,B,C,D and H                                       ##
##                                                                           ##
###############################################################################
#------------------------------------------------------------------------------
# Do not change the following system generated value.
#------------------------------------------------------------------------------
oracle.install.responseFileVersion=/oracle/install/rspfmt_crsinstall_response_schema_v11_2_0

###############################################################################
#                                                                             #
#                          SECTION A - BASIC                                  #
#                                                                             #
###############################################################################

#-------------------------------------------------------------------------------
# Specify the hostname of the system as set during the install. It can be used
# to force the installation to use an alternative hostname rather than using the
# first hostname found on the system. (e.g., for systems with multiple hostnames
# and network interfaces)
#-------------------------------------------------------------------------------
ORACLE_HOSTNAME=rac1

#-------------------------------------------------------------------------------
# Specify the location which holds the inventory files.
# This is an optional parameter if installing on
# Windows based Operating System.
#-------------------------------------------------------------------------------
INVENTORY_LOCATION=/u01/app/oraInventory

#-------------------------------------------------------------------------------
# Specify the languages in which the components will be installed.
#
# en   : English                  ja   : Japanese
# fr   : French                   ko   : Korean
# ar   : Arabic                   es   : Latin American Spanish
# bn   : Bengali                  lv   : Latvian
# pt_BR: Brazilian Portuguese     lt   : Lithuanian
# bg   : Bulgarian                ms   : Malay
# fr_CA: Canadian French          es_MX: Mexican Spanish
# ca   : Catalan                  no   : Norwegian
# hr   : Croatian                 pl   : Polish
# cs   : Czech                    pt   : Portuguese
# da   : Danish                   ro   : Romanian
# nl   : Dutch                    ru   : Russian
# ar_EG: Egyptian                 zh_CN: Simplified Chinese
# en_GB: English (Great Britain)  sk   : Slovak
# et   : Estonian                 sl   : Slovenian
# fi   : Finnish                  es_ES: Spanish
# de   : German                   sv   : Swedish
# el   : Greek                    th   : Thai
# iw   : Hebrew                   zh_TW: Traditional Chinese
# hu   : Hungarian                tr   : Turkish
# is   : Icelandic                uk   : Ukrainian
# in   : Indonesian               vi   : Vietnamese
# it   : Italian
#
# all_langs   : All languages
#
# Specify value as the following to select any of the languages.
# Example : SELECTED_LANGUAGES=en,fr,ja
#
# Specify value as the following to select all the languages.
# Example : SELECTED_LANGUAGES=all_langs
#-------------------------------------------------------------------------------
SELECTED_LANGUAGES=en,ko

#-------------------------------------------------------------------------------
# Specify the installation option.
# Allowed values: CRS_CONFIG or HA_CONFIG or UPGRADE or CRS_SWONLY
#   - CRS_CONFIG : To configure Grid Infrastructure for cluster
#   - HA_CONFIG  : To configure Grid Infrastructure for stand alone server
#   - UPGRADE    : To upgrade clusterware software of earlier release
#   - CRS_SWONLY : To install clusterware files only (can be configured for cluster
#                or stand alone server later)
#-------------------------------------------------------------------------------
oracle.install.option=CRS_CONFIG

#-------------------------------------------------------------------------------
# Specify the complete path of the Oracle Base.
#-------------------------------------------------------------------------------
ORACLE_BASE=/u01/app/oracle

#-------------------------------------------------------------------------------
# Specify the complete path of the Oracle Home.
#-------------------------------------------------------------------------------
ORACLE_HOME=/u01/app/11.2.0/grid

################################################################################
#                                                                              #
#                              SECTION B - GROUPS                              #
#                                                                              #
#   The following three groups need to be assigned for all GI installations.  #
#   OSDBA and OSOPER can be the same or different.  OSASM must be different    #
#   than the other two.                                                        #
#   The value to be specified for OSDBA, OSOPER and OSASM group is only for    #
#   Unix based Operating System.                                               #
#                                                                              #
################################################################################
#-------------------------------------------------------------------------------
# The DBA_GROUP is the OS group which is to be granted OSDBA privileges.
#-------------------------------------------------------------------------------
oracle.install.asm.OSDBA=asmdba

#-------------------------------------------------------------------------------
# The OPER_GROUP is the OS group which is to be granted OSOPER privileges.
# The value to be specified for OSOPER group is optional.
#-------------------------------------------------------------------------------
oracle.install.asm.OSOPER=asmoper

#-------------------------------------------------------------------------------
# The OSASM_GROUP is the OS group which is to be granted OSASM privileges. This
# must be different than the previous two.
#-------------------------------------------------------------------------------
oracle.install.asm.OSASM=asmadmin

################################################################################
#                                                                              #
#                           SECTION C - SCAN                                   #
#                                                                              #
################################################################################
#-------------------------------------------------------------------------------
# Specify a name for SCAN
#-------------------------------------------------------------------------------
oracle.install.crs.config.gpnp.scanName=rac-scan

#-------------------------------------------------------------------------------
# Specify a unused port number for SCAN service
#-------------------------------------------------------------------------------
oracle.install.crs.config.gpnp.scanPort=1521

################################################################################
#                                                                              #
#                           SECTION D - CLUSTER & GNS                          #
#                                                                              #
################################################################################
#-------------------------------------------------------------------------------
# Specify a name for the Cluster you are creating.
#
# The maximum length allowed for clustername is 15 characters. The name can be
# any combination of lower and uppercase alphabets (A - Z), (0 - 9), hyphen(-)
# and underscore(_).
#-------------------------------------------------------------------------------
oracle.install.crs.config.clusterName=rac

#-------------------------------------------------------------------------------
# Specify 'true' if you would like to configure Grid Naming Service(GNS), else
# specify 'false'
#-------------------------------------------------------------------------------
oracle.install.crs.config.gpnp.configureGNS=false

#-------------------------------------------------------------------------------
# Applicable only if you choose to configure GNS
# Specify the GNS subdomain and an unused virtual hostname for GNS service
# Additionally you may also specify if VIPs have to be autoconfigured
#
# Value for oracle.install.crs.config.autoConfigureClusterNodeVIP should be true
# if GNS is being configured(oracle.install.crs.config.gpnp.configureGNS), false
# otherwise.
#-------------------------------------------------------------------------------
oracle.install.crs.config.gpnp.gnsSubDomain=
oracle.install.crs.config.gpnp.gnsVIPAddress=
oracle.install.crs.config.autoConfigureClusterNodeVIP=false

#-------------------------------------------------------------------------------
# Specify a list of public node names, and virtual hostnames that have to be
# part of the cluster.
#
# The list should a comma-separated list of nodes.  Each entry in the list
# should be a colon-separated string that contains 2 fields.
#
# The fields should be ordered as follows:
# 1. The first field is for public node name.
# 2. The second field is for virtual host name
#    (specify as AUTO if you have chosen 'auto configure for VIP'
#     i.e. autoConfigureClusterNodeVIP=true)
#
# Example: oracle.install.crs.config.clusterNodes=node1:node1-vip,node2:node2-vip
#-------------------------------------------------------------------------------
oracle.install.crs.config.clusterNodes=rac1:rac1-vip,rac2:rac2-vip

#-------------------------------------------------------------------------------
# The value should be a comma separated strings where each string is as shown below
# InterfaceName:SubnetAddress:InterfaceType
# where InterfaceType can be either "1", "2", or "3"
# (1 indicates public, 2 indicates private, and 3 indicates the interface is not used)
#
# For example: eth0:140.87.24.0:1,eth1:10.2.1.0:2,eth2:140.87.52.0:3
#
#-------------------------------------------------------------------------------
oracle.install.crs.config.networkInterfaceList=enp0s3:10.0.1.0:1,enp0s8:10.0.5.0:2

################################################################################
#                                                                              #
#                              SECTION E - STORAGE                             #
#                                                                              #
################################################################################

#-------------------------------------------------------------------------------
# Specify the type of storage to use for Oracle Cluster Registry(OCR) and Voting
# Disks files
#   - ASM_STORAGE
#   - FILE_SYSTEM_STORAGE
#-------------------------------------------------------------------------------
oracle.install.crs.config.storageOption=ASM_STORAGE

#-------------------------------------------------------------------------------
# THIS PROPERTY NEEDS TO BE FILLED ONLY IN CASE OF WINDOWS INSTALL.
# Specify a comma separated list of strings where each string is as shown below:
# Disk Number:Partition Number:Drive Letter:Format Option
# The Disk Number and Partition Number should refer to the location which has to
# be formatted. The Drive Letter should refer to the drive letter that has to be
# assigned. "Format Option" can be either of the following -
#   - SOFTWARE : Format to place software binaries.
#   - DATA     : Format to place the OCR/VDSK files.
#
# For example: 1:2:P:DATA,1:3:Q:SOFTWARE,1:4:R:DATA,1:5:S:DATA
#
#-------------------------------------------------------------------------------
oracle.install.crs.config.sharedFileSystemStorage.diskDriveMapping=

#-------------------------------------------------------------------------------
# These properties are applicable only if FILE_SYSTEM_STORAGE is chosen for
# storing OCR and voting disk
# Specify the location(s) and redundancy for OCR and voting disks
# In case of windows, mention the drive location that is specified to be
# formatted for DATA in the above property.
# Multiple locations can be specified, separated by commas
# Redundancy can be one of these:
#     EXTERNAL - one(1) location should be specified for OCR and voting disk
#     NORMAL - three(3) locations should be specified for OCR and voting disk
# Example:
#     For Unix based Operating System:
#     oracle.install.crs.config.sharedFileSystemStorage.votingDiskLocations=/oradbocfs/storage/vdsk1,/oradbocfs/storage/vdsk2,/oradbocfs/storage/vdsk3
#     oracle.install.crs.config.sharedFileSystemStorage.ocrLocations=/oradbocfs/storage/ocr1,/oradbocfs/storage/ocr2,/oradbocfs/storage/ocr3
#     For Windows based Operating System:
#     oracle.install.crs.config.sharedFileSystemStorage.votingDiskLocations=P:\vdsk1,R:\vdsk2,S:\vdsk3
#     oracle.install.crs.config.sharedFileSystemStorage.ocrLocations=P:\ocr1,R:\ocr2,S:\ocr3
#-------------------------------------------------------------------------------
oracle.install.crs.config.sharedFileSystemStorage.votingDiskLocations=
oracle.install.crs.config.sharedFileSystemStorage.votingDiskRedundancy=EXTERNAL
oracle.install.crs.config.sharedFileSystemStorage.ocrLocations=
oracle.install.crs.config.sharedFileSystemStorage.ocrRedundancy=EXTERNAL

################################################################################
#                                                                              #
#                               SECTION F - IPMI                               #
#                                                                              #
################################################################################

#-------------------------------------------------------------------------------
# Specify 'true' if you would like to configure Intelligent Power Management interface
# (IPMI), else specify 'false'
#-------------------------------------------------------------------------------
oracle.install.crs.config.useIPMI=false

#-------------------------------------------------------------------------------
# Applicable only if you choose to configure IPMI
# i.e. oracle.install.crs.config.useIPMI=true
# Specify the username and password for using IPMI service
#-------------------------------------------------------------------------------
oracle.install.crs.config.ipmi.bmcUsername=
oracle.install.crs.config.ipmi.bmcPassword=

################################################################################
#                                                                              #
#                                SECTION G - ASM                               #
#                                                                              #
################################################################################
#-------------------------------------------------------------------------------
# Specify a password for SYSASM user of the ASM instance
#-------------------------------------------------------------------------------
oracle.install.asm.SYSASMPassword=oracle_4U

#-------------------------------------------------------------------------------
# The ASM DiskGroup
#
# Example: oracle.install.asm.diskGroup.name=data
#
#-------------------------------------------------------------------------------
oracle.install.asm.diskGroup.name=DATA

#-------------------------------------------------------------------------------
# Redundancy level to be used by ASM.
# It can be one of the following
#   - NORMAL
#   - HIGH
#   - EXTERNAL
# Example: oracle.install.asm.diskGroup.redundancy=NORMAL
#
#-------------------------------------------------------------------------------
oracle.install.asm.diskGroup.redundancy=EXTERNAL

#-------------------------------------------------------------------------------
# Allocation unit size to be used by ASM.
# It can be one of the following values
#   - 1
#   - 2
#   - 4
#   - 8
#   - 16
#   - 32
#   - 64
# Example: oracle.install.asm.diskGroup.AUSize=4
# size unit is MB
#
#-------------------------------------------------------------------------------
oracle.install.asm.diskGroup.AUSize=1

#-------------------------------------------------------------------------------
# List of disks to create a ASM DiskGroup
#
# Example:
#     For Unix based Operating System:
#     oracle.install.asm.diskGroup.disks=/oracle/asm/disk1,/oracle/asm/disk2
#     For Windows based Operating System:
#     oracle.install.asm.diskGroup.disks=\\.\ORCLDISKDATA0,\\.\ORCLDISKDATA1
#
#-------------------------------------------------------------------------------
oracle.install.asm.diskGroup.disks=/dev/raw/raw6

#-------------------------------------------------------------------------------
# The disk discovery string to be used to discover the disks used create a ASM DiskGroup
#
# Example:
#     For Unix based Operating System:
#     oracle.install.asm.diskGroup.diskDiscoveryString=/oracle/asm/*
#     For Windows based Operating System:
#     oracle.install.asm.diskGroup.diskDiscoveryString=\\.\ORCLDISK*
#
#-------------------------------------------------------------------------------
oracle.install.asm.diskGroup.diskDiscoveryString=/dev/raw/raw*

#-------------------------------------------------------------------------------
# oracle.install.asm.monitorPassword=password
#-------------------------------------------------------------------------------
oracle.install.asm.monitorPassword=oracle_4U

################################################################################
#                                                                              #
#                             SECTION H - UPGRADE                              #
#                                                                              #
################################################################################
#-------------------------------------------------------------------------------
# Specify nodes for Upgrade.
# For upgrade on Windows, installer overrides the value of this parameter to include
# all the nodes of the cluster. However, the stack is upgraded one node at a time.
# Hence, this parameter may be left blank for Windows.
# Example: oracle.install.crs.upgrade.clusterNodes=node1,node2
#-------------------------------------------------------------------------------
oracle.install.crs.upgrade.clusterNodes=

#-------------------------------------------------------------------------------
# For RAC-ASM only. oracle.install.asm.upgradeASM=true/false
# Value should be 'true' while upgrading Cluster ASM of version 11gR2(11.2.0.1.0) and above
#-------------------------------------------------------------------------------
oracle.install.asm.upgradeASM=false
#------------------------------------------------------------------------------
# Specify the auto-updates option. It can be one of the following:
#   - MYORACLESUPPORT_DOWNLOAD
#   - OFFLINE_UPDATES
#   - SKIP_UPDATES
#------------------------------------------------------------------------------
oracle.installer.autoupdates.option=SKIP_UPDATES

#------------------------------------------------------------------------------
# In case MYORACLESUPPORT_DOWNLOAD option is chosen, specify the location where
# the updates are to be downloaded.
# In case OFFLINE_UPDATES option is chosen, specify the location where the updates
# are present.
#------------------------------------------------------------------------------
oracle.installer.autoupdates.downloadUpdatesLoc=

#------------------------------------------------------------------------------
# Specify the My Oracle Support Account Username which has the patches download privileges
# to be used for software updates.
#
#  Example   : AUTOUPDATES_MYORACLESUPPORT_USERNAME=abc@oracle.com
#------------------------------------------------------------------------------
AUTOUPDATES_MYORACLESUPPORT_USERNAME=
#------------------------------------------------------------------------------
# Specify the My Oracle Support Account Username password which has the patches download privileges
# to be used for software updates.
#
# Example    : AUTOUPDATES_MYORACLESUPPORT_PASSWORD=password
#------------------------------------------------------------------------------
AUTOUPDATES_MYORACLESUPPORT_PASSWORD=

#------------------------------------------------------------------------------
# Specify the Proxy server name. Length should be greater than zero.
#
# Example    : PROXY_HOST=proxy.domain.com
#------------------------------------------------------------------------------
PROXY_HOST=

#------------------------------------------------------------------------------
# Specify the proxy port number. Should be Numeric and at least 2 chars.
#
# Example    : PROXY_PORT=25
#------------------------------------------------------------------------------
PROXY_PORT=
#------------------------------------------------------------------------------
# Specify the proxy user name. Leave PROXY_USER and PROXY_PWD
# blank if your proxy server requires no authentication.
#
# Example    : PROXY_USER=username
#------------------------------------------------------------------------------
PROXY_USER=
#------------------------------------------------------------------------------
# Specify the proxy password. Leave PROXY_USER and PROXY_PWD
# blank if your proxy server requires no authentication.
#
# Example    : PROXY_PWD=password
#------------------------------------------------------------------------------
PROXY_PWD=

#------------------------------------------------------------------------------
# Specify the proxy realm.
#
# Example    : PROXY_REALM=metalink
#------------------------------------------------------------------------------
PROXY_REALM=
^C


C) 설치

Grid 설치 수행
grid_env
cd <Grid 설치 파일 압축 해제 경로>
./runInstaller -ignorePrereq -silent -force -responseFile ~/grid_install.rsp
[racdb1:/home/oracle]> grid_env

[+ASM1:/home/oracle]> cd /media/sf_oracle/11.2/grid

[+ASM1:/media/sf_oracle/11.2/grid]> ./runInstaller -ignorePrereq -silent -force -responseFile ~/grid_install.rsp
Oracle Universal Installer 시작 중...

임시 공간 확인 중: 120MB 이상이어야 합니다..   실제 87429MB    성공
스왑 공간 확인 중: 150MB 이상이어야 합니다..   실제 10239MB    성공
다음에서 Oracle Universal Installer의 시작을 준비하는 중 /tmp/OraInstall2020-04-14_08-37-43AM. 기다리십시오.[+ASM1:/media/sf_oracle/11.2/grid]> 다음 위치에서 이 설치 세션의 로그를 찾을 수 있습니다.
 /u01/app/oraInventory/logs/installActions2020-04-14_08-37-43AM.log
Oracle Grid Infrastructure 11g의 설치을(를) 성공했습니다.
자세한 내용은 '/u01/app/oraInventory/logs/silentInstall2020-04-14_08-37-43AM.log'을(를) 확인하십시오.

루트 사용자로 다음 스크립트를 실행합니다.
        1. /u01/app/oraInventory/orainstRoot.sh
        2. /u01/app/11.2.0/grid/root.sh

다음 노드에서 /u01/app/oraInventory/orainstRoot.sh을(를) 실행하십시오.
[rac1, rac2]
다음 노드에서 /u01/app/11.2.0/grid/root.sh을(를) 실행하십시오.
[rac1, rac2]

설치 사용자로 다음 스크립트를 실행하여 구성을 완료하십시오.
        1. /u01/app/11.2.0/grid/cfgtoollogs/configToolAllCommands RESPONSE_FILE=<response_file>

        참고:
        1. 이 스크립트는 설치 프로그램이 실행된 동일한 호스트에서 실행해야 합니다.
        2. 이 스크립트에는 비밀번호가 필요한 Configuration Assistant에 대한 작은 비밀번호 속성 파일이 필요합니다(설치 설명서 참조).


Successfully Setup Software.


D) 18370031 패치

$GRID_HOME의 OPatch 최신 버전으로 교체
$GRID_HOME/OPatch/opatch version
mv $GRID_HOME/OPatch $GRID_HOME/OPatch.old
unzip <OPatch 파일 다운로드 경로>/p6880880_112000_Linux-x86-64.zip -d $GRID_HOME
chown -R oracle:oinstall $GRID_HOME/OPatch
$GRID_HOME/OPatch/opatch version
[root@rac1 ~]# $GRID_HOME/OPatch/opatch version
OPatch Version: 11.2.0.3.4

OPatch succeeded.

[root@rac1 ~]# mv $GRID_HOME/OPatch $GRID_HOME/OPatch.old

[root@rac1 ~]# unzip /media/sf_oracle/11.2/p6880880_112000_Linux-x86-64.zip -d $GRID_HOME
Archive:  /media/sf_oracle/11.2/p6880880_112000_Linux-x86-64.zip
   creating: /u01/app/11.2.0/grid/OPatch/
... << 중략 >> ...
  inflating: /u01/app/11.2.0/grid/OPatch/operr
  
[root@rac1 ~]# chown -R oracle:oinstall $GRID_HOME/OPatch

[root@rac1 ~]# $GRID_HOME/OPatch/opatch version
OPatch Version: 11.2.0.3.23

OPatch succeeded.
[root@rac2 ~]# $GRID_HOME/OPatch/opatch version
OPatch Version: 11.2.0.3.4

OPatch succeeded.

[root@rac2 ~]# mv $GRID_HOME/OPatch $GRID_HOME/OPatch.old

[root@rac2 ~]# unzip /media/sf_oracle/11.2/p6880880_112000_Linux-x86-64.zip -d $GRID_HOME
Archive:  /media/sf_oracle/11.2/p6880880_112000_Linux-x86-64.zip
   creating: /u01/app/11.2.0/grid/OPatch/
... << 중략 >> ...
  inflating: /u01/app/11.2.0/grid/OPatch/operr
  
[root@rac2 ~]# chown -R oracle:oinstall $GRID_HOME/OPatch

[root@rac2 ~]# $GRID_HOME/OPatch/opatch version
OPatch Version: 11.2.0.3.23

OPatch succeeded.

리눅스 7에 Grid Infrastructure 11.2.0.4를 구성하려면 18370031 패치를 적용한 후에 root 스크립트를 수행해야 정상적으로 구축할 수 있습니다.

먼저 Grid와 함께 설치된 OPatch를 최신 버전으로 올려줘야 합니다.

18370031 패치 적용
grid_env
$GRID_HOME/OPatch/opatch napply -local <패치 파일 압축 해제 경로>/18370031
$GRID_HOME/OPatch/opatch lspatches
[racdb1:/home/oracle]> grid_env

[+ASM1:/home/oracle]> $GRID_HOME/OPatch/opatch napply -local /media/sf_oracle/11.2/18370031
Oracle Interim 패치 설치 프로그램 버전 11.2.0.3.23
Copyright (c) 2020, Oracle Corporation.  All rights reserved.


Oracle 홈: /u01/app/11.2.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/11.2.0/grid/oraInst.loc
OPatch 버전: 11.2.0.3.23
OUI 버전: 11.2.0.4.0
로그 파일 위치: /u01/app/11.2.0/grid/cfgtoollogs/opatch/opatch2020-04-14_08-46-21오전_1.log

Verifying environment and performing prerequisite checks...
OPatch continues with these patches:   18370031

계속하겠습니까? [y|n]
y
User Responded with: Y
All checks passed.

로컬 시스템의 이 ORACLE_HOME에서 실행 중인 Oracle 인스턴스를 종료하십시오.
(Oracle 홈 = '/u01/app/11.2.0/grid')


로컬 시스템이 패치할 준비가 되었습니까? [y|n]
y
User Responded with: Y
Backing up files...
OH '/u01/app/11.2.0/grid'에 Interim 패치 '18370031'을(를) 적용하는 중

oracle.crs, 11.2.0.4.0 구성요소를 패치하는 중...
Patch 18370031 successfully applied.
Log file location: /u01/app/11.2.0/grid/cfgtoollogs/opatch/opatch2020-04-14_08-46-21오전_1.log

OPatch succeeded.

[+ASM1:/home/oracle]> $GRID_HOME/OPatch/opatch lspatches
18370031;Grid Infrastructure Patch Set Update : 11.2.0.4.x (gibugno)

OPatch succeeded.
[racdb2:/home/oracle]> grid_env

[+ASM2:/home/oracle]> $GRID_HOME/OPatch/opatch napply -local /media/sf_oracle/11.2/18370031
Oracle Interim 패치 설치 프로그램 버전 11.2.0.3.23
Copyright (c) 2020, Oracle Corporation.  All rights reserved.


Oracle 홈: /u01/app/11.2.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/11.2.0/grid/oraInst.loc
OPatch 버전: 11.2.0.3.23
OUI 버전: 11.2.0.4.0
로그 파일 위치: /u01/app/11.2.0/grid/cfgtoollogs/opatch/opatch2020-04-14_08-47-46오전_1.log

Verifying environment and performing prerequisite checks...
OPatch continues with these patches:   18370031

계속하겠습니까? [y|n]
y
User Responded with: Y
All checks passed.

로컬 시스템의 이 ORACLE_HOME에서 실행 중인 Oracle 인스턴스를 종료하십시오.
(Oracle 홈 = '/u01/app/11.2.0/grid')


로컬 시스템이 패치할 준비가 되었습니까? [y|n]
y
User Responded with: Y
Backing up files...
OH '/u01/app/11.2.0/grid'에 Interim 패치 '18370031'을(를) 적용하는 중

oracle.crs, 11.2.0.4.0 구성요소를 패치하는 중...
Patch 18370031 successfully applied.
Log file location: /u01/app/11.2.0/grid/cfgtoollogs/opatch/opatch2020-04-14_08-47-46오전_1.log

OPatch succeeded.

[+ASM2:/home/oracle]> $GRID_HOME/OPatch/opatch lspatches
18370031;Grid Infrastructure Patch Set Update : 11.2.0.4.x (gibugno)

OPatch succeeded.


E) orainstRoot.sh 수행

모든 노드에서 순차적으로 orainstRoot.sh 실행
/u01/app/oraInventory/orainstRoot.sh
[root@rac1 ~]# /u01/app/oraInventory/orainstRoot.sh
다음 권한 변경 중/u01/app/oraInventory.
그룹에 대한 읽기, 쓰기 권한을 추가하는 중입니다.
월드에 대한 읽기, 쓰기, 실행 권한을 제거하는 중입니다.

그룹 이름 변경 중 /u01/app/oraInventory 대상 oinstall.
스크립트 실행이 완료되었습니다.
[root@rac2 ~]# /u01/app/oraInventory/orainstRoot.sh
다음 권한 변경 중/u01/app/oraInventory.
그룹에 대한 읽기, 쓰기 권한을 추가하는 중입니다.
월드에 대한 읽기, 쓰기, 실행 권한을 제거하는 중입니다.

그룹 이름 변경 중 /u01/app/oraInventory 대상 oinstall.
스크립트 실행이 완료되었습니다.


F) root.sh 수행

모든 노드에서 순차적으로 root.sh 실행
/u01/app/11.2.0/grid/root.sh
[root@rac1 ~]# /u01/app/11.2.0/grid/root.sh
Check /u01/app/11.2.0/grid/install/root_rac1_2020-04-14_08-50-22.log for the output of root script
[root@rac1 ~]# cat /u01/app/11.2.0/grid/install/root_rac1_2020-04-14_08-50-22.log
Performing root user operation for Oracle 11g

The following environment variables are set as:
    ORACLE_OWNER= oracle
    ORACLE_HOME=  /u01/app/11.2.0/grid
   Copying dbhome to /usr/local/bin ...
   Copying oraenv to /usr/local/bin ...
   Copying coraenv to /usr/local/bin ...


Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Using configuration parameter file: /u01/app/11.2.0/grid/crs/install/crsconfig_params
Creating trace directory
User ignored Prerequisites during installation
Installing Trace File Analyzer
OLR initialization - successful
  root wallet
  root wallet cert
  root cert export
  peer wallet
  profile reader wallet
  pa wallet
  peer wallet keys
  pa wallet keys
  peer cert request
  pa cert request
  peer cert
  pa cert
  peer root cert TP
  profile reader root cert TP
  pa root cert TP
  peer pa cert TP
  pa peer cert TP
  profile reader pa cert TP
  profile reader peer cert TP
  peer user cert
  pa user cert
Adding Clusterware entries to oracle-ohasd.service
CRS-2672: Attempting to start 'ora.mdnsd' on 'rac1'
CRS-2676: Start of 'ora.mdnsd' on 'rac1' succeeded
CRS-2672: Attempting to start 'ora.gpnpd' on 'rac1'
CRS-2676: Start of 'ora.gpnpd' on 'rac1' succeeded
CRS-2672: Attempting to start 'ora.cssdmonitor' on 'rac1'
CRS-2672: Attempting to start 'ora.gipcd' on 'rac1'
CRS-2676: Start of 'ora.cssdmonitor' on 'rac1' succeeded
CRS-2676: Start of 'ora.gipcd' on 'rac1' succeeded
CRS-2672: Attempting to start 'ora.cssd' on 'rac1'
CRS-2672: Attempting to start 'ora.diskmon' on 'rac1'
CRS-2676: Start of 'ora.diskmon' on 'rac1' succeeded
CRS-2676: Start of 'ora.cssd' on 'rac1' succeeded

ASM이 성공적으로 생성되고 시작되었습니다.

디스크 그룹 DATA이(가) 성공적으로 생성되었습니다.

clscfg: -install mode specified
Successfully accumulated necessary OCR keys.
Creating OCR keys for user 'root', privgrp 'root'..
Operation successful.
CRS-4256: Updating the profile
Successful addition of voting disk 3b8bcee73b224f67bfbd573f9b6d644d.
Successfully replaced voting disk group with +DATA.
CRS-4256: Updating the profile
CRS-4266: Voting file(s) successfully replaced
##  STATE    File Universal Id                File Name Disk group
--  -----    -----------------                --------- ---------
 1. ONLINE   3b8bcee73b224f67bfbd573f9b6d644d (/dev/raw/raw6) [DATA]
Located 1 voting disk(s).
CRS-2672: Attempting to start 'ora.asm' on 'rac1'
CRS-2676: Start of 'ora.asm' on 'rac1' succeeded
CRS-2672: Attempting to start 'ora.DATA.dg' on 'rac1'
CRS-2676: Start of 'ora.DATA.dg' on 'rac1' succeeded
Configure Oracle Grid Infrastructure for a Cluster ... succeeded
[root@rac2 ~]# /u01/app/11.2.0/grid/root.sh
Check /u01/app/11.2.0/grid/install/root_rac2_2020-04-14_08-59-24.log for the output of root script
[root@rac2 ~]# cat /u01/app/11.2.0/grid/install/root_rac2_2020-04-14_08-59-24.log
Performing root user operation for Oracle 11g

The following environment variables are set as:
    ORACLE_OWNER= oracle
    ORACLE_HOME=  /u01/app/11.2.0/grid
   Copying dbhome to /usr/local/bin ...
   Copying oraenv to /usr/local/bin ...
   Copying coraenv to /usr/local/bin ...


Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Using configuration parameter file: /u01/app/11.2.0/grid/crs/install/crsconfig_params
Creating trace directory
User ignored Prerequisites during installation
Installing Trace File Analyzer
OLR initialization - successful
Adding Clusterware entries to oracle-ohasd.service
CRS-4402: CSS 데몬이 배타 모드에서 시작되었지만 활성 CSS 데몬이 노드 rac1, 번호 1에서 발견되어 종료 중입니다.
An active cluster was found during exclusive startup, restarting to join the cluster
Configure Oracle Grid Infrastructure for a Cluster ... succeeded


G) configToolAllCommands 수행

$GRID_HOME/cfgtoollogs/cfgrsp.properties 파일 생성
oracle.assistants.asm|S_ASMPASSWORD=oracle_4U
oracle.assistants.asm|S_ASMMONITORPASSWORD=oracle_4U
[+ASM1:/home/oracle]> cat $GRID_HOME/cfgtoollogs/cfgrsp.properties
oracle.assistants.asm|S_ASMPASSWORD=oracle_4U
oracle.assistants.asm|S_ASMMONITORPASSWORD=oracle_4U
^C


configToolAllCommands 실행
cd $GRID_HOME/cfgtoollogs
chmod 600 cfgrsp.properties
./configToolAllCommands RESPONSE_FILE=./cfgrsp.properties
[+ASM1:/home/oracle]> cd $GRID_HOME/cfgtoollogs

[+ASM1:/u01/app/11g/grid/cfgtoollogs]> chmod 600 cfgrsp.properties

[+ASM1:/u01/app/11.2.0/grid/cfgtoollogs]> ./configToolAllCommands RESPONSE_FILE=./cfgrsp.properties
Setting the invPtrLoc to /u01/app/11.2.0/grid/oraInst.loc

perform - 작업 시작 중인 모드: configure

2020. 4. 14 오전 9:08:55 oracle.install.driver.oui.config.GenericInternalPlugIn invoke
정보: Executing ASMCA
2020. 4. 14 오전 9:08:55 oracle.install.driver.oui.config.GenericInternalPlugIn invoke
정보: Command /u01/app/11.2.0/grid/bin/asmca -silent -postConfigureASM -oui_internal
2020. 4. 14 오전 9:08:55 oracle.install.driver.oui.config.GenericInternalPlugIn handleProcess
정보: ... GenericInternalPlugIn.handleProcess() entered.
2020. 4. 14 오전 9:08:55 oracle.install.driver.oui.config.GenericInternalPlugIn handleProcess
정보: ... GenericInternalPlugIn: getting configAssistantParmas.
2020. 4. 14 오전 9:08:55 oracle.install.driver.oui.config.GenericInternalPlugIn handleProcess
정보: ... GenericInternalPlugIn: checking secretArguments.
2020. 4. 14 오전 9:08:55 oracle.install.driver.oui.config.GenericInternalPlugIn handleProcess
정보: ... GenericInternalPlugIn: starting read loop.
2020. 4. 14 오전 9:09:02 oracle.install.driver.oui.config.GenericInternalPlugIn handleProcess
정보: Read: SYS_PASSWORD_PROMPT
2020. 4. 14 오전 9:09:02 oracle.install.driver.oui.config.GenericInternalPlugIn handleProcess
정보: Processing: SYS_PASSWORD_PROMPT for argument tag -sysAsmPassword
2020. 4. 14 오전 9:09:02 oracle.install.driver.oui.config.GenericInternalPlugIn handleProcess
정보: Read: ASMSNMP_PASSWORD_PROMPT
2020. 4. 14 오전 9:09:02 oracle.install.driver.oui.config.GenericInternalPlugIn handleProcess
정보: Processing: ASMSNMP_PASSWORD_PROMPT for argument tag -asmMonitorPassword
2020. 4. 14 오전 9:09:02 oracle.install.driver.oui.config.GenericInternalPlugIn handleProcess
정보: End of argument passing to stdin
2020. 4. 14 오전 9:09:03 oracle.install.driver.oui.config.GenericInternalPlugIn handleProcess
정보: Read:
2020. 4. 14 오전 9:09:03 oracle.install.driver.oui.config.GenericInternalPlugIn handleProcess
정보: Read: PostConfiguration이 성공적으로 완료되었습니다.
2020. 4. 14 오전 9:09:03 oracle.install.driver.oui.config.GenericInternalPlugIn handleProcess
정보: Read:

perform - 작업이 완료된 모드: configure

로그 파일을 확인할 수 있습니다./u01/app/11.2.0/grid/cfgtoollogs/oui/configActions2020-04-14_09-07-49-AM.log


Grid 설치 및 클러스터 구축 결과 확인
crsctl stat res -t
[root@rac1 ~]# crsctl stat res -t
--------------------------------------------------------------------------------
NAME           TARGET  STATE        SERVER                   STATE_DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.DATA.dg
               ONLINE  ONLINE       rac1
               ONLINE  ONLINE       rac2
ora.LISTENER.lsnr
               ONLINE  ONLINE       rac1
               ONLINE  ONLINE       rac2
ora.asm
               ONLINE  ONLINE       rac1                     Started
               ONLINE  ONLINE       rac2                     Started
ora.gsd
               OFFLINE OFFLINE      rac1
               OFFLINE OFFLINE      rac2
ora.net1.network
               ONLINE  ONLINE       rac1
               ONLINE  ONLINE       rac2
ora.ons
               ONLINE  ONLINE       rac1
               ONLINE  ONLINE       rac2
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       rac2
ora.LISTENER_SCAN2.lsnr
      1        ONLINE  ONLINE       rac1
ora.LISTENER_SCAN3.lsnr
      1        ONLINE  ONLINE       rac1
ora.cvu
      1        ONLINE  ONLINE       rac1
ora.oc4j
      1        ONLINE  ONLINE       rac1
ora.rac1.vip
      1        ONLINE  ONLINE       rac1
ora.rac2.vip
      1        ONLINE  ONLINE       rac2
ora.scan1.vip
      1        ONLINE  ONLINE       rac2
ora.scan2.vip
      1        ONLINE  ONLINE       rac1
ora.scan3.vip
      1        ONLINE  ONLINE       rac1


2. Raw Device 적용

OCR 디스크 Raw Device로 변경
ocrconfig -add /dev/raw/raw1
ocrconfig -add /dev/raw/raw2
ocrconfig -delete +DATA
ocrcheck
[root@rac1 ~]# ocrcheck
Status of Oracle Cluster Registry is as follows :
         Version                  :          3
         Total space (kbytes)     :     262120
         Used space (kbytes)      :       2664
         Available space (kbytes) :     259456
         ID                       :  934357259
         Device/File Name         :      +DATA
                                    Device/File integrity check succeeded

                                    Device/File not configured

                                    Device/File not configured

                                    Device/File not configured

                                    Device/File not configured

         Cluster registry integrity check succeeded

         Logical corruption check succeeded

[root@rac1 ~]# ocrconfig -add /dev/raw/raw1

[root@rac1 ~]# ocrconfig -add /dev/raw/raw2

[root@rac1 ~]# ocrconfig -delete +DATA

[root@rac1 ~]# ocrcheck
Status of Oracle Cluster Registry is as follows :
         Version                  :          3
         Total space (kbytes)     :     262120
         Used space (kbytes)      :       2664
         Available space (kbytes) :     259456
         ID                       :  934357259
         Device/File Name         : /dev/raw/raw1
                                    Device/File integrity check succeeded
         Device/File Name         : /dev/raw/raw2
                                    Device/File integrity check succeeded

                                    Device/File not configured

                                    Device/File not configured

                                    Device/File not configured

         Cluster registry integrity check succeeded

         Logical corruption check succeeded


Vote 디스크 Raw Device로 변경
crsctl replace votedisk /dev/raw/raw3
crsctl add css votedisk /dev/raw/raw4
crsctl add css votedisk /dev/raw/raw5
crsctl query css votedisk
[root@rac1 ~]# crsctl query css votedisk
##  STATE    File Universal Id                File Name Disk group
--  -----    -----------------                --------- ---------
 1. ONLINE   3b8bcee73b224f67bfbd573f9b6d644d (/dev/raw/raw6) [DATA]
Located 1 voting disk(s).

[root@rac1 ~]# crsctl replace votedisk /dev/raw/raw3
Now formatting voting disk: /dev/raw/raw3.
CRS-4256: Updating the profile
Successful addition of voting disk a4c3ccb126b64f4dbf3d89ae84d163a2.
Successful deletion of voting disk 3b8bcee73b224f67bfbd573f9b6d644d.
CRS-4256: Updating the profile
CRS-4266: Voting file(s) successfully replaced

[root@rac1 ~]# crsctl add css votedisk /dev/raw/raw4
Now formatting voting disk: /dev/raw/raw4.
CRS-4603: Successful addition of voting disk /dev/raw/raw4.

[root@rac1 ~]# crsctl add css votedisk /dev/raw/raw5
Now formatting voting disk: /dev/raw/raw5.
CRS-4603: Successful addition of voting disk /dev/raw/raw5.

[root@rac1 ~]# crsctl query css votedisk
##  STATE    File Universal Id                File Name Disk group
--  -----    -----------------                --------- ---------
 1. ONLINE   a4c3ccb126b64f4dbf3d89ae84d163a2 (/dev/raw/raw3) []
 2. ONLINE   31693ea2d7774f83bfd26b71d8173078 (/dev/raw/raw4) []
 3. ONLINE   7527b0194b634f7abfbc3c3501a8a6f4 (/dev/raw/raw5) []
Located 3 voting disk(s).


ASM 디스크 그룹 삭제 및 서비스 제거
srvctl stop diskgroup -g data
srvctl stop asm
srvctl remove diskgroup -g data
srvctl disable asm
srvctl remove asm
[root@rac1 ~]# srvctl stop diskgroup -g data

[root@rac1 ~]# srvctl stop asm

[root@rac1 ~]# srvctl remove diskgroup -g data

[root@rac1 ~]# srvctl disable asm

[root@rac1 ~]# srvctl remove asm


ASM 에서 회수한 영역 초기화
dd if=/dev/zero of=/dev/raw/raw6 bs=1024k count=1024
[root@rac1 ~]# dd if=/dev/zero of=/dev/raw/raw6 bs=1024k count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 3.98851 s, 269 MB/s


ASM 서비스 종료 확인
crsctl stat res -t
[root@rac1 ~]# crsctl stat res -t
--------------------------------------------------------------------------------
NAME           TARGET  STATE        SERVER                   STATE_DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.LISTENER.lsnr
               ONLINE  ONLINE       rac1
               ONLINE  ONLINE       rac2
ora.gsd
               OFFLINE OFFLINE      rac1
               OFFLINE OFFLINE      rac2
ora.net1.network
               ONLINE  ONLINE       rac1
               ONLINE  ONLINE       rac2
ora.ons
               ONLINE  ONLINE       rac1
               ONLINE  ONLINE       rac2
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       rac2
ora.LISTENER_SCAN2.lsnr
      1        ONLINE  ONLINE       rac1
ora.LISTENER_SCAN3.lsnr
      1        ONLINE  ONLINE       rac1
ora.cvu
      1        ONLINE  ONLINE       rac1
ora.oc4j
      1        ONLINE  ONLINE       rac1
ora.rac1.vip
      1        ONLINE  ONLINE       rac1
ora.rac2.vip
      1        ONLINE  ONLINE       rac2
ora.scan1.vip
      1        ONLINE  ONLINE       rac2
ora.scan2.vip
      1        ONLINE  ONLINE       rac1
ora.scan3.vip
      1        ONLINE  ONLINE       rac1


VII. 11g Database 설치

1. Database 소프트웨어 설치

A) Response 파일 생성

db_install.rsp 파일 생성 (주요 파라미터 요약)
oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=rac1
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/u01/app/oraInventory
SELECTED_LANGUAGES=en,ko
ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1
ORACLE_BASE=/u01/app/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.EEOptionsSelection=false
oracle.install.db.optionalComponents=oracle.rdbms.partitioning:11.2.0.4.0,oracle.oraolap:11.2.0.4.0,oracle.rdbms.dm:11.2.0.4.0,oracle.rdbms.dv:11.2.0.4.0,oracle.rdbms.lbac:11.2.0.4.0,oracle.rdbms.rat:11.2.0.4.0
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=oper
oracle.install.db.CLUSTER_NODES=rac1,rac2
oracle.install.db.isRACOneInstall=false
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false
DECLINE_SECURITY_UPDATES=true
[racdb1:/home/oracle]> cat > ~oracle/db_install.rsp
####################################################################
## Copyright(c) Oracle Corporation 1998,2013. All rights reserved.##
##                                                                ##
## Specify values for the variables listed below to customize     ##
## your installation.                                             ##
##                                                                ##
## Each variable is associated with a comment. The comment        ##
## can help to populate the variables with the appropriate        ##
## values.                                                        ##
##                                                                ##
## IMPORTANT NOTE: This file contains plain text passwords and    ##
## should be secured to have read permission only by oracle user  ##
## or db administrator who owns this installation.                ##
##                                                                ##
####################################################################

#------------------------------------------------------------------------------
# Do not change the following system generated value.
#------------------------------------------------------------------------------
oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0

#------------------------------------------------------------------------------
# Specify the installation option.
# It can be one of the following:
#   - INSTALL_DB_SWONLY
#   - INSTALL_DB_AND_CONFIG
#   - UPGRADE_DB
#-------------------------------------------------------------------------------
oracle.install.option=INSTALL_DB_SWONLY

#-------------------------------------------------------------------------------
# Specify the hostname of the system as set during the install. It can be used
# to force the installation to use an alternative hostname rather than using the
# first hostname found on the system. (e.g., for systems with multiple hostnames
# and network interfaces)
#-------------------------------------------------------------------------------
ORACLE_HOSTNAME=rac1

#-------------------------------------------------------------------------------
# Specify the Unix group to be set for the inventory directory.
#-------------------------------------------------------------------------------
UNIX_GROUP_NAME=oinstall

#-------------------------------------------------------------------------------
# Specify the location which holds the inventory files.
# This is an optional parameter if installing on
# Windows based Operating System.
#-------------------------------------------------------------------------------
INVENTORY_LOCATION=/u01/app/oraInventory

#-------------------------------------------------------------------------------
# Specify the languages in which the components will be installed.
#
# en   : English                  ja   : Japanese
# fr   : French                   ko   : Korean
# ar   : Arabic                   es   : Latin American Spanish
# bn   : Bengali                  lv   : Latvian
# pt_BR: Brazilian Portuguese     lt   : Lithuanian
# bg   : Bulgarian                ms   : Malay
# fr_CA: Canadian French          es_MX: Mexican Spanish
# ca   : Catalan                  no   : Norwegian
# hr   : Croatian                 pl   : Polish
# cs   : Czech                    pt   : Portuguese
# da   : Danish                   ro   : Romanian
# nl   : Dutch                    ru   : Russian
# ar_EG: Egyptian                 zh_CN: Simplified Chinese
# en_GB: English (Great Britain)  sk   : Slovak
# et   : Estonian                 sl   : Slovenian
# fi   : Finnish                  es_ES: Spanish
# de   : German                   sv   : Swedish
# el   : Greek                    th   : Thai
# iw   : Hebrew                   zh_TW: Traditional Chinese
# hu   : Hungarian                tr   : Turkish
# is   : Icelandic                uk   : Ukrainian
# in   : Indonesian               vi   : Vietnamese
# it   : Italian
#
# all_langs   : All languages
#
# Specify value as the following to select any of the languages.
# Example : SELECTED_LANGUAGES=en,fr,ja
#
# Specify value as the following to select all the languages.
# Example : SELECTED_LANGUAGES=all_langs
#------------------------------------------------------------------------------
SELECTED_LANGUAGES=en,ko

#------------------------------------------------------------------------------
# Specify the complete path of the Oracle Home.
#------------------------------------------------------------------------------
ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1

#------------------------------------------------------------------------------
# Specify the complete path of the Oracle Base.
#------------------------------------------------------------------------------
ORACLE_BASE=/u01/app/oracle

#------------------------------------------------------------------------------
# Specify the installation edition of the component.
#
# The value should contain only one of these choices.
#   - EE     : Enterprise Edition
#   - SE     : Standard Edition
#   - SEONE  : Standard Edition One
#   - PE     : Personal Edition (WINDOWS ONLY)
#------------------------------------------------------------------------------
oracle.install.db.InstallEdition=EE

#------------------------------------------------------------------------------
# This variable is used to enable or disable custom install and is considered
# only if InstallEdition is EE.
#
# true  : Components mentioned as part of 'optionalComponents' property
#         are considered for install.
# false : Value for 'optionalComponents' is not considered.
#------------------------------------------------------------------------------
oracle.install.db.EEOptionsSelection=false

#------------------------------------------------------------------------------
# This variable is considered only if 'EEOptionsSelection' is set to true.
#
# Description: List of Enterprise Edition Options you would like to enable.
#
#              The following choices are available. You may specify any
#              combination of these choices.  The components you choose should
#              be specified in the form "internal-component-name:version"
#              Below is a list of components you may specify to enable.
#
#              oracle.oraolap:11.2.0.4.0 - Oracle OLAP
#              oracle.rdbms.dm:11.2.0.4.0 - Oracle Data Mining
#              oracle.rdbms.dv:11.2.0.4.0 - Oracle Database Vault
#              oracle.rdbms.lbac:11.2.0.4.0 - Oracle Label Security
#              oracle.rdbms.partitioning:11.2.0.4.0 - Oracle Partitioning
#              oracle.rdbms.rat:11.2.0.4.0 - Oracle Real Application Testing
#------------------------------------------------------------------------------
oracle.install.db.optionalComponents=oracle.rdbms.partitioning:11.2.0.4.0,oracle.oraolap:11.2.0.4.0,oracle.rdbms.dm:11.2.0.4.0,oracle.rdbms.dv:11.2.0.4.0,oracle.rdbms.lbac:11.2.0.4.0,oracle.rdbms.rat:11.2.0.4.0

###############################################################################
#                                                                             #
# PRIVILEGED OPERATING SYSTEM GROUPS                                          #
# ------------------------------------------                                  #
# Provide values for the OS groups to which OSDBA and OSOPER privileges       #
# needs to be granted. If the install is being performed as a member of the   #
# group "dba", then that will be used unless specified otherwise below.       #
#                                                                             #
# The value to be specified for OSDBA and OSOPER group is only for UNIX based #
# Operating System.                                                           #
#                                                                             #
###############################################################################

#------------------------------------------------------------------------------
# The DBA_GROUP is the OS group which is to be granted OSDBA privileges.
#------------------------------------------------------------------------------
oracle.install.db.DBA_GROUP=dba

#------------------------------------------------------------------------------
# The OPER_GROUP is the OS group which is to be granted OSOPER privileges.
# The value to be specified for OSOPER group is optional.
#------------------------------------------------------------------------------
oracle.install.db.OPER_GROUP=oper

#------------------------------------------------------------------------------
# Specify the cluster node names selected during the installation.
# Example : oracle.install.db.CLUSTER_NODES=node1,node2
#------------------------------------------------------------------------------
oracle.install.db.CLUSTER_NODES=rac1,rac2

#------------------------------------------------------------------------------
# This variable is used to enable or disable RAC One Node install.
#
#   - true  : Value of RAC One Node service name is used.
#   - false : Value of RAC One Node service name is not used.
#
# If left blank, it will be assumed to be false
#------------------------------------------------------------------------------
oracle.install.db.isRACOneInstall=false

#------------------------------------------------------------------------------
# Specify the name for RAC One Node Service.
#------------------------------------------------------------------------------
oracle.install.db.racOneServiceName=

#------------------------------------------------------------------------------
# Specify the type of database to create.
# It can be one of the following:
#   - GENERAL_PURPOSE/TRANSACTION_PROCESSING
#   - DATA_WAREHOUSE
#------------------------------------------------------------------------------
oracle.install.db.config.starterdb.type=

#------------------------------------------------------------------------------
# Specify the Starter Database Global Database Name.
#------------------------------------------------------------------------------
oracle.install.db.config.starterdb.globalDBName=

#------------------------------------------------------------------------------
# Specify the Starter Database SID.
#------------------------------------------------------------------------------
oracle.install.db.config.starterdb.SID=

#------------------------------------------------------------------------------
# Specify the Starter Database character set.
#
# It can be one of the following:
# AL32UTF8, WE8ISO8859P15, WE8MSWIN1252, EE8ISO8859P2,
# EE8MSWIN1250, NE8ISO8859P10, NEE8ISO8859P4, BLT8MSWIN1257,
# BLT8ISO8859P13, CL8ISO8859P5, CL8MSWIN1251, AR8ISO8859P6,
# AR8MSWIN1256, EL8ISO8859P7, EL8MSWIN1253, IW8ISO8859P8,
# IW8MSWIN1255, JA16EUC, JA16EUCTILDE, JA16SJIS, JA16SJISTILDE,
# KO16MSWIN949, ZHS16GBK, TH8TISASCII, ZHT32EUC, ZHT16MSWIN950,
# ZHT16HKSCS, WE8ISO8859P9, TR8MSWIN1254, VN8MSWIN1258
#------------------------------------------------------------------------------
oracle.install.db.config.starterdb.characterSet=

#------------------------------------------------------------------------------
# This variable should be set to true if Automatic Memory Management
# in Database is desired.
# If Automatic Memory Management is not desired, and memory allocation
# is to be done manually, then set it to false.
#------------------------------------------------------------------------------
oracle.install.db.config.starterdb.memoryOption=

#------------------------------------------------------------------------------
# Specify the total memory allocation for the database. Value(in MB) should be
# at least 256 MB, and should not exceed the total physical memory available
# on the system.
# Example: oracle.install.db.config.starterdb.memoryLimit=512
#------------------------------------------------------------------------------
oracle.install.db.config.starterdb.memoryLimit=

#------------------------------------------------------------------------------
# This variable controls whether to load Example Schemas onto
# the starter database or not.
#------------------------------------------------------------------------------
oracle.install.db.config.starterdb.installExampleSchemas=

#------------------------------------------------------------------------------
# This variable includes enabling audit settings, configuring password profiles
# and revoking some grants to public. These settings are provided by default.
# These settings may also be disabled.
#------------------------------------------------------------------------------
oracle.install.db.config.starterdb.enableSecuritySettings=

###############################################################################
#                                                                             #
# Passwords can be supplied for the following four schemas in the             #
# starter database:                                                           #
#   SYS                                                                       #
#   SYSTEM                                                                    #
#   SYSMAN (used by Enterprise Manager)                                       #
#   DBSNMP (used by Enterprise Manager)                                       #
#                                                                             #
# Same password can be used for all accounts (not recommended)                #
# or different passwords for each account can be provided (recommended)       #
#                                                                             #
###############################################################################

#------------------------------------------------------------------------------
# This variable holds the password that is to be used for all schemas in the
# starter database.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.password.ALL=

#-------------------------------------------------------------------------------
# Specify the SYS password for the starter database.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.password.SYS=

#-------------------------------------------------------------------------------
# Specify the SYSTEM password for the starter database.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.password.SYSTEM=

#-------------------------------------------------------------------------------
# Specify the SYSMAN password for the starter database.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.password.SYSMAN=

#-------------------------------------------------------------------------------
# Specify the DBSNMP password for the starter database.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.password.DBSNMP=

#-------------------------------------------------------------------------------
# Specify the management option to be selected for the starter database.
# It can be one of the following:
#   - GRID_CONTROL
#   - DB_CONTROL
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.control=

#-------------------------------------------------------------------------------
# Specify the Management Service to use if Grid Control is selected to manage
# the database.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.gridcontrol.gridControlServiceURL=

###############################################################################
#                                                                             #
# SPECIFY BACKUP AND RECOVERY OPTIONS                                         #
# ------------------------------------                                        #
# Out-of-box backup and recovery options for the database can be mentioned    #
# using the entries below.                                                    #
#                                                                             #
###############################################################################

#------------------------------------------------------------------------------
# This variable is to be set to false if automated backup is not required. Else
# this can be set to true.
#------------------------------------------------------------------------------
oracle.install.db.config.starterdb.automatedBackup.enable=

#------------------------------------------------------------------------------
# Regardless of the type of storage that is chosen for backup and recovery, if
# automated backups are enabled, a job will be scheduled to run daily to backup
# the database. This job will run as the operating system user that is
# specified in this variable.
#------------------------------------------------------------------------------
oracle.install.db.config.starterdb.automatedBackup.osuid=

#-------------------------------------------------------------------------------
# Regardless of the type of storage that is chosen for backup and recovery, if
# automated backups are enabled, a job will be scheduled to run daily to backup
# the database. This job will run as the operating system user specified by the
# above entry. The following entry stores the password for the above operating
# system user.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.automatedBackup.ospwd=

#-------------------------------------------------------------------------------
# Specify the type of storage to use for the database.
# It can be one of the following:
#   - FILE_SYSTEM_STORAGE
#   - ASM_STORAGE
#------------------------------------------------------------------------------
oracle.install.db.config.starterdb.storageType=

#-------------------------------------------------------------------------------
# Specify the database file location which is a directory for datafiles, control
# files, redo logs.
#
# Applicable only when oracle.install.db.config.starterdb.storage=FILE_SYSTEM_STORAGE
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=

#-------------------------------------------------------------------------------
# Specify the backup and recovery location.
#
# Applicable only when oracle.install.db.config.starterdb.storage=FILE_SYSTEM_STORAGE
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation=

#-------------------------------------------------------------------------------
# Specify the existing ASM disk groups to be used for storage.
#
# Applicable only when oracle.install.db.config.starterdb.storage=ASM_STORAGE
#-------------------------------------------------------------------------------
oracle.install.db.config.asm.diskGroup=

#-------------------------------------------------------------------------------
# Specify the password for ASMSNMP user of the ASM instance.
#
# Applicable only when oracle.install.db.config.starterdb.storage=ASM_STORAGE
#-------------------------------------------------------------------------------
oracle.install.db.config.asm.ASMSNMPPassword=

#------------------------------------------------------------------------------
# Specify the My Oracle Support Account Username.
#
#  Example   : MYORACLESUPPORT_USERNAME=abc@oracle.com
#------------------------------------------------------------------------------
MYORACLESUPPORT_USERNAME=

#------------------------------------------------------------------------------
# Specify the My Oracle Support Account Username password.
#
# Example    : MYORACLESUPPORT_PASSWORD=password
#------------------------------------------------------------------------------
MYORACLESUPPORT_PASSWORD=

#------------------------------------------------------------------------------
# Specify whether to enable the user to set the password for
# My Oracle Support credentials. The value can be either true or false.
# If left blank it will be assumed to be false.
#
# Example    : SECURITY_UPDATES_VIA_MYORACLESUPPORT=true
#------------------------------------------------------------------------------
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false

#------------------------------------------------------------------------------
# Specify whether user doesn't want to configure Security Updates.
# The value for this variable should be true if you don't want to configure
# Security Updates, false otherwise.
#
# The value can be either true or false. If left blank it will be assumed
# to be false.
#`
# Example    : DECLINE_SECURITY_UPDATES=false
#------------------------------------------------------------------------------
DECLINE_SECURITY_UPDATES=true

#------------------------------------------------------------------------------
# Specify the Proxy server name. Length should be greater than zero.
#
# Example    : PROXY_HOST=proxy.domain.com
#------------------------------------------------------------------------------
PROXY_HOST=

#------------------------------------------------------------------------------
# Specify the proxy port number. Should be Numeric and at least 2 chars.
#
# Example    : PROXY_PORT=25
#------------------------------------------------------------------------------
PROXY_PORT=

#------------------------------------------------------------------------------
# Specify the proxy user name. Leave PROXY_USER and PROXY_PWD
# blank if your proxy server requires no authentication.
#
# Example    : PROXY_USER=username
#------------------------------------------------------------------------------
PROXY_USER=

#------------------------------------------------------------------------------
# Specify the proxy password. Leave PROXY_USER and PROXY_PWD
# blank if your proxy server requires no authentication.
#
# Example    : PROXY_PWD=password
#------------------------------------------------------------------------------
PROXY_PWD=

#------------------------------------------------------------------------------
# Specify the proxy realm. This value is used if auto-updates option is selected.
#
# Example    : PROXY_REALM=metalink
#------------------------------------------------------------------------------
PROXY_REALM=

#------------------------------------------------------------------------------
# Specify the Oracle Support Hub URL.
#
# Example    : COLLECTOR_SUPPORTHUB_URL=https://orasupporthub.company.com:8080/
#------------------------------------------------------------------------------
COLLECTOR_SUPPORTHUB_URL=

#------------------------------------------------------------------------------
# Specify the auto-updates option. It can be one of the following:
#   - MYORACLESUPPORT_DOWNLOAD
#   - OFFLINE_UPDATES
#   - SKIP_UPDATES
#------------------------------------------------------------------------------
oracle.installer.autoupdates.option=
#------------------------------------------------------------------------------
# In case MYORACLESUPPORT_DOWNLOAD option is chosen, specify the location where
# the updates are to be downloaded.
# In case OFFLINE_UPDATES option is chosen, specify the location where the updates
# are present.
#------------------------------------------------------------------------------
oracle.installer.autoupdates.downloadUpdatesLoc=
#------------------------------------------------------------------------------
# Specify the My Oracle Support Account Username which has the patches download privileges
# to be used for software updates.
#  Example   : AUTOUPDATES_MYORACLESUPPORT_USERNAME=abc@oracle.com
#------------------------------------------------------------------------------
AUTOUPDATES_MYORACLESUPPORT_USERNAME=

#------------------------------------------------------------------------------
# Specify the My Oracle Support Account Username password which has the patches download privileges
# to be used for software updates.
#
# Example    : AUTOUPDATES_MYORACLESUPPORT_PASSWORD=password
#------------------------------------------------------------------------------
AUTOUPDATES_MYORACLESUPPORT_PASSWORD=
^C


B) 설치 전 검증

사전 요구사항 검증
cd <Database 설치 파일 압축 해제 경로>/database
./runInstaller -silent -executePrereqs -responseFile ~/db_install.rsp
[racdb1:/home/oracle]> cd /media/sf_oracle/11.2/database

[racdb1:/media/sf_oracle/11.2/database]> ./runInstaller -silent -executePrereqs -responseFile ~/db_install.rsp
Oracle Universal Installer 시작 중...

임시 공간 확인 중: 120MB 이상이어야 합니다..   실제 82685MB    성공
스왑 공간 확인 중: 150MB 이상이어야 합니다..   실제 10239MB    성공
다음에서 Oracle Universal Installer의 시작을 준비하는 중 /tmp/OraInstall2020-04-14_09-32-44AM. 기다리십시오.[racdb1:/media/sf_oracle/11.2/database]> [WARNING] [INS-13014] 대상 환경이 일부 선택적 요구 사항을 충족하지 않습니다.
   원인: 일부 선택적 필요 조건이 충족되지 않았습니다. 자세한 내용은 로그를 참조하십시오. /u01/app/oraInventory/logs/installActions2020-04-14_09-32-44AM.log
   작업: /u01/app/oraInventory/logs/installActions2020-04-14_09-32-44AM.log 로그에서 실패한 필요 조건 검사 목록을 확인하십시오. 로그 파일 또는 설치 설명서에서 필요 조건을 충족하는 적합한 구성을 찾아 수동으로 오류를 수정하십시오.
[racdb1:/home/oracle]> cat /u01/app/oraInventory/logs/installActions2020-04-14_09-32-44AM.log
Using paramFile: /media/sf_oracle/11.2/database/install/oraparam.ini


Checking Temp space: must be greater than 120 MB.   Actual 82685 MB    Passed
Checking swap space: must be greater than 150 MB.   Actual 10239 MB    Passed

The commandline for unzip:
/media/sf_oracle/11.2/database/install/unzip -qqqo ../stage/Components/oracle.jdk/1.5.0.51.10/1/DataFiles/\*.jar -d /tmp/OraInstall2020-04-14_09-32-44AM
oraparam.ini에서 사용할 수 있는 umask 값 '022'을(를) 사용합니다.
... << 중략 >> ...
INFO: *********************************************
INFO: 패키지: pdksh-5.2.14: 시스템에서 "pdksh-5.2.14" 패키지를 사용할 수 있는지 여부를 테스트하는 필요 조건입니다.
INFO: Severity:IGNORABLE
INFO: OverallStatus:VERIFICATION_FAILED
INFO: -----------------End of failed Tasks List----------------
WARNING: [WARNING] [INS-13014] 대상 환경이 일부 선택적 요구 사항을 충족하지 않습니다.
   원인: 일부 선택적 필요 조건이 충족되지 않았습니다. 자세한 내용은 로그를 참조하십시오. /u01/app/oraInventory/logs/installActions2020-04-14_09-32-44AM.log
   작업: /u01/app/oraInventory/logs/installActions2020-04-14_09-32-44AM.log 로그에서 실패한 필요 조건 검사 목록을 확인하십시오. 로그 파일 또는 설치 설명서에서 필요 조건을 충족하는 적합한 구성을 찾아 수동으로 오류를 수정하십시오.
INFO: Advice is CONTINUE
INFO: Adding ExitStatus SUCCESS_WITH_WARNINGS to the exit status set
INFO: Finding the most appropriate exit status for the current application
INFO: Exit Status is 6
INFO: List of warnings encountered in this Application:
INFO: PREREQS_FAILED_WITH_WARNING
INFO: Shutdown Oracle Database 11g 릴리스 2 설치 프로그램

사전 검증 과정에서 리눅스 7에 포함되어 있지 않은 pdksh 패키지 관련 내용은 무시합니다.

하지만, 다른 실패한 사항은 확인하고 반드시 해결하는게 좋습니다.

C) 설치

Database 설치
cd <Database 설치 파일 압축 해제 경로>/database
./runInstaller -silent -ignorePrereq -ignoreSysPreReqs -responseFile ~/db_install.rsp
[racdb1:/home/oracle]> cd /media/sf_oracle/11.2/database

[racdb1:/media/sf_oracle/11.2/database]> ./runInstaller -silent -ignorePrereq -ignoreSysPreReqs -responseFile ~/db_install.rsp
Oracle Universal Installer 시작 중...

임시 공간 확인 중: 120MB 이상이어야 합니다..   실제 82673MB    성공
스왑 공간 확인 중: 150MB 이상이어야 합니다..   실제 10239MB    성공
다음에서 Oracle Universal Installer의 시작을 준비하는 중 /tmp/OraInstall2020-04-14_09-44-07AM. 기다리십시오.[racdb1:/media/sf_oracle/11.2/database]> 다음 위치에서 이 설치 세션의 로그를 찾을 수 있습니다.
 /u01/app/oraInventory/logs/installActions2020-04-14_09-44-07AM.log
Oracle Database 11g의 설치을(를) 성공했습니다.
자세한 내용은 '/u01/app/oraInventory/logs/silentInstall2020-04-14_09-44-07AM.log'을(를) 확인하십시오.

루트 사용자로 다음 스크립트를 실행합니다.
        1. /u01/app/oracle/product/11.2.0/db_1/root.sh

다음 노드에서 /u01/app/oracle/product/11.2.0/db_1/root.sh을(를) 실행하십시오.
[rac1, rac2]

Successfully Setup Software.


[racdb1:/home/oracle]> cat /u01/app/oraInventory/logs/silentInstall2020-04-14_09-44-07AM.log
silentInstall2020-04-14_09-44-07AM.log
sNativeVolName:/u01/app/oracle/product/11.2.0/db_1/
m_asNodeArray:rac1,rac2
m_sLocalNode:rac1
sNativeVolName:/tmp/
m_asNodeArray:rac1,rac2
m_sLocalNode:rac1
make 파일 ''/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk''의 ''agent nmhs'' 대상을 호출하는 중 오류가 발생했습니다. 자세한 내용은 ''/u01/app/oraInventory/logs/installActions2020-04-14_09-44-07AM.log''을(를) 참조하십시오
sNativeVolName:/u01/app/oracle/
m_asNodeArray:rac1,rac2
m_sLocalNode:rac1
sNativeVolName:/u01/app/oraInventory/
m_asNodeArray:rac1,rac2
m_sLocalNode:rac1
Oracle Database 11g의 설치을(를) 성공했습니다.
[racdb1:/home/oracle]> vi /u01/app/oraInventory/logs/installActions2020-04-14_09-44-07AM.log
... << 생략 >> ...
정보: 생성된 프로세스에서 출력 마침.
정보: ----------------------------------
정보: 작업에서 발생한 예외 사항: make
예외 사항 이름: MakefileException
예외 사항 문자열: make 파일 ''/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk''의 ''agent nmhs'' 대상을 호출하는 중 오류가 발생했습니다. 자세한 내용은 ''/u01/app/oraInventory/logs/installActions2020-04-14_09-44-07AM.log''을(를) >참조하십시오
예외 사항 심각도: 1
정보: Retry Handler not registered, using Super class functionality
make 파일 ''/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk''의 ''agent nmhs'' 대상을 호출하는 중 오류가 발생했습니다. 자세한 내용은 ''/u01/app/oraInventory/logs/installActions2020-04-14_09-44-07AM.log''을(를) 참조하십시오
정보: 호출 중 작업 unixActions10.2.0.3.0  make
        registerOnly = false
        installMakePath = /usr/bin/make
        installMakeFileName = /u01/app/oracle/product/11.2.0/db_1/rdbms/lib/ins_rdbms.mk
        installTarget = all_no_orcl
        undoMakeFileName =
        installArguments = ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1
        logFile = /u01/app/oracle/product/11.2.0/db_1/install/make.log
        undoTarget =
        progMsg = RDBMS 실행 파일 링크 중

정보: RDBMS 실행 파일 링크 중
정보: RDBMS 실행 파일 링크 중
정보: 이 make 작업의 출력은 ''/u01/app/oracle/product/11.2.0/db_1/install/make.log''에서도 사용할 수 있습니다.
... << 생략 >> ...

설치는 성공하였으나 ins_emagent.mk 오류가 발생한 것을 확인할 수 있습니다.

이는 리눅스 7에서 발생하는 오류이며, 해결이 가능한 문제입니다.

D) ins_emagent.mk 수정 및 make 재수행

vi $ORACLE_HOME/sysman/lib/ins_emagent.mk 로 모든 노드에서 수정
        $(MK_EMAGENT_NMECTL) -lnnz11
[racdb1:/u01/app/oracle/product/11.2.0/db_1/sysman/lib]> cat ins_emagent.mk | grep MK_EMAGENT_NMECTL
        $(MK_EMAGENT_NMECTL) -lnnz11


모든 노드에서 make 명령 수동 실행
cd $ORACLE_HOME/sysman/lib
make -f ins_emagent.mk agent
[racdb1:/home/oracle]> cd $ORACLE_HOME/sysman/lib

[racdb1:/u01/app/oracle/product/11.2.0/db_1/sysman/lib]> make -f ins_emagent.mk agent
ins_emagent.mk:113: warning: overriding recipe for target `nmosudo'
ins_emagent.mk:52: warning: ignoring old recipe for target `nmosudo'
make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk relink_sharedobj SHAREDOBJ=libnmemso
make[1]: Entering directory `/u01/app/oracle/product/11.2.0/db_1/sysman/lib'
/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk:113: warning: overriding recipe for target `nmosudo'
/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk:52: warning: ignoring old recipe for target `nmosudo'
... << 중략 >> ...
/bin/ld: warning: -z lazyload ignored.
/bin/ld: warning: -z nolazyload ignored.
make[1]: Leaving directory `/u01/app/oracle/product/11.2.0/db_1/sysman/lib'
rm -f /u01/app/oracle/product/11.2.0/db_1/bin/emtgtctl2
mv emtgtctl2 /u01/app/oracle/product/11.2.0/db_1/bin/emtgtctl2
/bin/chmod 6751 /u01/app/oracle/product/11.2.0/db_1/bin/emtgtctl2
Enterprise Manager native components relinked
IMPORTANT NOTE: To complete this Install/upgrade, please login as root and
                execute the root.sh script.
[racdb2:/home/oracle]> cd $ORACLE_HOME/sysman/lib

[racdb2:/u01/app/oracle/product/11.2.0/db_1/sysman/lib]> make -f ins_emagent.mk agent
ins_emagent.mk:113: warning: overriding recipe for target `nmosudo'
ins_emagent.mk:52: warning: ignoring old recipe for target `nmosudo'
make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk relink_sharedobj SHAREDOBJ=libnmemso
make[1]: Entering directory `/u01/app/oracle/product/11.2.0/db_1/sysman/lib'
/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk:113: warning: overriding recipe for target `nmosudo'
/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk:52: warning: ignoring old recipe for target `nmosudo'
... << 중략 >> ...
/bin/ld: warning: -z lazyload ignored.
/bin/ld: warning: -z nolazyload ignored.
make[1]: Leaving directory `/u01/app/oracle/product/11.2.0/db_1/sysman/lib'
rm -f /u01/app/oracle/product/11.2.0/db_1/bin/emtgtctl2
mv emtgtctl2 /u01/app/oracle/product/11.2.0/db_1/bin/emtgtctl2
/bin/chmod 6751 /u01/app/oracle/product/11.2.0/db_1/bin/emtgtctl2
Enterprise Manager native components relinked
IMPORTANT NOTE: To complete this Install/upgrade, please login as root and
                execute the root.sh script.

파일이 저장된 경로로 이동한 후 make 명령을 수동으로 수행합니다.

Database가 설치된 모든 노드에서 작업을 수행해야 합니다.

E) root.sh 수행

모든 노드에서 root.sh 스크립트 실행
/u01/app/oracle/product/11.2.0/db_1/root.sh
[root@rac1 ~]# /u01/app/oracle/product/11.2.0/db_1/root.sh
Check /u01/app/oracle/product/11.2.0/db_1/install/root_rac1_2020-04-14_10-02-36.log for the output of root script
[root@rac1 ~]# cat /u01/app/oracle/product/11.2.0/db_1/install/root_rac1_2020-04-14_10-02-36.log
Performing root user operation for Oracle 11g

The following environment variables are set as:
    ORACLE_OWNER= oracle
    ORACLE_HOME=  /u01/app/oracle/product/11.2.0/db_1
   Copying dbhome to /usr/local/bin ...
   Copying oraenv to /usr/local/bin ...
   Copying coraenv to /usr/local/bin ...

Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Finished product-specific root actions.
Finished product-specific root actions.
[root@rac2 ~]# /u01/app/oracle/product/11.2.0/db_1/root.sh
Check /u01/app/oracle/product/11.2.0/db_1/install/root_rac2_2020-04-14_10-02-39.log for the output of root script
[root@rac2 ~]# cat /u01/app/oracle/product/11.2.0/db_1/install/root_rac2_2020-04-14_10-02-39.log
Performing root user operation for Oracle 11g

The following environment variables are set as:
    ORACLE_OWNER= oracle
    ORACLE_HOME=  /u01/app/oracle/product/11.2.0/db_1
   Copying dbhome to /usr/local/bin ...
   Copying oraenv to /usr/local/bin ...
   Copying coraenv to /usr/local/bin ...

Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Finished product-specific root actions.
Finished product-specific root actions.


2. Database 생성

A) 작업 스크립트 준비

oracle 유저로 생성
mkdir -p $ORACLE_BASE/admin/[DB_NAME]/scripts
cd $ORACLE_BASE/admin/[DB_NAME]/scripts
[oracle@racdb1 ~]$ mkdir -p $ORACLE_BASE/admin/racdb/scripts
 
[oracle@racdb1 ~]$ cd $ORACLE_BASE/admin/racdb/scripts

스크립트 생성 디렉토리를 $ORACLE_BASE 경로 아래에 생성합니다.

작업할 스크립트를 모두 이곳에 저장합니다.

oracle 유저로 vi racDB.sh 생성
#!/bin/sh

OLD_UMASK=`umask`
umask 0027
mkdir -p [ORACLE_BASE]/admin/[DB_NAME]/adump
mkdir -p [ORACLE_BASE]/admin/[DB_NAME]/dpdump
mkdir -p [ORACLE_BASE]/admin/[DB_NAME]/hdump
mkdir -p [ORACLE_BASE]/admin/[DB_NAME]/pfile
mkdir -p [ORACLE_BASE]/cfgtoollogs/dbca/[DB_NAME]
ssh oracle@[HOST_NAME2] "mkdir -p [ORACLE_BASE]/admin/[DB_NAME]/adump"
ssh oracle@[HOST_NAME2] "mkdir -p [ORACLE_BASE]/admin/[DB_NAME]/dpdump"
ssh oracle@[HOST_NAME2] "mkdir -p [ORACLE_BASE]/admin/[DB_NAME]/hdump"
ssh oracle@[HOST_NAME2] "mkdir -p [ORACLE_BASE]/admin/[DB_NAME]/pfile"
ssh oracle@[HOST_NAME2] "mkdir -p [ORACLE_BASE]/cfgtoollogs/dbca/[DB_NAME]"
umask ${OLD_UMASK}
ORACLE_SID=[ORACLE_SID1]; export ORACLE_SID
PATH=$ORACLE_HOME/bin:$PATH; export PATH
echo You should Add this entry in the /etc/oratab: [ORACLE_SID]:[DB_HOME]:N
[DB_HOME]/bin/sqlplus /nolog @[ORACLE_BASE]/admin/[DB_NAME]/scripts/CreateRACDB.sql
#!/bin/sh
 
OLD_UMASK=`umask`
umask 0027
mkdir -p /u01/app/oracle/admin/racdb/adump
mkdir -p /u01/app/oracle/admin/racdb/dpdump
mkdir -p /u01/app/oracle/admin/racdb/hdump
mkdir -p /u01/app/oracle/admin/racdb/pfile
mkdir -p /u01/app/oracle/cfgtoollogs/dbca/racdb
ssh oracle@rac2 "mkdir -p /u01/app/oracle/admin/racdb/adump"
ssh oracle@rac2 "mkdir -p /u01/app/oracle/admin/racdb/dpdump"
ssh oracle@rac2 "mkdir -p /u01/app/oracle/admin/racdb/hdump"
ssh oracle@rac2 "mkdir -p /u01/app/oracle/admin/racdb/pfile"
ssh oracle@rac2 "mkdir -p /u01/app/oracle/cfgtoollogs/dbca/racdb":
umask ${OLD_UMASK}
ORACLE_SID=racdb1; export ORACLE_SID
PATH=$ORACLE_HOME/bin:$PATH; export PATH
echo You should Add this entry in the /etc/oratab: racdb:/u01/app/oracle/product/11.2.0/db_1:N
/u01/app/oracle/product/11.2.0/db_1/bin/sqlplus /nolog @/u01/app/oracle/admin/racdb/scripts/CreateRACDB.sql

데이터베이스 생성을 위해 필요한 디렉토리를 만들고 전체 작업을 수행할 메인 스크립트를 생성합니다.

괄호 [] 안에 표시된 변수 부분은 실제 설치할 환경에 해당되는 내용으로 수정하여 저장하도록 합니다.

[ORACLE_BASE] : 오라클 소프트웨어 설치 베이스 경로

[DB_NAME] : 데이터베이스 명

[HOST_NAME2] : 2번 노드의 서버 명

[ORACLE_SID1] : 1번 인스턴스 명

[ORACLE_SID] : 각 노드의 인스턴스 명

[DB_HOME] : 데이터베이스 소프트웨어 설치 경로

oracle 유저로 vi CreateRACDB.sql 생성
set verify off
ACCEPT sysPassword CHAR PROMPT 'Enter new password for SYS: ' HIDE
ACCEPT systemPassword CHAR PROMPT 'Enter new password for SYSTEM: ' HIDE
host [DB_HOME]/bin/orapwd file=[DB_HOME]/dbs/orapw[ORACLE_SID1] force=y
host ssh oracle@[HOST_NAME2] "[DB_HOME]/bin/orapwd file=[DB_HOME]/dbs/orapw[ORACLE_SID2] force=y"
host [GRID_HOME]/bin/setasmgidwrap o=[DB_HOME]/bin/oracle

host [DB_HOME]/bin/srvctl add database -d [DB_NAME] -o [DB_HOME] -p /dev/raw/raw20 -n [DB_NAME]
host [DB_HOME]/bin/srvctl add instance -d [DB_NAME] -i [ORACLE_SID1] -n [HOST_NAME1]
host [DB_HOME]/bin/srvctl add instance -d [DB_NAME] -i [ORACLE_SID2] -n [HOST_NAME2]
host [DB_HOME]/bin/srvctl disable database -d [DB_NAME]
@[ORACLE_BASE]/admin/[DB_NAME]/scripts/CreateDB.sql
@[ORACLE_BASE]/admin/[DB_NAME]/scripts/CreateDBFiles.sql
@[ORACLE_BASE]/admin/[DB_NAME]/scripts/CreateDBCatalog.sql
@[ORACLE_BASE]/admin/[DB_NAME]/scripts/CreateJVM.sql
@[ORACLE_BASE]/admin/[DB_NAME]/scripts/CreateClustDBViews.sql
@[ORACLE_BASE]/admin/[DB_NAME]/scripts/CreateOracleText.sql
@[ORACLE_BASE]/admin/[DB_NAME]/scripts/CreateXDB.sql
@[ORACLE_BASE]/admin/[DB_NAME]/scripts/CreateORDSchema.sql
@[ORACLE_BASE]/admin/[DB_NAME]/scripts/CreateMultiMedia.sql
@[ORACLE_BASE]/admin/[DB_NAME]/scripts/CreateOLAP.sql
@[ORACLE_BASE]/admin/[DB_NAME]/scripts/CreateSpatial.sql
@[ORACLE_BASE]/admin/[DB_NAME]/scripts/CreateEMRepos.sql
@[ORACLE_BASE]/admin/[DB_NAME]/scripts/CreateAPEX.sql
@[ORACLE_BASE]/admin/[DB_NAME]/scripts/CreateOWB.sql
host echo "SPFILE='/dev/raw/raw20'" > [DB_HOME]/dbs/init[ORACLE_SID1].ora
@[ORACLE_BASE]/admin/[DB_NAME]/scripts/lockAccount.sql
@[ORACLE_BASE]/admin/[DB_NAME]/scripts/postDBCreation.sql
set verify off
ACCEPT sysPassword CHAR PROMPT 'Enter new password for SYS: ' HIDE
ACCEPT systemPassword CHAR PROMPT 'Enter new password for SYSTEM: ' HIDE
host /u01/app/oracle/product/11.2.0/db_1/bin/orapwd file=/u01/app/oracle/product/11.2.0/db_1/dbs/orapwracdb1 force=y
host ssh oracle@rac2 "/u01/app/oracle/product/11.2.0/db_1/bin/orapwd file=/u01/app/oracle/product/11.2.0/db_1/dbs/orapwracdb2 force=y"
host /u01/app/11.2.0/grid/bin/setasmgidwrap o=/u01/app/oracle/product/11.2.0/db_1/bin/oracle
host /u01/app/oracle/product/11.2.0/db_1/bin/srvctl add database -d racdb -o /u01/app/oracle/product/11.2.0/db_1 -p /dev/raw/raw20 -n racdb
host /u01/app/oracle/product/11.2.0/db_1/bin/srvctl add instance -d racdb -i racdb1 -n rac1
host /u01/app/oracle/product/11.2.0/db_1/bin/srvctl add instance -d racdb -i racdb2 -n rac2
host /u01/app/oracle/product/11.2.0/db_1/bin/srvctl disable database -d racdb
@/u01/app/oracle/admin/racdb/scripts/CreateDB.sql
@/u01/app/oracle/admin/racdb/scripts/CreateDBFiles.sql
@/u01/app/oracle/admin/racdb/scripts/CreateDBCatalog.sql
@/u01/app/oracle/admin/racdb/scripts/CreateJVM.sql
@/u01/app/oracle/admin/racdb/scripts/CreateClustDBViews.sql
@/u01/app/oracle/admin/racdb/scripts/CreateOracleText.sql
@/u01/app/oracle/admin/racdb/scripts/CreateXDB.sql
--@/u01/app/oracle/admin/racdb/scripts/CreateORDSchema.sql
--@/u01/app/oracle/admin/racdb/scripts/CreateMultiMedia.sql
--@/u01/app/oracle/admin/racdb/scripts/CreateOLAP.sql
--@/u01/app/oracle/admin/racdb/scripts/CreateSpatial.sql
--@/u01/app/oracle/admin/racdb/scripts/CreateEMRepos.sql
--@/u01/app/oracle/admin/racdb/scripts/CreateAPEX.sql
--@/u01/app/oracle/admin/racdb/scripts/CreateOWB.sql
host echo "SPFILE='/dev/raw/raw20'" > /u01/app/oracle/product/11.2.0/db_1/dbs/initracdb1.ora
@/u01/app/oracle/admin/racdb/scripts/lockAccount.sql
@/u01/app/oracle/admin/racdb/scripts/postDBCreation.sql

서비스에 등록하고 각각의 SQL 스크립트를 수행할 스크립트를 생성합니다.

괄호 [] 안에 표시된 변수 부분은 실제 설치할 환경에 해당되는 내용으로 수정하여 저장하도록 합니다.

[DB_HOME]

[ORACLE_SID1]

[GRID_HOME]

[DB_NAME]

[ORACLE_SID1]

[HOST_NAME1]

[ORACLE_SID2]

[HOST_NAME2]

[ORACLE_BASE]

oracle 유저로 vi CreateDB.sql 생성
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool [ORACLE_BASE]/admin/[DB_NAME]/scripts/CreateDB.log append
startup nomount pfile="[ORACLE_BASE]/admin/[DB_NAME]/scripts/init.ora";
CREATE DATABASE "[DB_NAME]"
MAXINSTANCES 32
MAXLOGHISTORY 1
MAXLOGFILES 192
MAXLOGMEMBERS 3
MAXDATAFILES 1024
DATAFILE '/dev/raw/raw6' SIZE 699M AUTOEXTEND OFF EXTENT MANAGEMENT LOCAL
SYSAUX DATAFILE '/dev/raw/raw7' SIZE 699M AUTOEXTEND OFF
SMALLFILE DEFAULT TEMPORARY TABLESPACE TEMP TEMPFILE '/dev/raw/raw9' SIZE 699M AUTOEXTEND OFF
SMALLFILE UNDO TABLESPACE "UNDOTBS1" DATAFILE '/dev/raw/raw10' SIZE 699M AUTOEXTEND OFF
CHARACTER SET KO16MSWIN949
NATIONAL CHARACTER SET AL16UTF16
LOGFILE GROUP 1 ('/dev/raw/raw14') SIZE 199M,
GROUP 2 ('/dev/raw/raw15') SIZE 199M,
GROUP 3 ('/dev/raw/raw16') SIZE 199M
USER SYS IDENTIFIED BY "&&sysPassword" USER SYSTEM IDENTIFIED BY "&&systemPassword";
spool off
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool /u01/app/oracle/admin/racdb/scripts/CreateDB.log append
startup nomount pfile="/u01/app/oracle/admin/racdb/scripts/init.ora";
CREATE DATABASE "racdb"
MAXINSTANCES 32
MAXLOGHISTORY 1
MAXLOGFILES 192
MAXLOGMEMBERS 3
MAXDATAFILES 1024
DATAFILE '/dev/raw/raw6' SIZE 699M AUTOEXTEND OFF EXTENT MANAGEMENT LOCAL
SYSAUX DATAFILE '/dev/raw/raw7' SIZE 699M AUTOEXTEND OFF
SMALLFILE DEFAULT TEMPORARY TABLESPACE TEMP TEMPFILE '/dev/raw/raw9' SIZE 699M AUTOEXTEND OFF
SMALLFILE UNDO TABLESPACE "UNDOTBS1" DATAFILE '/dev/raw/raw10' SIZE 699M AUTOEXTEND OFF
CHARACTER SET KO16MSWIN949
NATIONAL CHARACTER SET AL16UTF16
LOGFILE GROUP 1 ('/dev/raw/raw14') SIZE 199M,
GROUP 2 ('/dev/raw/raw15') SIZE 199M,
GROUP 3 ('/dev/raw/raw16') SIZE 199M
USER SYS IDENTIFIED BY "&&sysPassword" USER SYSTEM IDENTIFIED BY "&&systemPassword";
spool off


oracle 유저로 vi CreateDBFiles.sql 생성
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool [ORACLE_BASE]/admin/[DB_NAME]/scripts/CreateDBFiles.log append
CREATE SMALLFILE UNDO TABLESPACE "UNDOTBS2" DATAFILE '/dev/raw/raw11' SIZE 699M AUTOEXTEND OFF;
CREATE SMALLFILE TABLESPACE "USERS" LOGGING DATAFILE '/dev/raw/raw8' SIZE 699M AUTOEXTEND OFF EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT  AUTO;
ALTER DATABASE DEFAULT TABLESPACE "USERS";
spool off
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool /u01/app/oracle/admin/racdb/scripts/CreateDBFiles.log append
CREATE SMALLFILE UNDO TABLESPACE "UNDOTBS2" DATAFILE '/dev/raw/raw11' SIZE 699M AUTOEXTEND OFF;
CREATE SMALLFILE TABLESPACE "USERS" LOGGING DATAFILE '/dev/raw/raw8' SIZE 699M AUTOEXTEND OFF EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT  AUTO;
ALTER DATABASE DEFAULT TABLESPACE "USERS";
spool off


oracle 유저로 vi CreateDBCatalog.sql 생성
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool [ORACLE_BASE]/admin/[DB_NAME]/scripts/CreateDBCatalog.log append
@[DB_HOME]/rdbms/admin/catalog.sql;
@[DB_HOME]/rdbms/admin/catblock.sql;
@[DB_HOME]/rdbms/admin/catproc.sql;
@[DB_HOME]/rdbms/admin/catoctk.sql;
@[DB_HOME]/rdbms/admin/owminst.plb;
connect "SYSTEM"/"&&systemPassword"
set echo on
@[DB_HOME]/sqlplus/admin/pupbld.sql;
@[DB_HOME]/sqlplus/admin/help/hlpbld.sql helpus.sql;
spool off
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool /u01/app/oracle/admin/racdb/scripts/CreateDBCatalog.log append
@/u01/app/oracle/product/11.2.0/db_1/rdbms/admin/catalog.sql;
@/u01/app/oracle/product/11.2.0/db_1/rdbms/admin/catblock.sql;
@/u01/app/oracle/product/11.2.0/db_1/rdbms/admin/catproc.sql;
@/u01/app/oracle/product/11.2.0/db_1/rdbms/admin/catoctk.sql;
@/u01/app/oracle/product/11.2.0/db_1/rdbms/admin/owminst.plb;
connect "SYSTEM"/"&&systemPassword"
set echo on
@/u01/app/oracle/product/11.2.0/db_1/sqlplus/admin/pupbld.sql;
@/u01/app/oracle/product/11.2.0/db_1/sqlplus/admin/help/hlpbld.sql helpus.sql;
spool off


oracle 유저로 vi CreateJVM.sql 생성
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool [ORACLE_BASE]/admin/[DB_NAME]/scripts/CreateJVM.log append
@[DB_HOME]/javavm/install/initjvm.sql;
@[DB_HOME]/xdk/admin/initxml.sql;
@[DB_HOME]/xdk/admin/xmlja.sql;
@[DB_HOME]/rdbms/admin/catjava.sql;
@[DB_HOME]/rdbms/admin/catxdbj.sql;
spool off
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool /u01/app/oracle/admin/racdb/scripts/CreateJVM.log append
@/u01/app/oracle/product/11.2.0/db_1/javavm/install/initjvm.sql;
@/u01/app/oracle/product/11.2.0/db_1/xdk/admin/initxml.sql;
@/u01/app/oracle/product/11.2.0/db_1/xdk/admin/xmlja.sql;
@/u01/app/oracle/product/11.2.0/db_1/rdbms/admin/catjava.sql;
@/u01/app/oracle/product/11.2.0/db_1/rdbms/admin/catxdbj.sql;
spool off


oracle 유저로 vi CreateClustDBViews.sql 생성
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool [ORACLE_BASE]/admin/[DB_NAME]/scripts/CreateClustDBViews.log append
@[DB_HOME]/rdbms/admin/catclust.sql;
spool off
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool /u01/app/oracle/admin/racdb/scripts/CreateClustDBViews.log append
@/u01/app/oracle/product/11.2.0/db_1/rdbms/admin/catclust.sql;
spool off


oracle 유저로 vi CreateOracleText.sql 생성
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool [ORACLE_BASE]/admin/[DB_NAME]/scripts/CreateOracleText.log append
@[DB_HOME]/ctx/admin/catctx [PASSWORD] SYSAUX TEMP NOLOCK;
connect "CTXSYS"/"[PASSWORD]"
@[DB_HOME]/ctx/admin/defaults/dr0defin.sql "KOREAN";
spool off
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool /u01/app/oracle/admin/racdb/scripts/CreateOracleText.log append
@/u01/app/oracle/product/11.2.0/db_1/ctx/admin/catctx change_on_install SYSAUX TEMP NOLOCK;
connect "CTXSYS"/"change_on_install"
@/u01/app/oracle/product/11.2.0/db_1/ctx/admin/defaults/dr0defin.sql "KOREAN";
spool off


oracle 유저로 vi CreateXDB.sql 생성
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool [ORACLE_BASE]/admin/[DB_NAME]/scripts/CreateXDB.log append
@[DB_HOME]/rdbms/admin/catqm.sql [PASSWORD] SYSAUX TEMP YES;
connect "SYS"/"&&sysPassword" as SYSDBA
@[DB_HOME]/rdbms/admin/catxdbj.sql;
@[DB_HOME]/rdbms/admin/catrul.sql;
spool off
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool /u01/app/oracle/admin/racdb/scripts/CreateXDB.log append
@/u01/app/oracle/product/11.2.0/db_1/rdbms/admin/catqm.sql change_on_install SYSAUX TEMP YES;
connect "SYS"/"&&sysPassword" as SYSDBA
@/u01/app/oracle/product/11.2.0/db_1/rdbms/admin/catxdbj.sql;
@/u01/app/oracle/product/11.2.0/db_1/rdbms/admin/catrul.sql;
spool off


oracle 유저로 vi CreateORDSchema.sql 생성
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool [ORACLE_BASE]/admin/[DB_NAME]/scripts/CreateORDSchema.log append
@[DB_HOME]/ord/admin/ordinst.sql SYSAUX SYSAUX;
spool off
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool /u01/app/oracle/admin/racdb/scripts/CreateORDSchema.log append
@/u01/app/oracle/product/11.2.0/db_1/ord/admin/ordinst.sql SYSAUX SYSAUX;
spool off


oracle 유저로 vi CreateMultiMedia.sql 생성
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool [ORACLE_BASE]/admin/[DB_NAME]/scripts/CreateMultiMedia.log append
@[DB_HOME]/ord/im/admin/iminst.sql;
spool off
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool /u01/app/oracle/admin/racdb/scripts/CreateMultiMedia.log append
@/u01/app/oracle/product/11.2.0/db_1/ord/im/admin/iminst.sql;
spool off


oracle 유저로 vi CreateOLAP.sql 생성
SET VERIFY OFF
set echo on
spool [ORACLE_BASE]/admin/[DB_NAME]/scripts/CreateOLAP.log append
connect "SYS"/"&&sysPassword" as SYSDBA
@[DB_HOME]/olap/admin/olap.sql SYSAUX TEMP;
spool off
SET VERIFY OFF
set echo on
spool /u01/app/oracle/admin/racdb/scripts/CreateOLAP.log append
connect "SYS"/"&&sysPassword" as SYSDBA
@/u01/app/oracle/product/11.2.0/db_1/olap/admin/olap.sql SYSAUX TEMP;
spool off


oracle 유저로 vi CreateSpatial.sql 생성
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool [ORACLE_BASE]/admin/[DB_NAME]/scripts/CreateSpatial.log append
@[DB_HOME]/md/admin/mdinst.sql;
spool off
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool /u01/app/oracle/admin/racdb/scripts/CreateSpatial.log append
@/u01/app/oracle/product/11.2.0/db_1/md/admin/mdinst.sql;
spool off


oracle 유저로 vi CreateEMRepos.sql 생성
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo off
spool [ORACLE_BASE]/admin/[DB_NAME]/scripts/CreateEMRepos.log append
@[DB_HOME]/sysman/admin/emdrep/sql/emreposcre [DB_HOME] SYSMAN &&sysPassword TEMP ON;
WHENEVER SQLERROR CONTINUE;
spool off
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo off
spool /u01/app/oracle/admin/racdb/scripts/CreateEMRepos.log append
@/u01/app/oracle/product/11.2.0/db_1/sysman/admin/emdrep/sql/emreposcre /u01/app/oracle/product/11.2.0/db_1 SYSMAN &&sysPassword TEMP ON;
WHENEVER SQLERROR CONTINUE;
spool off


oracle 유저로 vi CreateAPEX.sql 생성
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool [ORACLE_BASE]/admin/[DB_NAME]/scripts/CreateAPEX.log append
@[DB_HOME]/apex/catapx.sql [PASSWORD] SYSAUX SYSAUX TEMP /i/ NONE;
spool off
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool /u01/app/oracle/admin/racdb/scripts/CreateAPEX.log append
@/u01/app/oracle/product/11.2.0/db_1/apex/catapx.sql change_on_install SYSAUX SYSAUX TEMP /i/ NONE;
spool off


oracle 유저로 vi CreateOWB.sql 생성
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool [ORACLE_BASE]/admin/[DB_NAME]/scripts/CreateOWB.log append
@[DB_HOME]/owb/UnifiedRepos/cat_owb.sql SYSAUX TEMP;
spool off
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool /u01/app/oracle/admin/racdb/scripts/CreateOWB.log append
@/u01/app/oracle/product/11.2.0/db_1/owb/UnifiedRepos/cat_owb.sql SYSAUX TEMP;
spool off


oracle 유저로 vi lockAccount.sql 생성
SET VERIFY OFF
set echo on
spool [ORACLE_BASE]/admin/[DB_NAME]/scripts/lockAccount.log append
BEGIN
 FOR item IN ( SELECT USERNAME FROM DBA_USERS WHERE ACCOUNT_STATUS IN ('OPEN', 'LOCKED', 'EXPIRED') AND USERNAME NOT IN ('SYS','SYSTEM') )
 LOOP
  dbms_output.put_line('Locking and Expiring: ' || item.USERNAME);
  execute immediate 'alter user ' ||
         sys.dbms_assert.enquote_name(
         sys.dbms_assert.schema_name(
         item.USERNAME),false) || ' password expire account lock' ;
 END LOOP;
END;
/
spool off
SET VERIFY OFF
set echo on
spool /u01/app/oracle/admin/racdb/scripts/lockAccount.log append
BEGIN
 FOR item IN ( SELECT USERNAME FROM DBA_USERS WHERE ACCOUNT_STATUS IN ('OPEN', 'LOCKED', 'EXPIRED') AND USERNAME NOT IN ('SYS','SYSTEM') )
 LOOP
  dbms_output.put_line('Locking and Expiring: ' || item.USERNAME);
  execute immediate 'alter user ' ||
         sys.dbms_assert.enquote_name(
         sys.dbms_assert.schema_name(
         item.USERNAME),false) || ' password expire account lock' ;
 END LOOP;
END;
/
spool off


oracle 유저로 vi postDBCreation.sql 생성
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool [ORACLE_BASE]/admin/[DB_NAME]/scripts/postDBCreation.log append
execute DBMS_AUTO_TASK_ADMIN.disable();
@[DB_HOME]/rdbms/admin/catbundle.sql psu apply;
select 'utl_recomp_begin: ' || to_char(sysdate, 'HH:MI:SS') from dual;
execute utl_recomp.recomp_serial();
select 'utl_recomp_end: ' || to_char(sysdate, 'HH:MI:SS') from dual;
select group# from v$log where group# =3;
select group# from v$log where group# =4;
ALTER DATABASE ADD LOGFILE THREAD 2 GROUP 4 ('/dev/raw/raw17') SIZE 199M,
 GROUP 5 ('/dev/raw/raw18') SIZE 199M,
 GROUP 6 ('/dev/raw/raw19') SIZE 199M;
ALTER DATABASE ENABLE PUBLIC THREAD 2;
host echo cluster_database=true >>[ORACLE_BASE]/admin/[DB_NAME]/scripts/init.ora;
host echo remote_listener=[SCAN_NAME]:[LISTENER_PORT]>>[ORACLE_BASE]/admin/[DB_NAME]/scripts/init.ora;
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
create spfile='/dev/raw/raw20' FROM pfile='[ORACLE_BASE]/admin/[DB_NAME]/scripts/init.ora';
shutdown immediate;
host [DB_HOME]/bin/srvctl enable database -d [DB_NAME];
host [DB_HOME]/bin/srvctl start database -d [DB_NAME];
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
@[DB_HOME]/rdbms/admin/utlrp.sql;
spool off
exit;
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool /u01/app/oracle/admin/racdb/scripts/postDBCreation.log append
execute DBMS_AUTO_TASK_ADMIN.disable();
@/u01/app/oracle/product/11.2.0/db_1/rdbms/admin/catbundle.sql psu apply;
select 'utl_recomp_begin: ' || to_char(sysdate, 'HH:MI:SS') from dual;
execute utl_recomp.recomp_serial();
select 'utl_recomp_end: ' || to_char(sysdate, 'HH:MI:SS') from dual;
select group# from v$log where group# =3;
select group# from v$log where group# =4;
ALTER DATABASE ADD LOGFILE THREAD 2 GROUP 4 ('/dev/raw/raw17') SIZE 199M,
 GROUP 5 ('/dev/raw/raw18') SIZE 199M,
 GROUP 6 ('/dev/raw/raw19') SIZE 199M;
ALTER DATABASE ENABLE PUBLIC THREAD 2;
host echo cluster_database=true >>/u01/app/oracle/admin/racdb/scripts/init.ora;
host echo remote_listener=rac-scan:1521>>/u01/app/oracle/admin/racdb/scripts/init.ora;
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
create spfile='/dev/raw/raw20' FROM pfile='/u01/app/oracle/admin/racdb/scripts/init.ora';
shutdown immediate;
host /u01/app/oracle/product/11.2.0/db_1/bin/srvctl enable database -d racdb;
host /u01/app/oracle/product/11.2.0/db_1/bin/srvctl start database -d racdb;
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
@/u01/app/oracle/product/11.2.0/db_1/rdbms/admin/utlrp.sql;
spool off
exit;


oracle 유저로 vi init.ora 생성
db_block_size=8192
#cluster_database=true
#remote_listener=[SCAN_NAME]:[LISTENER_PORT]
open_cursors=300
db_domain=""
db_name="[DB_NAME]"
control_files=('/dev/raw/raw12','/dev/raw/raw13')
compatible=11.2.0.0.0
diagnostic_dest=[ORACLE_BASE]
memory_target=834666496
processes=150
audit_file_dest="[ORACLE_BASE]/admin/[DB_NAME]/adump"
audit_trail=db
remote_login_passwordfile=exclusive
 
[ORACLE_SID1].instance_number=1
[ORACLE_SID2].instance_number=2
[ORACLE_SID1].thread=1
[ORACLE_SID2].thread=2
[ORACLE_SID1].undo_tablespace=UNDOTBS1
[ORACLE_SID2].undo_tablespace=UNDOTBS2

db_recovery_file_dest_size=3G
db_recovery_file_dest='/FRA'
##############################################################################
# Copyright (c) 1991, 2001, 2002 by Oracle Corporation
##############################################################################
 
###########################################
# Cache and I/O
###########################################
db_block_size=8192
 
###########################################
# Cluster Database
###########################################
#cluster_database=true
#remote_listener=rac-scan:1521
 
###########################################
# Cursors and Library Cache
###########################################
open_cursors=300
 
###########################################
# Database Identification
###########################################
db_domain=""
db_name="racdb"
 
###########################################
# File Configuration
###########################################
control_files=('/dev/raw/raw12','/dev/raw/raw13')

###########################################
# Miscellaneous
###########################################
compatible=11.2.0.0.0
diagnostic_dest=/u01/app/oracle
sga_target=3g
pga_aggregate_target=1g
 
###########################################
# Processes and Sessions
###########################################
processes=150
 
###########################################
# Security and Auditing
###########################################
audit_file_dest="/u01/app/oracle/admin/racdb/adump"
audit_trail=db
remote_login_passwordfile=exclusive
 
racdb1.instance_number=1
racdb2.instance_number=2
racdb1.thread=1
racdb2.thread=2
racdb1.undo_tablespace=UNDOTBS1
racdb2.undo_tablespace=UNDOTBS2


oracle 유저로 수행
chmod 774 racDB.sh
ls -ltra | grep racDB.sh
[racdb1:/u01/app/oracle/admin/racdb/scripts]> ls -ltra | grep racDB.sh
-rwxr-x---. 1 oracle oinstall  891  4월 14 10:39 racDB.sh

[racdb1:/u01/app/oracle/admin/racdb/scripts]> chmod 774 racDB.sh

[racdb1:/u01/app/oracle/admin/racdb/scripts]> ls -ltra | grep racDB.sh
-rwxrwxr--. 1 oracle oinstall  891  4월 14 10:39 racDB.sh


root 유저로 1번 노드에서 수행
chmod 770 [ORACLE_BASE]/cfgtoollogs
[root@rac1 oracle]# chmod 770 /u01/app/oracle/cfgtoollogs


B) 데이터베이스 생성

oracle 유저에서 수행
cd $ORACLE_BASE/admin/[DB_NAME]/scripts
sh racDB.sh
[oracle@racdb1 ~]$ cd $ORACLE_BASE/admin/racdb/scripts

[racdb1:/u01/app/oracle/admin/racdb/scripts]> sh racDB.sh 
You should Add this entry in the /etc/oratab: racdb:/u01/app/oracle/product/11.2.0/db_1:N

SQL*Plus: Release 11.2.0.4.0 Production on Tue Apr 14 15:26:19 2020

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

Enter new password for SYS: 
Enter new password for SYSTEM: 

Enter password for SYS: 


Enter password for SYS: oracle

Unable to find error file.






Connected to an idle instance.
SQL> spool /u01/app/oracle/admin/racdb/scripts/CreateDB.log append
SQL> startup nomount pfile="/u01/app/oracle/admin/racdb/scripts/init.ora";
ORACLE instance started.

Total System Global Area 3206836224 bytes
Fixed Size    2257520 bytes
Variable Size  654314896 bytes
Database Buffers 2533359616 bytes
Redo Buffers   16904192 bytes
SQL> CREATE DATABASE "racdb"
  2  MAXINSTANCES 32
  3  MAXLOGHISTORY 1
  4  MAXLOGFILES 192
  5  MAXLOGMEMBERS 3
  6  MAXDATAFILES 1024
  7  DATAFILE '/dev/raw/raw6' SIZE 1000M AUTOEXTEND OFF EXTENT MANAGEMENT LOCAL
  8  SYSAUX DATAFILE '/dev/raw/raw7' SIZE 1000M AUTOEXTEND OFF
  9  SMALLFILE DEFAULT TEMPORARY TABLESPACE TEMP TEMPFILE '/dev/raw/raw9' SIZE 699M AUTOEXTEND OFF
 10  SMALLFILE UNDO TABLESPACE "UNDOTBS1" DATAFILE '/dev/raw/raw10' SIZE 1000M AUTOEXTEND OFF
 11  CHARACTER SET KO16MSWIN949
 12  NATIONAL CHARACTER SET AL16UTF16
 13  LOGFILE GROUP 1 ('/dev/raw/raw14') SIZE 199M,
 14  GROUP 2 ('/dev/raw/raw15') SIZE 199M,
 15  GROUP 3 ('/dev/raw/raw16') SIZE 199M
 16  USER SYS IDENTIFIED BY "&&sysPassword" USER SYSTEM IDENTIFIED BY "&&systemPassword";

Database created.
 
.... << 생략 >> ....
 
SQL>
SQL> Rem =====================================================================
SQL> Rem Run component validation procedure
SQL> Rem =====================================================================
SQL>
SQL> EXECUTE dbms_registry_sys.validate_components;

PL/SQL procedure successfully completed.

SQL> SET serveroutput off
SQL>
SQL>
SQL> Rem ===========================================================================
SQL> Rem END utlrp.sql
SQL> Rem ===========================================================================
SQL> spool off
not spooling currently
SQL> exit;
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, Real Application Clusters, OLAP, Data Mining
and Real Application Testing options


root 유저로 모든 노드의 vi /etc/oratab 에 추가
[ORACLE_SID]:[DB_HOME]:N
racdb1:/u01/app/oracle/product/11.2.0/db_1:N
racdb2:/u01/app/oracle/product/11.2.0/db_1:N


C) Archive 모드 전환

운영 모드 현황 조사
archive log list;
SQL> archive log list;
Database log mode              No Archive Mode
Automatic archival             Disabled
Archive destination            /u01/app/oracle/product/11.2.0/db_1/dbs/arch
Oldest online log sequence     17
Current log sequence           19


아카이브 경로 파라미터 조사
select NAME, DISPLAY_VALUE 
from V$PARAMETER 
where NAME like 'db_recovery_file_dest%';
SQL> col NAME form a30
SQL> col DISPLAY_VALUE form a15

SQL> select NAME, DISPLAY_VALUE from V$PARAMETER where NAME like 'db_recovery_file_dest%';

NAME                           DISPLAY_VALUE
------------------------------ ---------------
db_recovery_file_dest
db_recovery_file_dest_size     0


Archive 경로 관련 파라미터 변경
alter system set db_recovery_file_dest_size=4G sid='*';
alter system set db_recovery_file_dest='/FRA' sid='*';
SQL> alter system set db_recovery_file_dest_size=4G sid='*';

System altered.

SQL> alter system set db_recovery_file_dest='/FRA' sid='*';

System altered.


데이터베이스 중지 및 재기동
host srvctl stop database -d racdb -o immediate
conn / as sysdba
startup mount
SQL> host srvctl stop database -d racdb -o immediate

SQL> host crsctl stat res -t
--------------------------------------------------------------------------------
NAME           TARGET  STATE        SERVER                   STATE_DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.LISTENER.lsnr
               ONLINE  ONLINE       rac1
               ONLINE  ONLINE       rac2
ora.gsd
               OFFLINE OFFLINE      rac1
               OFFLINE OFFLINE      rac2
ora.net1.network
               ONLINE  ONLINE       rac1
               ONLINE  ONLINE       rac2
ora.ons
               ONLINE  ONLINE       rac1
               ONLINE  ONLINE       rac2
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       rac1
ora.LISTENER_SCAN2.lsnr
      1        ONLINE  ONLINE       rac2
ora.LISTENER_SCAN3.lsnr
      1        ONLINE  ONLINE       rac2
ora.cvu
      1        ONLINE  ONLINE       rac2
ora.oc4j
      1        ONLINE  ONLINE       rac2
ora.rac1.vip
      1        ONLINE  ONLINE       rac1
ora.rac2.vip
      1        ONLINE  ONLINE       rac2
ora.racdb.db
      1        OFFLINE OFFLINE                               Instance Shutdown
      2        OFFLINE OFFLINE                               Instance Shutdown
ora.scan1.vip
      1        ONLINE  ONLINE       rac1
ora.scan2.vip
      1        ONLINE  ONLINE       rac2
ora.scan3.vip
      1        ONLINE  ONLINE       rac2


SQL> conn / as sysdba
Connected to an idle instance.

SQL> startup mount
ORACLE instance started.

Total System Global Area 3206836224 bytes
Fixed Size                  2257520 bytes
Variable Size             721423760 bytes
Database Buffers         2466250752 bytes
Redo Buffers               16904192 bytes
Database mounted.


Archive 모드 전환 및 Database Open
alter database archivelog;
archive log list;
shutdown abort
host srvctl start database -d racdb
SQL> alter database archivelog;

Database altered.

SQL> archive log list;
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence     17
Next log sequence to archive   19
Current log sequence           19

SQL> shutdown abort
ORACLE instance shut down.

SQL> host srvctl start database -d racdb

SQL> host crsctl stat res -t
--------------------------------------------------------------------------------
NAME           TARGET  STATE        SERVER                   STATE_DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.LISTENER.lsnr
               ONLINE  ONLINE       rac1
               ONLINE  ONLINE       rac2
ora.gsd
               OFFLINE OFFLINE      rac1
               OFFLINE OFFLINE      rac2
ora.net1.network
               ONLINE  ONLINE       rac1
               ONLINE  ONLINE       rac2
ora.ons
               ONLINE  ONLINE       rac1
               ONLINE  ONLINE       rac2
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       rac1
ora.LISTENER_SCAN2.lsnr
      1        ONLINE  ONLINE       rac2
ora.LISTENER_SCAN3.lsnr
      1        ONLINE  ONLINE       rac2
ora.cvu
      1        ONLINE  ONLINE       rac2
ora.oc4j
      1        ONLINE  ONLINE       rac2
ora.rac1.vip
      1        ONLINE  ONLINE       rac1
ora.rac2.vip
      1        ONLINE  ONLINE       rac2
ora.racdb.db
      1        ONLINE  ONLINE       rac1                     Open
      2        ONLINE  ONLINE       rac2                     Open
ora.scan1.vip
      1        ONLINE  ONLINE       rac1
ora.scan2.vip
      1        ONLINE  ONLINE       rac2
ora.scan3.vip
      1        ONLINE  ONLINE       rac2

SQL> conn / as sysdba
Connected.

SQL> col INSTANCE_NAME form a30
SQL> col STATUS form a10
SQL> select INSTANCE_NAME, STATUS from GV$INSTANCE;

INSTANCE_NAME                  STATUS
------------------------------ ----------
racdb1                         OPEN
racdb2                         OPEN


VIII. 업그레이드 사전 준비

1. 11g PSU 패치

A) OPatch 업데이트

$DB_HOME의 OPatch 업데이트
$DB_HOME/OPatch/opatch version
mv $DB_HOME/OPatch $DB_HOME/OPatch.bak
cp -r $GRID_HOME/OPatch $DB_HOME
chown -R oracle:oinstall $DB_HOME/OPatch
$DB_HOME/OPatch/opatch version
[root@rac1 ~]# $GRID_HOME/OPatch/opatch version
OPatch Version: 11.2.0.3.23

OPatch succeeded.

[root@rac1 ~]# $DB_HOME/OPatch/opatch version
OPatch Version: 11.2.0.3.4

OPatch succeeded.

[root@rac1 ~]# mv $DB_HOME/OPatch $DB_HOME/OPatch.old

[root@rac1 ~]# cp -r $GRID_HOME/OPatch $DB_HOME

[root@rac1 ~]# chown -R oracle:oinstall $DB_HOME/OPatch

[root@rac1 ~]# $DB_HOME/OPatch/opatch version
OPatch Version: 11.2.0.3.23

OPatch succeeded.
[root@rac2 ~]# $GRID_HOME/OPatch/opatch version
OPatch Version: 11.2.0.3.23

OPatch succeeded.

[root@rac2 ~]# $DB_HOME/OPatch/opatch version
OPatch Version: 11.2.0.3.4

OPatch succeeded.

[root@rac2 ~]# mv $DB_HOME/OPatch $DB_HOME/OPatch.old

[root@rac2 ~]# cp -r $GRID_HOME/OPatch $DB_HOME

[root@rac2 ~]# chown -R oracle:oinstall $DB_HOME/OPatch

[root@rac2 ~]# $DB_HOME/OPatch/opatch version
OPatch Version: 11.2.0.3.23

OPatch succeeded.


B) 사전 조사

패치 적용 여부 확인
grid_env
opatch lspatches
db_env
opatch lspatches
[racdb1:/home/oracle]> grid_env

[+ASM1:/home/oracle]> opatch lspatches
18370031;Grid Infrastructure Patch Set Update : 11.2.0.4.x (gibugno)

OPatch succeeded.

[+ASM1:/home/oracle]> db_env

[racdb1:/home/oracle]> opatch lspatches
이 Oracle 홈에 설치된 Interim 패치가 없습니다 "/u01/app/oracle/product/11.2.0/db_1".

OPatch succeeded.
[racdb2:/home/oracle]> grid_env

[+ASM2:/home/oracle]> opatch lspatches
18370031;Grid Infrastructure Patch Set Update : 11.2.0.4.x (gibugno)

OPatch succeeded.

[+ASM2:/home/oracle]> db_env

[racdb2:/home/oracle]> opatch lspatches
이 Oracle 홈에 설치된 Interim 패치가 없습니다 "/u01/app/oracle/product/11.2.0/db_1".

OPatch succeeded.


Grid 패치 충돌 여부 조사
grid_env
opatch prereq CheckConflictAgainstOHWithDetail -oh $GRID_HOME -ph <PSU 압축 해제 디렉토리>/<Grid PSU 번호>/<OCW PSU 번호>
opatch prereq CheckConflictAgainstOHWithDetail -oh $GRID_HOME -ph <PSU 압축 해제 디렉토리>/<Grid PSU 번호>/<ACFS PSU 번호>
opatch prereq CheckConflictAgainstOHWithDetail -oh $GRID_HOME -ph <PSU 압축 해제 디렉토리>/<Grid PSU 번호>/<DB PSU 번호>
[racdb1:/home/oracle]> grid_env

[+ASM1:/home/oracle]> opatch prereq CheckConflictAgainstOHWithDetail -oh $GRID_HOME -ph /media/sf_oracle/11.2/30501155/29938455
Oracle Interim 패치 설치 프로그램 버전 11.2.0.3.23
Copyright (c) 2020, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle 홈: /u01/app/11.2.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/11.2.0/grid/oraInst.loc
OPatch 버전: 11.2.0.3.23
OUI 버전: 11.2.0.4.0
로그 파일 위치: /u01/app/11.2.0/grid/cfgtoollogs/opatch/opatch2020-04-16_08-56-54오전_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.

[+ASM1:/home/oracle]> opatch prereq CheckConflictAgainstOHWithDetail -oh $GRID_HOME -ph /media/sf_oracle/11.2/30501155/29509309
Oracle Interim 패치 설치 프로그램 버전 11.2.0.3.23
Copyright (c) 2020, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle 홈: /u01/app/11.2.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/11.2.0/grid/oraInst.loc
OPatch 버전: 11.2.0.3.23
OUI 버전: 11.2.0.4.0
로그 파일 위치: /u01/app/11.2.0/grid/cfgtoollogs/opatch/opatch2020-04-16_08-57-00오전_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.

[+ASM1:/home/oracle]> opatch prereq CheckConflictAgainstOHWithDetail -oh $GRID_HOME -ph /media/sf_oracle/11.2/30501155/30298532
Oracle Interim 패치 설치 프로그램 버전 11.2.0.3.23
Copyright (c) 2020, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle 홈: /u01/app/11.2.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/11.2.0/grid/oraInst.loc
OPatch 버전: 11.2.0.3.23
OUI 버전: 11.2.0.4.0
로그 파일 위치: /u01/app/11.2.0/grid/cfgtoollogs/opatch/opatch2020-04-16_08-57-05오전_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.
[racdb2:/home/oracle]> grid_env

[+ASM2:/home/oracle]> opatch prereq CheckConflictAgainstOHWithDetail -oh $GRID_HOME -ph /media/sf_oracle/11.2/30501155/29938455
Oracle Interim 패치 설치 프로그램 버전 11.2.0.3.23
Copyright (c) 2020, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle 홈: /u01/app/11.2.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/11.2.0/grid/oraInst.loc
OPatch 버전: 11.2.0.3.23
OUI 버전: 11.2.0.4.0
로그 파일 위치: /u01/app/11.2.0/grid/cfgtoollogs/opatch/opatch2020-04-16_09-19-16오전_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.

[+ASM2:/home/oracle]> opatch prereq CheckConflictAgainstOHWithDetail -oh $GRID_HOME -ph /media/sf_oracle/11.2/30501155/29509309
Oracle Interim 패치 설치 프로그램 버전 11.2.0.3.23
Copyright (c) 2020, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle 홈: /u01/app/11.2.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/11.2.0/grid/oraInst.loc
OPatch 버전: 11.2.0.3.23
OUI 버전: 11.2.0.4.0
로그 파일 위치: /u01/app/11.2.0/grid/cfgtoollogs/opatch/opatch2020-04-16_09-19-20오전_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.

[+ASM2:/home/oracle]> opatch prereq CheckConflictAgainstOHWithDetail -oh $GRID_HOME -ph /media/sf_oracle/11.2/30501155/30298532
Oracle Interim 패치 설치 프로그램 버전 11.2.0.3.23
Copyright (c) 2020, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle 홈: /u01/app/11.2.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/11.2.0/grid/oraInst.loc
OPatch 버전: 11.2.0.3.23
OUI 버전: 11.2.0.4.0
로그 파일 위치: /u01/app/11.2.0/grid/cfgtoollogs/opatch/opatch2020-04-16_09-19-24오전_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.


DB 패치 충돌 여부 조사
db_env
opatch prereq CheckConflictAgainstOHWithDetail -oh $DB_HOME -ph <PSU 압축 해제 디렉토리>/<Grid PSU 번호>/<OCW PSU 번호>
opatch prereq CheckConflictAgainstOHWithDetail -oh $DB_HOME -ph <PSU 압축 해제 디렉토리>/<Grid PSU 번호>/<DB PSU 번호>
[+ASM1:/home/oracle]> db_env

[racdb1:/home/oracle]> opatch prereq CheckConflictAgainstOHWithDetail -oh $DB_HOME -ph /media/sf_oracle/11.2/30501155/29938455
Oracle Interim 패치 설치 프로그램 버전 11.2.0.3.23
Copyright (c) 2020, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle 홈: /u01/app/oracle/product/11.2.0/db_1
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/oracle/product/11.2.0/db_1/oraInst.loc
OPatch 버전: 11.2.0.3.23
OUI 버전: 11.2.0.4.0
로그 파일 위치: /u01/app/oracle/product/11.2.0/db_1/cfgtoollogs/opatch/opatch2020-04-16_08-57-31오전_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.

[racdb1:/home/oracle]> opatch prereq CheckConflictAgainstOHWithDetail -oh $DB_HOME -ph /media/sf_oracle/11.2/30501155/30298532
Oracle Interim 패치 설치 프로그램 버전 11.2.0.3.23
Copyright (c) 2020, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle 홈: /u01/app/oracle/product/11.2.0/db_1
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/oracle/product/11.2.0/db_1/oraInst.loc
OPatch 버전: 11.2.0.3.23
OUI 버전: 11.2.0.4.0
로그 파일 위치: /u01/app/oracle/product/11.2.0/db_1/cfgtoollogs/opatch/opatch2020-04-16_08-57-36오전_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.
[+ASM2:/home/oracle]> db_env

[racdb2:/home/oracle]> opatch prereq CheckConflictAgainstOHWithDetail -oh $DB_HOME -ph /media/sf_oracle/11.2/30501155/29938455
Oracle Interim 패치 설치 프로그램 버전 11.2.0.3.23
Copyright (c) 2020, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle 홈: /u01/app/oracle/product/11.2.0/db_1
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/oracle/product/11.2.0/db_1/oraInst.loc
OPatch 버전: 11.2.0.3.23
OUI 버전: 11.2.0.4.0
로그 파일 위치: /u01/app/oracle/product/11.2.0/db_1/cfgtoollogs/opatch/opatch2020-04-16_09-19-59오전_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.

[racdb2:/home/oracle]> opatch prereq CheckConflictAgainstOHWithDetail -oh $DB_HOME -ph /media/sf_oracle/11.2/30501155/30298532
Oracle Interim 패치 설치 프로그램 버전 11.2.0.3.23
Copyright (c) 2020, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle 홈: /u01/app/oracle/product/11.2.0/db_1
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/oracle/product/11.2.0/db_1/oraInst.loc
OPatch 버전: 11.2.0.3.23
OUI 버전: 11.2.0.4.0
로그 파일 위치: /u01/app/oracle/product/11.2.0/db_1/cfgtoollogs/opatch/opatch2020-04-16_09-20-04오전_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.


C) 1번 노드 패치

1번 노드 패치를 위해 CRS 홈 unlock
$GRID_HOME/perl/bin/perl $GRID_HOME/crs/install/rootcrs.pl -unlock
[root@rac1 ~]# $GRID_HOME/perl/bin/perl $GRID_HOME/crs/install/rootcrs.pl -unlock
Using configuration parameter file: /u01/app/11.2.0/grid/crs/install/crsconfig_params
CRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on 'rac1'
CRS-2673: Attempting to stop 'ora.crsd' on 'rac1'
CRS-2790: Starting shutdown of Cluster Ready Services-managed resources on 'rac1'
CRS-2673: Attempting to stop 'ora.racdb.db' on 'rac1'
CRS-2673: Attempting to stop 'ora.LISTENER.lsnr' on 'rac1'
CRS-2673: Attempting to stop 'ora.LISTENER_SCAN1.lsnr' on 'rac1'
CRS-2677: Stop of 'ora.LISTENER.lsnr' on 'rac1' succeeded
CRS-2673: Attempting to stop 'ora.rac1.vip' on 'rac1'
CRS-2677: Stop of 'ora.LISTENER_SCAN1.lsnr' on 'rac1' succeeded
CRS-2673: Attempting to stop 'ora.scan1.vip' on 'rac1'
CRS-2677: Stop of 'ora.racdb.db' on 'rac1' succeeded
CRS-2677: Stop of 'ora.rac1.vip' on 'rac1' succeeded
CRS-2672: Attempting to start 'ora.rac1.vip' on 'rac2'
CRS-2677: Stop of 'ora.scan1.vip' on 'rac1' succeeded
CRS-2672: Attempting to start 'ora.scan1.vip' on 'rac2'
CRS-2676: Start of 'ora.rac1.vip' on 'rac2' succeeded
CRS-2676: Start of 'ora.scan1.vip' on 'rac2' succeeded
CRS-2672: Attempting to start 'ora.LISTENER_SCAN1.lsnr' on 'rac2'
CRS-2676: Start of 'ora.LISTENER_SCAN1.lsnr' on 'rac2' succeeded
CRS-2673: Attempting to stop 'ora.ons' on 'rac1'
CRS-2677: Stop of 'ora.ons' on 'rac1' succeeded
CRS-2673: Attempting to stop 'ora.net1.network' on 'rac1'
CRS-2677: Stop of 'ora.net1.network' on 'rac1' succeeded
CRS-2792: Shutdown of Cluster Ready Services-managed resources on 'rac1' has completed
CRS-2677: Stop of 'ora.crsd' on 'rac1' succeeded
CRS-2673: Attempting to stop 'ora.crf' on 'rac1'
CRS-2673: Attempting to stop 'ora.ctssd' on 'rac1'
CRS-2673: Attempting to stop 'ora.evmd' on 'rac1'
CRS-2673: Attempting to stop 'ora.cluster_interconnect.haip' on 'rac1'
CRS-2673: Attempting to stop 'ora.mdnsd' on 'rac1'
CRS-2677: Stop of 'ora.mdnsd' on 'rac1' succeeded
CRS-2677: Stop of 'ora.evmd' on 'rac1' succeeded
CRS-2677: Stop of 'ora.crf' on 'rac1' succeeded
CRS-2677: Stop of 'ora.cluster_interconnect.haip' on 'rac1' succeeded
CRS-2677: Stop of 'ora.ctssd' on 'rac1' succeeded
CRS-2673: Attempting to stop 'ora.cssd' on 'rac1'
CRS-2677: Stop of 'ora.cssd' on 'rac1' succeeded
CRS-2673: Attempting to stop 'ora.gipcd' on 'rac1'
CRS-2677: Stop of 'ora.gipcd' on 'rac1' succeeded
CRS-2673: Attempting to stop 'ora.gpnpd' on 'rac1'
CRS-2677: Stop of 'ora.gpnpd' on 'rac1' succeeded
CRS-2793: Shutdown of Oracle High Availability Services-managed resources on 'rac1' has completed
CRS-4133: Oracle High Availability Services has been stopped.
Successfully unlock /u01/app/11.2.0/grid


1번 노드 Grid 패치 적용
grid_env
$GRID_HOME/OPatch/opatch napply -oh $GRID_HOME -local <PSU 압축 해제 디렉토리>/<Grid PSU 번호>/<OCW PSU 번호>
$GRID_HOME/OPatch/opatch napply -oh $GRID_HOME -local <PSU 압축 해제 디렉토리>/<Grid PSU 번호>/<ACFS PSU 번호>
$GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local <PSU 압축 해제 디렉토리>/<Grid PSU 번호>/<DB PSU 번호>
[racdb1:/home/oracle]> grid_env

[+ASM1:/home/oracle]> $GRID_HOME/OPatch/opatch napply -oh $GRID_HOME -local /media/sf_oracle/11.2/30501155/29938455
Oracle Interim 패치 설치 프로그램 버전 11.2.0.3.23
Copyright (c) 2020, Oracle Corporation.  All rights reserved.


Oracle 홈: /u01/app/11.2.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/11.2.0/grid/oraInst.loc
OPatch 버전: 11.2.0.3.23
OUI 버전: 11.2.0.4.0
로그 파일 위치: /u01/app/11.2.0/grid/cfgtoollogs/opatch/opatch2020-04-16_08-58-56오전_1.log

Verifying environment and performing prerequisite checks...
OPatch continues with these patches:   29938455

계속하겠습니까? [y|n]
y
User Responded with: Y
All checks passed.

로컬 시스템의 이 ORACLE_HOME에서 실행 중인 Oracle 인스턴스를 종료하십시오.
(Oracle 홈 = '/u01/app/11.2.0/grid')


로컬 시스템이 패치할 준비가 되었습니까? [y|n]
y
User Responded with: Y
Backing up files...
OH '/u01/app/11.2.0/grid'에 Interim 패치 '29938455'을(를) 적용하는 중

oracle.crs, 11.2.0.4.0 구성요소를 패치하는 중...
Patch 29938455 successfully applied.
Sub-set patch [18370031] has become inactive due to the application of a super-set patch [29938455].
Please refer to Doc ID 2161861.1 for any possible further required actions.
Log file location: /u01/app/11.2.0/grid/cfgtoollogs/opatch/opatch2020-04-16_08-58-56오전_1.log

OPatch succeeded.

[+ASM1:/home/oracle]> $GRID_HOME/OPatch/opatch napply -oh $GRID_HOME -local /media/sf_oracle/11.2/30501155/29509309
Oracle Interim 패치 설치 프로그램 버전 11.2.0.3.23
Copyright (c) 2020, Oracle Corporation.  All rights reserved.


Oracle 홈: /u01/app/11.2.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/11.2.0/grid/oraInst.loc
OPatch 버전: 11.2.0.3.23
OUI 버전: 11.2.0.4.0
로그 파일 위치: /u01/app/11.2.0/grid/cfgtoollogs/opatch/opatch2020-04-16_09-00-14오전_1.log

Verifying environment and performing prerequisite checks...
OPatch continues with these patches:   29509309

계속하겠습니까? [y|n]
y
User Responded with: Y
All checks passed.

로컬 시스템의 이 ORACLE_HOME에서 실행 중인 Oracle 인스턴스를 종료하십시오.
(Oracle 홈 = '/u01/app/11.2.0/grid')


로컬 시스템이 패치할 준비가 되었습니까? [y|n]
y
User Responded with: Y
Backing up files...
OH '/u01/app/11.2.0/grid'에 Interim 패치 '29509309'을(를) 적용하는 중

oracle.usm, 11.2.0.4.0 구성요소를 패치하는 중...
Patch 29509309 successfully applied.
Log file location: /u01/app/11.2.0/grid/cfgtoollogs/opatch/opatch2020-04-16_09-00-14오전_1.log

OPatch succeeded.

[+ASM1:/home/oracle]> $GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local /media/sf_oracle/11.2/30501155/30298532
Oracle Interim 패치 설치 프로그램 버전 11.2.0.3.23
Copyright (c) 2020, Oracle Corporation.  All rights reserved.


Oracle 홈: /u01/app/11.2.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/11.2.0/grid/oraInst.loc
OPatch 버전: 11.2.0.3.23
OUI 버전: 11.2.0.4.0
로그 파일 위치: /u01/app/11.2.0/grid/cfgtoollogs/opatch/opatch2020-04-16_09-02-24오전_1.log

Verifying environment and performing prerequisite checks...
OPatch continues with these patches:   17478514  18031668  18522509  19121551  19769489  20299013  20760982  21352635  21948347  22502456  23054359  24006111  24732075  25869727  26609445  26392168  26925576  27338049  27734982  28204707  28729262  29141056  29497421  29913194  30298532

계속하겠습니까? [y|n]
y
User Responded with: Y
All checks passed.

로컬 시스템의 이 ORACLE_HOME에서 실행 중인 Oracle 인스턴스를 종료하십시오.
(Oracle 홈 = '/u01/app/11.2.0/grid')


로컬 시스템이 패치할 준비가 되었습니까? [y|n]
y
User Responded with: Y
Backing up files...
Applying sub-patch '17478514' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.sdo, 11.2.0.4.0 ] , [ oracle.sysman.agent, 10.2.0.4.5 ] , [ oracle.xdk, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sdo.locator, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.nlsrtl.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '18031668' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.precomp.common, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.crs, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf.ic, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.deconfig, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '18522509' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.precomp.common, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.deconfig, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '19121551' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.precomp.common, 11.2.0.4.0 ] , [ oracle.sysman.console.db, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ordim.client, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ordim.jai, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '19769489' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.precomp.common, 11.2.0.4.0 ] , [ oracle.ovm, 11.2.0.4.0 ] , [ oracle.xdk, 11.2.0.4.0 ] , [ oracle.oraolap, 11.2.0.4.0 ] , [ oracle.sysman.agent, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms.util, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.parser.java, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.deconfig, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '20299013' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.rdbms.dv, 11.2.0.4.0 ] , [ oracle.rdbms.oci, 11.2.0.4.0 ] , [ oracle.precomp.common, 11.2.0.4.0 ] , [ oracle.sysman.agent, 10.2.0.4.5 ] , [ oracle.xdk, 11.2.0.4.0 ] , [ oracle.sysman.console.db, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.sysman.common, 10.2.0.4.5 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.parser.java, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sysman.common.core, 10.2.0.4.5 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.deconfig, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '20760982' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.sysman.console.db, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '21352635' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.sysman.agent, 10.2.0.4.5 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '21948347' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.sysman.agent, 10.2.0.4.5 ] , [ oracle.ovm, 11.2.0.4.0 ] , [ oracle.xdk, 11.2.0.4.0 ] , [ oracle.tfa, 11.2.0.4.0 ] , [ oracle.sysman.console.db, 11.2.0.4.0 ] , [ oracle.sysman.oms.core, 10.2.0.4.5 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.nlsrtl.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.parser.java, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '22502456' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.precomp.common, 11.2.0.4.0 ] , [ oracle.tfa, 11.2.0.4.0 ] , [ oracle.rdbms.olap, 11.2.0.4.0 ] , [ oracle.oraolap, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.oraolap.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '23054359' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.rdbms.dv, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '24006111' to OH '/u01/app/11.2.0/grid'

oracle.sqlplus.ic, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sqlplus, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '24732075' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.precomp.common, 11.2.0.4.0 ] , [ oracle.sysman.plugin.db.main.agent, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.sqlplus.ic, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sqlplus, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.util, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ordim.client, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ordim.jai, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ordim.server, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '25869727' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.oid.client, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.ldap.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.oracore.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '26609445' to OH '/u01/app/11.2.0/grid'

oracle.oracore.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '26392168' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.sysman.agent, 10.2.0.4.5 ] , [ oracle.xdk, 11.2.0.4.0 ] , [ oracle.oid.client, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.network.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.client, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.network.listener, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.nlsrtl.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.parser.java, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '26925576' to OH '/u01/app/11.2.0/grid'

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '27338049' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.assistants.server, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '27734982' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.ctx, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ctx.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '28204707' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.sysman.agent, 10.2.0.4.5 ] , [ oracle.sysman.console.db, 11.2.0.4.0 ] , [ oracle.ctx, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.
Applying changes to emctl script on the home: /u01/app/11.2.0/grid ...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.oracore.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf.ic, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.network.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.security.osdt, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.owm, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sqlplus.rsf, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '28729262' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.ctx, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.
INFO: Script isn't applicable to this port!

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.util, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf.ic, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.network.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '29141056' to OH '/u01/app/11.2.0/grid'

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.oracore.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '29497421' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.ctx, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf.ic, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.oracore.rsf, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '29913194' to OH '/u01/app/11.2.0/grid'

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.network.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf.ic, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.util, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '30298532' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.rdbms.tg4tera, 11.2.0.4.0 ] , [ oracle.rdbms.tg4sybs, 11.2.0.4.0 ] , [ oracle.rdbms.tg4ifmx, 11.2.0.4.0 ] , [ oracle.rdbms.tg4db2, 11.2.0.4.0 ] , [ oracle.rdbms.tg4msql, 11.2.0.4.0 ] , [ oracle.rdbms.hsodbc, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf.ic, 11.2.0.4.0 구성요소를 패치하는 중...
Composite patch 30298532 successfully applied.
Log file location: /u01/app/11.2.0/grid/cfgtoollogs/opatch/opatch2020-04-16_09-02-24오전_1.log

OPatch succeeded.


1번 노드 DB 패치 적용
db_env
<PSU 압축 해제 디렉토리>/<Grid PSU 번호>/<OCW PSU 번호>/custom/server/<OCW PSU 번호>/custom/scripts/prepatch.sh -dbhome $DB_HOME
$DB_HOME/OPatch/opatch napply -oh $DB_HOME -local <PSU 압축 해제 디렉토리>/<Grid PSU 번호>/<OCW PSU 번호>/custom/server/<OCW PSU 번호>
$DB_HOME/OPatch/opatch apply -oh $DB_HOME -local <PSU 압축 해제 디렉토리>/<Grid PSU 번호>/<DB PSU 번호>
<PSU 압축 해제 디렉토리>/<Grid PSU 번호>/<OCW PSU 번호>/custom/server/<OCW PSU 번호>/custom/scripts/postpatch.sh -dbhome $DB_HOME
[+ASM1:/home/oracle]> db_env

[racdb1:/home/oracle]> /media/sf_oracle/11.2/30501155/29938455/custom/server/29938455/custom/scripts/prepatch.sh -dbhome $DB_HOME
/media/sf_oracle/11.2/30501155/29938455/custom/server/29938455/custom/scripts/prepatch.sh completed successfully.

[racdb1:/home/oracle]> $DB_HOME/OPatch/opatch napply -oh $DB_HOME -local /media/sf_oracle/11.2/30501155/29938455/custom/server/29938455
Oracle Interim 패치 설치 프로그램 버전 11.2.0.3.23
Copyright (c) 2020, Oracle Corporation.  All rights reserved.


Oracle 홈: /u01/app/oracle/product/11.2.0/db_1
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/oracle/product/11.2.0/db_1/oraInst.loc
OPatch 버전: 11.2.0.3.23
OUI 버전: 11.2.0.4.0
로그 파일 위치: /u01/app/oracle/product/11.2.0/db_1/cfgtoollogs/opatch/opatch2020-04-16_09-06-15오전_1.log

Verifying environment and performing prerequisite checks...
OPatch continues with these patches:   29938455

계속하겠습니까? [y|n]
y
User Responded with: Y
All checks passed.

로컬 시스템의 이 ORACLE_HOME에서 실행 중인 Oracle 인스턴스를 종료하십시오.
(Oracle 홈 = '/u01/app/oracle/product/11.2.0/db_1')


로컬 시스템이 패치할 준비가 되었습니까? [y|n]
y
User Responded with: Y
Backing up files...
OH '/u01/app/oracle/product/11.2.0/db_1'에 Interim 패치 '29938455'을(를) 적용하는 중

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...
Patch 29938455 successfully applied.
Log file location: /u01/app/oracle/product/11.2.0/db_1/cfgtoollogs/opatch/opatch2020-04-16_09-06-15오전_1.log

OPatch succeeded.

[racdb1:/home/oracle]> $DB_HOME/OPatch/opatch apply -oh $DB_HOME -local /media/sf_oracle/11.2/30501155/30298532
Oracle Interim 패치 설치 프로그램 버전 11.2.0.3.23
Copyright (c) 2020, Oracle Corporation.  All rights reserved.


Oracle 홈: /u01/app/oracle/product/11.2.0/db_1
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/oracle/product/11.2.0/db_1/oraInst.loc
OPatch 버전: 11.2.0.3.23
OUI 버전: 11.2.0.4.0
로그 파일 위치: /u01/app/oracle/product/11.2.0/db_1/cfgtoollogs/opatch/opatch2020-04-16_09-06-41오전_1.log

Verifying environment and performing prerequisite checks...
OPatch continues with these patches:   17478514  18031668  18522509  19121551  19769489  20299013  20760982  21352635  21948347  22502456  23054359  24006111  24732075  25869727  26609445  26392168  26925576  27338049  27734982  28204707  28729262  29141056  29497421  29913194  30298532

계속하겠습니까? [y|n]
y
User Responded with: Y
All checks passed.

로컬 시스템의 이 ORACLE_HOME에서 실행 중인 Oracle 인스턴스를 종료하십시오.
(Oracle 홈 = '/u01/app/oracle/product/11.2.0/db_1')


로컬 시스템이 패치할 준비가 되었습니까? [y|n]
y
User Responded with: Y
Backing up files...
Applying sub-patch '17478514' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sdo, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sysman.agent, 10.2.0.4.5 구성요소를 패치하는 중...

oracle.xdk, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sdo.locator, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.nlsrtl.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '18031668' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.crs, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.precomp.common, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf.ic, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.deconfig, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '18522509' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.precomp.common, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.deconfig, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '19121551' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.precomp.common, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sysman.console.db, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ordim.client, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ordim.jai, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '19769489' to OH '/u01/app/oracle/product/11.2.0/db_1'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.sysman.agent, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.precomp.common, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ovm, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.util, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.parser.java, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.oraolap, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.deconfig, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '20299013' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.rdbms.dv, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.oci, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.precomp.common, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sysman.agent, 10.2.0.4.5 구성요소를 패치하는 중...

oracle.xdk, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sysman.common, 10.2.0.4.5 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.parser.java, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sysman.console.db, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sysman.common.core, 10.2.0.4.5 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.deconfig, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '20760982' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.sysman.console.db, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '21352635' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.sysman.agent, 10.2.0.4.5 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '21948347' to OH '/u01/app/oracle/product/11.2.0/db_1'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.tfa, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.sysman.agent, 10.2.0.4.5 구성요소를 패치하는 중...

oracle.ovm, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.nlsrtl.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.parser.java, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sysman.console.db, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sysman.oms.core, 10.2.0.4.5 구성요소를 패치하는 중...
Applying sub-patch '22502456' to OH '/u01/app/oracle/product/11.2.0/db_1'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.tfa, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.precomp.common, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.oraolap.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.olap, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.oraolap, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '23054359' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.rdbms.dv, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '24006111' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.sqlplus.ic, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sqlplus, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '24732075' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.precomp.common, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sysman.plugin.db.main.agent, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sqlplus.ic, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sqlplus, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.util, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ordim.client, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ordim.jai, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ordim.server, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '25869727' to OH '/u01/app/oracle/product/11.2.0/db_1'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.oid.client, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.ldap.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.oracore.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '26609445' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.oracore.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '26392168' to OH '/u01/app/oracle/product/11.2.0/db_1'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.oid.client, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.network.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.client, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sysman.agent, 10.2.0.4.5 구성요소를 패치하는 중...

oracle.xdk, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.network.listener, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.nlsrtl.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.parser.java, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '26925576' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '27338049' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.assistants.server, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '27734982' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.ctx, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ctx.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '28204707' to OH '/u01/app/oracle/product/11.2.0/db_1'
Applying changes to emctl script on the home: /u01/app/oracle/product/11.2.0/db_1 ...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.oracore.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf.ic, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.network.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sysman.agent, 10.2.0.4.5 구성요소를 패치하는 중...

oracle.sysman.console.db, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.security.osdt, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.owm, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sqlplus.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ctx, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '28729262' to OH '/u01/app/oracle/product/11.2.0/db_1'
INFO: Script isn't applicable to this port!

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.util, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf.ic, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.network.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ctx, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '29141056' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.oracore.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '29497421' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf.ic, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.oracore.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ctx, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '29913194' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.network.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf.ic, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.util, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '30298532' to OH '/u01/app/oracle/product/11.2.0/db_1'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.rdbms.tg4tera, 11.2.0.4.0 ] , [ oracle.rdbms.tg4sybs, 11.2.0.4.0 ] , [ oracle.rdbms.tg4ifmx, 11.2.0.4.0 ] , [ oracle.rdbms.tg4db2, 11.2.0.4.0 ] , [ oracle.rdbms.tg4msql, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.hsodbc, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf.ic, 11.2.0.4.0 구성요소를 패치하는 중...

OPatch가 make 명령의 stderr에서 단어 "warning"을(를) 찾았습니다.
이 stderr을 참조하십시오. 이 make 명령을 재실행할 수 있습니다.
Stderr output:
/bin/ld: warning: -z lazyload ignored.
/bin/ld: warning: -z nolazyload ignored.



OPatch가 make 명령의 stderr에서 단어 "warning"을(를) 찾았습니다.
이 stderr을 참조하십시오. 이 make 명령을 재실행할 수 있습니다.
Stderr output:
/bin/ld: warning: -z lazyload ignored.
/bin/ld: warning: -z nolazyload ignored.



OPatch가 make 명령의 stderr에서 단어 "warning"을(를) 찾았습니다.
이 stderr을 참조하십시오. 이 make 명령을 재실행할 수 있습니다.
Stderr output:
/bin/ld: warning: -z lazyload ignored.
/bin/ld: warning: -z nolazyload ignored.



OPatch가 make 명령의 stderr에서 단어 "warning"을(를) 찾았습니다.
이 stderr을 참조하십시오. 이 make 명령을 재실행할 수 있습니다.
Stderr output:
/bin/ld: warning: -z lazyload ignored.
/bin/ld: warning: -z nolazyload ignored.
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmeoci.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmeoci.so .so
+ libname=libnmeoci
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmeoci.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmeoci.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmeoci.so _LIBNAME=libnmeoci _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmeociLIBS)' '_LIBNAME_EXTRALIBS=$(libnmeociEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefw.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefw.so .so
+ libname=libnmefw
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefw.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefw.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefw.so _LIBNAME=libnmefw _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmefwLIBS)' '_LIBNAME_EXTRALIBS=$(libnmefwEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefos.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefos.so .so
+ libname=libnmefos
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefos.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefos.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefos.so _LIBNAME=libnmefos _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmefosLIBS)' '_LIBNAME_EXTRALIBS=$(libnmefosEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefsql.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefsql.so .so
+ libname=libnmefsql
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefsql.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefsql.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefsql.so _LIBNAME=libnmefsql _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmefsqlLIBS)' '_LIBNAME_EXTRALIBS=$(libnmefsqlEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefud.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefud.so .so
+ libname=libnmefud
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefud.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefud.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefud.so _LIBNAME=libnmefud _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmefudLIBS)' '_LIBNAME_EXTRALIBS=$(libnmefudEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefdms.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefdms.so .so
+ libname=libnmefdms
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefdms.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefdms.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefdms.so _LIBNAME=libnmefdms _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmefdmsLIBS)' '_LIBNAME_EXTRALIBS=$(libnmefdmsEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefojmx.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefojmx.so .so
+ libname=libnmefojmx
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefojmx.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefojmx.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefojmx.so _LIBNAME=libnmefojmx _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmefojmxLIBS)' '_LIBNAME_EXTRALIBS=$(libnmefojmxEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefut.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefut.so .so
+ libname=libnmefut
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefut.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefut.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefut.so _LIBNAME=libnmefut _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmefutLIBS)' '_LIBNAME_EXTRALIBS=$(libnmefutEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefvr.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefvr.so .so
+ libname=libnmefvr
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefvr.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefvr.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefvr.so _LIBNAME=libnmefvr _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmefvrLIBS)' '_LIBNAME_EXTRALIBS=$(libnmefvrEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefpfa.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefpfa.so .so
+ libname=libnmefpfa
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefpfa.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefpfa.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefpfa.so _LIBNAME=libnmefpfa _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmefpfaLIBS)' '_LIBNAME_EXTRALIBS=$(libnmefpfaEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmevq.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmevq.so .so
+ libname=libnmevq
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmevq.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmevq.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmevq.so _LIBNAME=libnmevq _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmevqLIBS)' '_LIBNAME_EXTRALIBS=$(libnmevqEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmevsp.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmevsp.so .so
+ libname=libnmevsp
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmevsp.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmevsp.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmevsp.so _LIBNAME=libnmevsp _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmevspLIBS)' '_LIBNAME_EXTRALIBS=$(libnmevspEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmevc.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmevc.so .so
+ libname=libnmevc
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmevc.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmevc.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmevc.so _LIBNAME=libnmevc _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmevcLIBS)' '_LIBNAME_EXTRALIBS=$(libnmevcEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmadbg.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmadbg.so .so
+ libname=libnmadbg
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmadbg.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmadbg.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmadbg.so _LIBNAME=libnmadbg _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmadbgLIBS)' '_LIBNAME_EXTRALIBS=$(libnmadbgEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmadm.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmadm.so .so
+ libname=libnmadm
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmadm.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmadm.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmadm.so _LIBNAME=libnmadm _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmadmLIBS)' '_LIBNAME_EXTRALIBS=$(libnmadmEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmalk.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmalk.so .so
+ libname=libnmalk
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmalk.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmalk.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmalk.so _LIBNAME=libnmalk _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmalkLIBS)' '_LIBNAME_EXTRALIBS=$(libnmalkEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmastk.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmastk.so .so
+ libname=libnmastk
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmastk.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmastk.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmastk.so _LIBNAME=libnmastk _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmastkLIBS)' '_LIBNAME_EXTRALIBS=$(libnmastkEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmasf.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmasf.so .so
+ libname=libnmasf
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmasf.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmasf.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmasf.so _LIBNAME=libnmasf _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmasfLIBS)' '_LIBNAME_EXTRALIBS=$(libnmasfEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmarl.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmarl.so .so
+ libname=libnmarl
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmarl.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmarl.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmarl.so _LIBNAME=libnmarl _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmarlLIBS)' '_LIBNAME_EXTRALIBS=$(libnmarlEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefsp.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefsp.so .so
+ libname=libnmefsp
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefsp.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefsp.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefsp.so _LIBNAME=libnmefsp _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmefspLIBS)' '_LIBNAME_EXTRALIBS=$(libnmefspEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefsqlt.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefsqlt.so .so
+ libname=libnmefsqlt
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefsqlt.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefsqlt.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefsqlt.so _LIBNAME=libnmefsqlt _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmefsqltLIBS)' '_LIBNAME_EXTRALIBS=$(libnmefsqltEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefport.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefport.so .so
+ libname=libnmefport
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefport.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefport.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefport.so _LIBNAME=libnmefport _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmefportLIBS)' '_LIBNAME_EXTRALIBS=$(libnmefportEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmcfhc.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmcfhc.so .so
+ libname=libnmcfhc
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmcfhc.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmcfhc.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmcfhc.so _LIBNAME=libnmcfhc _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmcfhcLIBS)' '_LIBNAME_EXTRALIBS=$(libnmcfhcEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmcfsga.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmcfsga.so .so
+ libname=libnmcfsga
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmcfsga.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmcfsga.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmcfsga.so _LIBNAME=libnmcfsga _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmcfsgaLIBS)' '_LIBNAME_EXTRALIBS=$(libnmcfsgaEXTRALIBS)'
/bin/ld: warning: -z lazyload ignored.
/bin/ld: warning: -z nolazyload ignored.
/bin/ld: warning: -z lazyload ignored.
/bin/ld: warning: -z nolazyload ignored.
/bin/ld: warning: -z lazyload ignored.
/bin/ld: warning: -z nolazyload ignored.
/bin/ld: warning: -z lazyload ignored.
/bin/ld: warning: -z nolazyload ignored.
/bin/ld: warning: -z lazyload ignored.
/bin/ld: warning: -z nolazyload ignored.
/bin/ld: warning: -z lazyload ignored.
/bin/ld: warning: -z nolazyload ignored.
/bin/ld: warning: -z lazyload ignored.
/bin/ld: warning: -z nolazyload ignored.
/bin/ld: warning: -z lazyload ignored.
/bin/ld: warning: -z nolazyload ignored.
/bin/ld: warning: -z lazyload ignored.
/bin/ld: warning: -z nolazyload ignored.


Composite patch 30298532 successfully applied.
OPatch Session이 경고와 함께 완료되었습니다.
Log file location: /u01/app/oracle/product/11.2.0/db_1/cfgtoollogs/opatch/opatch2020-04-16_09-06-41오전_1.log

OPatch completed with warnings.

[racdb1:/home/oracle]> /media/sf_oracle/11.2/30501155/29938455/custom/server/29938455/custom/scripts/postpatch.sh -dbhome $DB_HOME
Reading /u01/app/oracle/product/11.2.0/db_1/install/params.ora..
Reading /u01/app/oracle/product/11.2.0/db_1/install/params.ora..
Parsing file /u01/app/oracle/product/11.2.0/db_1/bin/racgwrap
Parsing file /u01/app/oracle/product/11.2.0/db_1/bin/srvctl
Parsing file /u01/app/oracle/product/11.2.0/db_1/bin/srvconfig
Parsing file /u01/app/oracle/product/11.2.0/db_1/bin/cluvfy
Verifying file /u01/app/oracle/product/11.2.0/db_1/bin/racgwrap
Verifying file /u01/app/oracle/product/11.2.0/db_1/bin/srvctl
Verifying file /u01/app/oracle/product/11.2.0/db_1/bin/srvconfig
Verifying file /u01/app/oracle/product/11.2.0/db_1/bin/cluvfy
Reapplying file permissions on /u01/app/oracle/product/11.2.0/db_1/bin/racgwrap
Reapplying file permissions on /u01/app/oracle/product/11.2.0/db_1/bin/srvctl
Reapplying file permissions on /u01/app/oracle/product/11.2.0/db_1/bin/srvconfig
Reapplying file permissions on /u01/app/oracle/product/11.2.0/db_1/bin/cluvfy
Reapplying file permissions on /u01/app/oracle/product/11.2.0/db_1/bin/diskmon.bin
Reapplying file permissions on /u01/app/oracle/product/11.2.0/db_1/bin/lsnodes
Reapplying file permissions on /u01/app/oracle/product/11.2.0/db_1/bin/osdbagrp
Reapplying file permissions on /u01/app/oracle/product/11.2.0/db_1/bin/rawutl
Reapplying file permissions on /u01/app/oracle/product/11.2.0/db_1/srvm/admin/ractrans
Reapplying file permissions on /u01/app/oracle/product/11.2.0/db_1/srvm/admin/getcrshome
Reapplying file permissions on /u01/app/oracle/product/11.2.0/db_1/bin/gnsd
Reapplying file permissions on /u01/app/oracle/product/11.2.0/db_1/bin/crsdiag.pl
Postpatch completed successfully

DB PSU를 적용하는 과정에서 lazyload, nolazyload 경고가 발생하는 부분이 있으나, 오라클 문서 2071922.1 에 있는 버그로 시스템에 위협이 되는 경고가 아니므로 무시하고 진행해도 됩니다.

1번 노드 root 스크립트 실행
$GRID_HOME/rdbms/install/rootadd_rdbms.sh
$GRID_HOME/perl/bin/perl $GRID_HOME/crs/install/rootcrs.pl -patch
[root@rac1 ~]# $GRID_HOME/rdbms/install/rootadd_rdbms.sh

[root@rac1 ~]# $GRID_HOME/perl/bin/perl $GRID_HOME/crs/install/rootcrs.pl -patch
Using configuration parameter file: /u01/app/11.2.0/grid/crs/install/crsconfig_params
Installing Trace File Analyzer
CRS-4123: Oracle High Availability Services has been started.


1번 노드 패치 결과 확인
grid_env
opatch lspatches
db_env
opatch lspatches
[racdb1:/home/oracle]> grid_env

[+ASM1:/home/oracle]> opatch lspatches
30298532;Database Patch Set Update : 11.2.0.4.200114 (30298532)
29509309;ACFS Patch Set Update : 11.2.0.4.190716 (29509309)
29938455;OCW Patch Set Update : 11.2.0.4.191015 (29938455)

OPatch succeeded.

[+ASM1:/home/oracle]> db_env

[racdb1:/home/oracle]> opatch lspatches
30298532;Database Patch Set Update : 11.2.0.4.200114 (30298532)
29938455;OCW Patch Set Update : 11.2.0.4.191015 (29938455)

OPatch succeeded.


D) 2번 노드 패치

2번 노드 패치를 위해 CRS 홈 unlock
$GRID_HOME/perl/bin/perl $GRID_HOME/crs/install/rootcrs.pl -unlock
[root@rac2 ~]# $GRID_HOME/perl/bin/perl $GRID_HOME/crs/install/rootcrs.pl -unlock
Using configuration parameter file: /u01/app/11.2.0/grid/crs/install/crsconfig_params
CRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on 'rac2'
CRS-2673: Attempting to stop 'ora.crsd' on 'rac2'
CRS-2790: Starting shutdown of Cluster Ready Services-managed resources on 'rac2'
CRS-2673: Attempting to stop 'ora.cvu' on 'rac2'
CRS-2673: Attempting to stop 'ora.LISTENER_SCAN3.lsnr' on 'rac2'
CRS-2673: Attempting to stop 'ora.racdb.db' on 'rac2'
CRS-2673: Attempting to stop 'ora.LISTENER_SCAN2.lsnr' on 'rac2'
CRS-2673: Attempting to stop 'ora.LISTENER.lsnr' on 'rac2'
CRS-2673: Attempting to stop 'ora.oc4j' on 'rac2'
CRS-2677: Stop of 'ora.LISTENER.lsnr' on 'rac2' succeeded
CRS-2673: Attempting to stop 'ora.rac2.vip' on 'rac2'
CRS-2677: Stop of 'ora.LISTENER_SCAN3.lsnr' on 'rac2' succeeded
CRS-2673: Attempting to stop 'ora.scan3.vip' on 'rac2'
CRS-2677: Stop of 'ora.LISTENER_SCAN2.lsnr' on 'rac2' succeeded
CRS-2673: Attempting to stop 'ora.scan2.vip' on 'rac2'
CRS-2677: Stop of 'ora.cvu' on 'rac2' succeeded
CRS-2672: Attempting to start 'ora.cvu' on 'rac1'
CRS-2676: Start of 'ora.cvu' on 'rac1' succeeded
CRS-2677: Stop of 'ora.rac2.vip' on 'rac2' succeeded
CRS-2672: Attempting to start 'ora.rac2.vip' on 'rac1'
CRS-2677: Stop of 'ora.racdb.db' on 'rac2' succeeded
CRS-2677: Stop of 'ora.scan3.vip' on 'rac2' succeeded
CRS-2672: Attempting to start 'ora.scan3.vip' on 'rac1'
CRS-2677: Stop of 'ora.scan2.vip' on 'rac2' succeeded
CRS-2672: Attempting to start 'ora.scan2.vip' on 'rac1'
CRS-2676: Start of 'ora.rac2.vip' on 'rac1' succeeded
CRS-2676: Start of 'ora.scan3.vip' on 'rac1' succeeded
CRS-2672: Attempting to start 'ora.LISTENER_SCAN3.lsnr' on 'rac1'
CRS-2676: Start of 'ora.scan2.vip' on 'rac1' succeeded
CRS-2672: Attempting to start 'ora.LISTENER_SCAN2.lsnr' on 'rac1'
CRS-2676: Start of 'ora.LISTENER_SCAN3.lsnr' on 'rac1' succeeded
CRS-2677: Stop of 'ora.oc4j' on 'rac2' succeeded
CRS-2672: Attempting to start 'ora.oc4j' on 'rac1'
CRS-2676: Start of 'ora.LISTENER_SCAN2.lsnr' on 'rac1' succeeded
CRS-2676: Start of 'ora.oc4j' on 'rac1' succeeded
CRS-2673: Attempting to stop 'ora.ons' on 'rac2'
CRS-2677: Stop of 'ora.ons' on 'rac2' succeeded
CRS-2673: Attempting to stop 'ora.net1.network' on 'rac2'
CRS-2677: Stop of 'ora.net1.network' on 'rac2' succeeded
CRS-2792: Shutdown of Cluster Ready Services-managed resources on 'rac2' has completed
CRS-2677: Stop of 'ora.crsd' on 'rac2' succeeded
CRS-2673: Attempting to stop 'ora.crf' on 'rac2'
CRS-2673: Attempting to stop 'ora.ctssd' on 'rac2'
CRS-2673: Attempting to stop 'ora.evmd' on 'rac2'
CRS-2673: Attempting to stop 'ora.cluster_interconnect.haip' on 'rac2'
CRS-2673: Attempting to stop 'ora.mdnsd' on 'rac2'
CRS-2677: Stop of 'ora.crf' on 'rac2' succeeded
CRS-2677: Stop of 'ora.evmd' on 'rac2' succeeded
CRS-2677: Stop of 'ora.mdnsd' on 'rac2' succeeded
CRS-2677: Stop of 'ora.cluster_interconnect.haip' on 'rac2' succeeded
CRS-2677: Stop of 'ora.ctssd' on 'rac2' succeeded
CRS-2673: Attempting to stop 'ora.cssd' on 'rac2'
CRS-2677: Stop of 'ora.cssd' on 'rac2' succeeded
CRS-2673: Attempting to stop 'ora.gipcd' on 'rac2'
CRS-2677: Stop of 'ora.gipcd' on 'rac2' succeeded
CRS-2673: Attempting to stop 'ora.gpnpd' on 'rac2'
CRS-2677: Stop of 'ora.gpnpd' on 'rac2' succeeded
CRS-2793: Shutdown of Oracle High Availability Services-managed resources on 'rac2' has completed
CRS-4133: Oracle High Availability Services has been stopped.
Successfully unlock /u01/app/11.2.0/grid

1번 노드를 모두 패치한 후에 2번 노드의 작업을 진행해야 합니다.

2번 노드 Grid 패치 적용
grid_env
$GRID_HOME/OPatch/opatch napply -oh $GRID_HOME -local <PSU 압축 해제 디렉토리>/<Grid PSU 번호>/<OCW PSU 번호>
$GRID_HOME/OPatch/opatch napply -oh $GRID_HOME -local <PSU 압축 해제 디렉토리>/<Grid PSU 번호>/<ACFS PSU 번호>
$GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local <PSU 압축 해제 디렉토리>/<Grid PSU 번호>/<DB PSU 번호>
[racdb2:/home/oracle]> grid_env

[+ASM2:/home/oracle]> $GRID_HOME/OPatch/opatch napply -oh $GRID_HOME -local /media/sf_oracle/11.2/30501155/29938455
Oracle Interim 패치 설치 프로그램 버전 11.2.0.3.23
Copyright (c) 2020, Oracle Corporation.  All rights reserved.


Oracle 홈: /u01/app/11.2.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/11.2.0/grid/oraInst.loc
OPatch 버전: 11.2.0.3.23
OUI 버전: 11.2.0.4.0
로그 파일 위치: /u01/app/11.2.0/grid/cfgtoollogs/opatch/opatch2020-04-16_09-21-41오전_1.log

Verifying environment and performing prerequisite checks...
OPatch continues with these patches:   29938455

계속하겠습니까? [y|n]
y
User Responded with: Y
All checks passed.

로컬 시스템의 이 ORACLE_HOME에서 실행 중인 Oracle 인스턴스를 종료하십시오.
(Oracle 홈 = '/u01/app/11.2.0/grid')


로컬 시스템이 패치할 준비가 되었습니까? [y|n]
y
User Responded with: Y
Backing up files...
OH '/u01/app/11.2.0/grid'에 Interim 패치 '29938455'을(를) 적용하는 중

oracle.crs, 11.2.0.4.0 구성요소를 패치하는 중...
Patch 29938455 successfully applied.
Sub-set patch [18370031] has become inactive due to the application of a super-set patch [29938455].
Please refer to Doc ID 2161861.1 for any possible further required actions.
Log file location: /u01/app/11.2.0/grid/cfgtoollogs/opatch/opatch2020-04-16_09-21-41오전_1.log

OPatch succeeded.

[+ASM2:/home/oracle]> $GRID_HOME/OPatch/opatch napply -oh $GRID_HOME -local /media/sf_oracle/11.2/30501155/29509309
Oracle Interim 패치 설치 프로그램 버전 11.2.0.3.23
Copyright (c) 2020, Oracle Corporation.  All rights reserved.


Oracle 홈: /u01/app/11.2.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/11.2.0/grid/oraInst.loc
OPatch 버전: 11.2.0.3.23
OUI 버전: 11.2.0.4.0
로그 파일 위치: /u01/app/11.2.0/grid/cfgtoollogs/opatch/opatch2020-04-16_09-22-52오전_1.log

Verifying environment and performing prerequisite checks...
OPatch continues with these patches:   29509309

계속하겠습니까? [y|n]
y
User Responded with: Y
All checks passed.

로컬 시스템의 이 ORACLE_HOME에서 실행 중인 Oracle 인스턴스를 종료하십시오.
(Oracle 홈 = '/u01/app/11.2.0/grid')


로컬 시스템이 패치할 준비가 되었습니까? [y|n]
y
User Responded with: Y
Backing up files...
OH '/u01/app/11.2.0/grid'에 Interim 패치 '29509309'을(를) 적용하는 중

oracle.usm, 11.2.0.4.0 구성요소를 패치하는 중...
Patch 29509309 successfully applied.
Log file location: /u01/app/11.2.0/grid/cfgtoollogs/opatch/opatch2020-04-16_09-22-52오전_1.log

OPatch succeeded.

[+ASM2:/home/oracle]> $GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local /media/sf_oracle/11.2/30501155/30298532
Oracle Interim 패치 설치 프로그램 버전 11.2.0.3.23
Copyright (c) 2020, Oracle Corporation.  All rights reserved.


Oracle 홈: /u01/app/11.2.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/11.2.0/grid/oraInst.loc
OPatch 버전: 11.2.0.3.23
OUI 버전: 11.2.0.4.0
로그 파일 위치: /u01/app/11.2.0/grid/cfgtoollogs/opatch/opatch2020-04-16_09-25-00오전_1.log

Verifying environment and performing prerequisite checks...
OPatch continues with these patches:   17478514  18031668  18522509  19121551  19769489  20299013  20760982  21352635  21948347  22502456  23054359  24006111  24732075  25869727  26609445  26392168  26925576  27338049  27734982  28204707  28729262  29141056  29497421  29913194  30298532

계속하겠습니까? [y|n]
y
User Responded with: Y
All checks passed.

로컬 시스템의 이 ORACLE_HOME에서 실행 중인 Oracle 인스턴스를 종료하십시오.
(Oracle 홈 = '/u01/app/11.2.0/grid')


로컬 시스템이 패치할 준비가 되었습니까? [y|n]
y
User Responded with: Y
Backing up files...
Applying sub-patch '17478514' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.sdo, 11.2.0.4.0 ] , [ oracle.sysman.agent, 10.2.0.4.5 ] , [ oracle.xdk, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sdo.locator, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.nlsrtl.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '18031668' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.precomp.common, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.crs, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf.ic, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.deconfig, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '18522509' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.precomp.common, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.deconfig, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '19121551' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.precomp.common, 11.2.0.4.0 ] , [ oracle.sysman.console.db, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ordim.client, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ordim.jai, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '19769489' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.precomp.common, 11.2.0.4.0 ] , [ oracle.ovm, 11.2.0.4.0 ] , [ oracle.xdk, 11.2.0.4.0 ] , [ oracle.oraolap, 11.2.0.4.0 ] , [ oracle.sysman.agent, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms.util, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.parser.java, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.deconfig, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '20299013' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.rdbms.dv, 11.2.0.4.0 ] , [ oracle.rdbms.oci, 11.2.0.4.0 ] , [ oracle.precomp.common, 11.2.0.4.0 ] , [ oracle.sysman.agent, 10.2.0.4.5 ] , [ oracle.xdk, 11.2.0.4.0 ] , [ oracle.sysman.console.db, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.sysman.common, 10.2.0.4.5 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.parser.java, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sysman.common.core, 10.2.0.4.5 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.deconfig, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '20760982' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.sysman.console.db, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '21352635' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.sysman.agent, 10.2.0.4.5 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '21948347' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.sysman.agent, 10.2.0.4.5 ] , [ oracle.ovm, 11.2.0.4.0 ] , [ oracle.xdk, 11.2.0.4.0 ] , [ oracle.tfa, 11.2.0.4.0 ] , [ oracle.sysman.console.db, 11.2.0.4.0 ] , [ oracle.sysman.oms.core, 10.2.0.4.5 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.nlsrtl.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.parser.java, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '22502456' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.precomp.common, 11.2.0.4.0 ] , [ oracle.tfa, 11.2.0.4.0 ] , [ oracle.rdbms.olap, 11.2.0.4.0 ] , [ oracle.oraolap, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.oraolap.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '23054359' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.rdbms.dv, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '24006111' to OH '/u01/app/11.2.0/grid'

oracle.sqlplus.ic, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sqlplus, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '24732075' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.precomp.common, 11.2.0.4.0 ] , [ oracle.sysman.plugin.db.main.agent, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.sqlplus.ic, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sqlplus, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.util, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ordim.client, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ordim.jai, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ordim.server, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '25869727' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.oid.client, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.ldap.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.oracore.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '26609445' to OH '/u01/app/11.2.0/grid'

oracle.oracore.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '26392168' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.sysman.agent, 10.2.0.4.5 ] , [ oracle.xdk, 11.2.0.4.0 ] , [ oracle.oid.client, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.network.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.client, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.network.listener, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.nlsrtl.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.parser.java, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '26925576' to OH '/u01/app/11.2.0/grid'

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '27338049' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.assistants.server, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '27734982' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.ctx, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ctx.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '28204707' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.sysman.agent, 10.2.0.4.5 ] , [ oracle.sysman.console.db, 11.2.0.4.0 ] , [ oracle.ctx, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.
Applying changes to emctl script on the home: /u01/app/11.2.0/grid ...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.oracore.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf.ic, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.network.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.security.osdt, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.owm, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sqlplus.rsf, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '28729262' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.ctx, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.
INFO: Script isn't applicable to this port!

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.util, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf.ic, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.network.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '29141056' to OH '/u01/app/11.2.0/grid'

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.oracore.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '29497421' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.ctx, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf.ic, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.oracore.rsf, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '29913194' to OH '/u01/app/11.2.0/grid'

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.network.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf.ic, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.util, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '30298532' to OH '/u01/app/11.2.0/grid'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.rdbms.tg4tera, 11.2.0.4.0 ] , [ oracle.rdbms.tg4sybs, 11.2.0.4.0 ] , [ oracle.rdbms.tg4ifmx, 11.2.0.4.0 ] , [ oracle.rdbms.tg4db2, 11.2.0.4.0 ] , [ oracle.rdbms.tg4msql, 11.2.0.4.0 ] , [ oracle.rdbms.hsodbc, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf.ic, 11.2.0.4.0 구성요소를 패치하는 중...
Composite patch 30298532 successfully applied.
Log file location: /u01/app/11.2.0/grid/cfgtoollogs/opatch/opatch2020-04-16_09-25-00오전_1.log

OPatch succeeded.


2번 노드 DB 패치 적용
db_env
<PSU 압축 해제 디렉토리>/30501155/<OCW PSU 번호>/custom/server/<OCW PSU 번호>/custom/scripts/prepatch.sh -dbhome $DB_HOME
$DB_HOME/OPatch/opatch napply -oh $DB_HOME -local <PSU 압축 해제 디렉토리>/30501155/<OCW PSU 번호>/custom/server/<OCW PSU 번호>
$DB_HOME/OPatch/opatch apply -oh $DB_HOME -local <PSU 압축 해제 디렉토리>/30501155/<DB PSU 번호>
<PSU 압축 해제 디렉토리>/30501155/<OCW PSU 번호>/custom/server/<OCW PSU 번호>/custom/scripts/postpatch.sh -dbhome $DB_HOME
[+ASM2:/home/oracle]> db_env

[racdb2:/home/oracle]> /media/sf_oracle/11.2/30501155/29938455/custom/server/29938455/custom/scripts/prepatch.sh -dbhome $DB_HOME
/media/sf_oracle/11.2/30501155/29938455/custom/server/29938455/custom/scripts/prepatch.sh completed successfully.

[racdb2:/home/oracle]> $DB_HOME/OPatch/opatch napply -oh $DB_HOME -local /media/sf_oracle/11.2/30501155/29938455/custom/server/29938455
Oracle Interim 패치 설치 프로그램 버전 11.2.0.3.23
Copyright (c) 2020, Oracle Corporation.  All rights reserved.


Oracle 홈: /u01/app/oracle/product/11.2.0/db_1
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/oracle/product/11.2.0/db_1/oraInst.loc
OPatch 버전: 11.2.0.3.23
OUI 버전: 11.2.0.4.0
로그 파일 위치: /u01/app/oracle/product/11.2.0/db_1/cfgtoollogs/opatch/opatch2020-04-16_09-29-21오전_1.log

Verifying environment and performing prerequisite checks...
OPatch continues with these patches:   29938455

계속하겠습니까? [y|n]
y
User Responded with: Y
All checks passed.

로컬 시스템의 이 ORACLE_HOME에서 실행 중인 Oracle 인스턴스를 종료하십시오.
(Oracle 홈 = '/u01/app/oracle/product/11.2.0/db_1')


로컬 시스템이 패치할 준비가 되었습니까? [y|n]
y
User Responded with: Y
Backing up files...
OH '/u01/app/oracle/product/11.2.0/db_1'에 Interim 패치 '29938455'을(를) 적용하는 중

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...
Patch 29938455 successfully applied.
Log file location: /u01/app/oracle/product/11.2.0/db_1/cfgtoollogs/opatch/opatch2020-04-16_09-29-21오전_1.log

OPatch succeeded.

[racdb2:/home/oracle]> $DB_HOME/OPatch/opatch apply -oh $DB_HOME -local /media/sf_oracle/11.2/30501155/30298532
Oracle Interim 패치 설치 프로그램 버전 11.2.0.3.23
Copyright (c) 2020, Oracle Corporation.  All rights reserved.


Oracle 홈: /u01/app/oracle/product/11.2.0/db_1
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/oracle/product/11.2.0/db_1/oraInst.loc
OPatch 버전: 11.2.0.3.23
OUI 버전: 11.2.0.4.0
로그 파일 위치: /u01/app/oracle/product/11.2.0/db_1/cfgtoollogs/opatch/opatch2020-04-16_09-29-48오전_1.log

Verifying environment and performing prerequisite checks...
OPatch continues with these patches:   17478514  18031668  18522509  19121551  19769489  20299013  20760982  21352635  21948347  22502456  23054359  24006111  24732075  25869727  26609445  26392168  26925576  27338049  27734982  28204707  28729262  29141056  29497421  29913194  30298532

계속하겠습니까? [y|n]
y
User Responded with: Y
All checks passed.

로컬 시스템의 이 ORACLE_HOME에서 실행 중인 Oracle 인스턴스를 종료하십시오.
(Oracle 홈 = '/u01/app/oracle/product/11.2.0/db_1')


로컬 시스템이 패치할 준비가 되었습니까? [y|n]
y
User Responded with: Y
Backing up files...
Applying sub-patch '17478514' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sdo, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sysman.agent, 10.2.0.4.5 구성요소를 패치하는 중...

oracle.xdk, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sdo.locator, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.nlsrtl.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '18031668' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.crs, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.precomp.common, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf.ic, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.deconfig, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '18522509' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.precomp.common, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.deconfig, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '19121551' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.precomp.common, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sysman.console.db, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ordim.client, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ordim.jai, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '19769489' to OH '/u01/app/oracle/product/11.2.0/db_1'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.sysman.agent, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.precomp.common, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ovm, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.util, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.parser.java, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.oraolap, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.deconfig, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '20299013' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.rdbms.dv, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.oci, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.precomp.common, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sysman.agent, 10.2.0.4.5 구성요소를 패치하는 중...

oracle.xdk, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sysman.common, 10.2.0.4.5 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.parser.java, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sysman.console.db, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sysman.common.core, 10.2.0.4.5 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.deconfig, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '20760982' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.sysman.console.db, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '21352635' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.sysman.agent, 10.2.0.4.5 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '21948347' to OH '/u01/app/oracle/product/11.2.0/db_1'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.tfa, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.sysman.agent, 10.2.0.4.5 구성요소를 패치하는 중...

oracle.ovm, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.nlsrtl.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.parser.java, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sysman.console.db, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sysman.oms.core, 10.2.0.4.5 구성요소를 패치하는 중...
Applying sub-patch '22502456' to OH '/u01/app/oracle/product/11.2.0/db_1'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.tfa, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.precomp.common, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.oraolap.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.olap, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.oraolap, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '23054359' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.rdbms.dv, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '24006111' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.sqlplus.ic, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sqlplus, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '24732075' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.precomp.common, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sysman.plugin.db.main.agent, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sqlplus.ic, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sqlplus, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.util, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ordim.client, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ordim.jai, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ordim.server, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '25869727' to OH '/u01/app/oracle/product/11.2.0/db_1'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.oid.client, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.ldap.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.oracore.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '26609445' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.oracore.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '26392168' to OH '/u01/app/oracle/product/11.2.0/db_1'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.oid.client, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.network.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.client, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sysman.agent, 10.2.0.4.5 구성요소를 패치하는 중...

oracle.xdk, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.network.listener, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.nlsrtl.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.parser.java, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.xdk.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '26925576' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '27338049' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.assistants.server, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '27734982' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.ctx, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ctx.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '28204707' to OH '/u01/app/oracle/product/11.2.0/db_1'
Applying changes to emctl script on the home: /u01/app/oracle/product/11.2.0/db_1 ...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.oracore.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf.ic, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.network.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sysman.agent, 10.2.0.4.5 구성요소를 패치하는 중...

oracle.sysman.console.db, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.security.osdt, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.owm, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.sqlplus.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ctx, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '28729262' to OH '/u01/app/oracle/product/11.2.0/db_1'
INFO: Script isn't applicable to this port!

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.util, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf.ic, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.network.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ctx, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '29141056' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.oracore.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '29497421' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf.ic, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.oracore.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ctx, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '29913194' to OH '/u01/app/oracle/product/11.2.0/db_1'

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.network.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf.ic, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.util, 11.2.0.4.0 구성요소를 패치하는 중...
Applying sub-patch '30298532' to OH '/u01/app/oracle/product/11.2.0/db_1'
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.rdbms.tg4tera, 11.2.0.4.0 ] , [ oracle.rdbms.tg4sybs, 11.2.0.4.0 ] , [ oracle.rdbms.tg4ifmx, 11.2.0.4.0 ] , [ oracle.rdbms.tg4db2, 11.2.0.4.0 ] , [ oracle.rdbms.tg4msql, 11.2.0.4.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.rdbms.hsodbc, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf, 11.2.0.4.0 구성요소를 패치하는 중...

oracle.ldap.rsf.ic, 11.2.0.4.0 구성요소를 패치하는 중...

OPatch가 make 명령의 stderr에서 단어 "warning"을(를) 찾았습니다.
이 stderr을 참조하십시오. 이 make 명령을 재실행할 수 있습니다.
Stderr output:
/bin/ld: warning: -z lazyload ignored.
/bin/ld: warning: -z nolazyload ignored.



OPatch가 make 명령의 stderr에서 단어 "warning"을(를) 찾았습니다.
이 stderr을 참조하십시오. 이 make 명령을 재실행할 수 있습니다.
Stderr output:
/bin/ld: warning: -z lazyload ignored.
/bin/ld: warning: -z nolazyload ignored.



OPatch가 make 명령의 stderr에서 단어 "warning"을(를) 찾았습니다.
이 stderr을 참조하십시오. 이 make 명령을 재실행할 수 있습니다.
Stderr output:
/bin/ld: warning: -z lazyload ignored.
/bin/ld: warning: -z nolazyload ignored.



OPatch가 make 명령의 stderr에서 단어 "warning"을(를) 찾았습니다.
이 stderr을 참조하십시오. 이 make 명령을 재실행할 수 있습니다.
Stderr output:
/bin/ld: warning: -z lazyload ignored.
/bin/ld: warning: -z nolazyload ignored.
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmeoci.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmeoci.so .so
+ libname=libnmeoci
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmeoci.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmeoci.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmeoci.so _LIBNAME=libnmeoci _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmeociLIBS)' '_LIBNAME_EXTRALIBS=$(libnmeociEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefw.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefw.so .so
+ libname=libnmefw
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefw.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefw.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefw.so _LIBNAME=libnmefw _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmefwLIBS)' '_LIBNAME_EXTRALIBS=$(libnmefwEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefos.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefos.so .so
+ libname=libnmefos
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefos.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefos.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefos.so _LIBNAME=libnmefos _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmefosLIBS)' '_LIBNAME_EXTRALIBS=$(libnmefosEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefsql.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefsql.so .so
+ libname=libnmefsql
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefsql.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefsql.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefsql.so _LIBNAME=libnmefsql _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmefsqlLIBS)' '_LIBNAME_EXTRALIBS=$(libnmefsqlEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefud.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefud.so .so
+ libname=libnmefud
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefud.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefud.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefud.so _LIBNAME=libnmefud _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmefudLIBS)' '_LIBNAME_EXTRALIBS=$(libnmefudEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefdms.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefdms.so .so
+ libname=libnmefdms
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefdms.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefdms.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefdms.so _LIBNAME=libnmefdms _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmefdmsLIBS)' '_LIBNAME_EXTRALIBS=$(libnmefdmsEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefojmx.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefojmx.so .so
+ libname=libnmefojmx
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefojmx.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefojmx.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefojmx.so _LIBNAME=libnmefojmx _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmefojmxLIBS)' '_LIBNAME_EXTRALIBS=$(libnmefojmxEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefut.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefut.so .so
+ libname=libnmefut
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefut.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefut.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefut.so _LIBNAME=libnmefut _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmefutLIBS)' '_LIBNAME_EXTRALIBS=$(libnmefutEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefvr.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefvr.so .so
+ libname=libnmefvr
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefvr.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefvr.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefvr.so _LIBNAME=libnmefvr _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmefvrLIBS)' '_LIBNAME_EXTRALIBS=$(libnmefvrEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefpfa.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefpfa.so .so
+ libname=libnmefpfa
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefpfa.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefpfa.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefpfa.so _LIBNAME=libnmefpfa _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmefpfaLIBS)' '_LIBNAME_EXTRALIBS=$(libnmefpfaEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmevq.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmevq.so .so
+ libname=libnmevq
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmevq.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmevq.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmevq.so _LIBNAME=libnmevq _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmevqLIBS)' '_LIBNAME_EXTRALIBS=$(libnmevqEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmevsp.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmevsp.so .so
+ libname=libnmevsp
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmevsp.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmevsp.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmevsp.so _LIBNAME=libnmevsp _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmevspLIBS)' '_LIBNAME_EXTRALIBS=$(libnmevspEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmevc.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmevc.so .so
+ libname=libnmevc
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmevc.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmevc.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmevc.so _LIBNAME=libnmevc _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmevcLIBS)' '_LIBNAME_EXTRALIBS=$(libnmevcEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmadbg.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmadbg.so .so
+ libname=libnmadbg
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmadbg.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmadbg.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmadbg.so _LIBNAME=libnmadbg _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmadbgLIBS)' '_LIBNAME_EXTRALIBS=$(libnmadbgEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmadm.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmadm.so .so
+ libname=libnmadm
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmadm.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmadm.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmadm.so _LIBNAME=libnmadm _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmadmLIBS)' '_LIBNAME_EXTRALIBS=$(libnmadmEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmalk.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmalk.so .so
+ libname=libnmalk
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmalk.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmalk.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmalk.so _LIBNAME=libnmalk _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmalkLIBS)' '_LIBNAME_EXTRALIBS=$(libnmalkEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmastk.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmastk.so .so
+ libname=libnmastk
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmastk.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmastk.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmastk.so _LIBNAME=libnmastk _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmastkLIBS)' '_LIBNAME_EXTRALIBS=$(libnmastkEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmasf.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmasf.so .so
+ libname=libnmasf
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmasf.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmasf.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmasf.so _LIBNAME=libnmasf _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmasfLIBS)' '_LIBNAME_EXTRALIBS=$(libnmasfEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmarl.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmarl.so .so
+ libname=libnmarl
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmarl.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmarl.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmarl.so _LIBNAME=libnmarl _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmarlLIBS)' '_LIBNAME_EXTRALIBS=$(libnmarlEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefsp.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefsp.so .so
+ libname=libnmefsp
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefsp.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefsp.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefsp.so _LIBNAME=libnmefsp _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmefspLIBS)' '_LIBNAME_EXTRALIBS=$(libnmefspEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefsqlt.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefsqlt.so .so
+ libname=libnmefsqlt
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefsqlt.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefsqlt.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefsqlt.so _LIBNAME=libnmefsqlt _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmefsqltLIBS)' '_LIBNAME_EXTRALIBS=$(libnmefsqltEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefport.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefport.so .so
+ libname=libnmefport
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefport.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefport.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmefport.so _LIBNAME=libnmefport _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmefportLIBS)' '_LIBNAME_EXTRALIBS=$(libnmefportEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmcfhc.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmcfhc.so .so
+ libname=libnmcfhc
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmcfhc.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmcfhc.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmcfhc.so _LIBNAME=libnmcfhc _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmcfhcLIBS)' '_LIBNAME_EXTRALIBS=$(libnmcfhcEXTRALIBS)'
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmcfsga.so
+ makefile=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
++ basename /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmcfsga.so .so
+ libname=libnmcfsga
++ dirname /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmcfsga.so
+ dir=/u01/app/oracle/product/11.2.0/db_1/sysman/lib
+ '[' var = new_ld_shlib ']'
+ '[' -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmcfsga.a ']'
+ dir2=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
+ '[' '' '!=' '' ']'
+ make -f /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/libnmcfsga.so _LIBNAME=libnmcfsga _LIBDIR=/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ '_LIBNAME_LIBS=$(libnmcfsgaLIBS)' '_LIBNAME_EXTRALIBS=$(libnmcfsgaEXTRALIBS)'
/bin/ld: warning: -z lazyload ignored.
/bin/ld: warning: -z nolazyload ignored.
/bin/ld: warning: -z lazyload ignored.
/bin/ld: warning: -z nolazyload ignored.
/bin/ld: warning: -z lazyload ignored.
/bin/ld: warning: -z nolazyload ignored.
/bin/ld: warning: -z lazyload ignored.
/bin/ld: warning: -z nolazyload ignored.
/bin/ld: warning: -z lazyload ignored.
/bin/ld: warning: -z nolazyload ignored.
/bin/ld: warning: -z lazyload ignored.
/bin/ld: warning: -z nolazyload ignored.
/bin/ld: warning: -z lazyload ignored.
/bin/ld: warning: -z nolazyload ignored.
/bin/ld: warning: -z lazyload ignored.
/bin/ld: warning: -z nolazyload ignored.
/bin/ld: warning: -z lazyload ignored.
/bin/ld: warning: -z nolazyload ignored.


Composite patch 30298532 successfully applied.
OPatch Session이 경고와 함께 완료되었습니다.
Log file location: /u01/app/oracle/product/11.2.0/db_1/cfgtoollogs/opatch/opatch2020-04-16_09-29-48오전_1.log

OPatch completed with warnings.

[racdb2:/home/oracle]> /media/sf_oracle/11.2/30501155/29938455/custom/server/29938455/custom/scripts/postpatch.sh -dbhome $DB_HOME
Reading /u01/app/oracle/product/11.2.0/db_1/install/params.ora..
Reading /u01/app/oracle/product/11.2.0/db_1/install/params.ora..
Parsing file /u01/app/oracle/product/11.2.0/db_1/bin/racgwrap
Parsing file /u01/app/oracle/product/11.2.0/db_1/bin/srvctl
Parsing file /u01/app/oracle/product/11.2.0/db_1/bin/srvconfig
Parsing file /u01/app/oracle/product/11.2.0/db_1/bin/cluvfy
Verifying file /u01/app/oracle/product/11.2.0/db_1/bin/racgwrap
Verifying file /u01/app/oracle/product/11.2.0/db_1/bin/srvctl
Verifying file /u01/app/oracle/product/11.2.0/db_1/bin/srvconfig
Verifying file /u01/app/oracle/product/11.2.0/db_1/bin/cluvfy
Reapplying file permissions on /u01/app/oracle/product/11.2.0/db_1/bin/racgwrap
Reapplying file permissions on /u01/app/oracle/product/11.2.0/db_1/bin/srvctl
Reapplying file permissions on /u01/app/oracle/product/11.2.0/db_1/bin/srvconfig
Reapplying file permissions on /u01/app/oracle/product/11.2.0/db_1/bin/cluvfy
Reapplying file permissions on /u01/app/oracle/product/11.2.0/db_1/bin/diskmon.bin
Reapplying file permissions on /u01/app/oracle/product/11.2.0/db_1/bin/lsnodes
Reapplying file permissions on /u01/app/oracle/product/11.2.0/db_1/bin/osdbagrp
Reapplying file permissions on /u01/app/oracle/product/11.2.0/db_1/bin/rawutl
Reapplying file permissions on /u01/app/oracle/product/11.2.0/db_1/srvm/admin/ractrans
Reapplying file permissions on /u01/app/oracle/product/11.2.0/db_1/srvm/admin/getcrshome
Reapplying file permissions on /u01/app/oracle/product/11.2.0/db_1/bin/gnsd
Reapplying file permissions on /u01/app/oracle/product/11.2.0/db_1/bin/crsdiag.pl
Postpatch completed successfully

1번 노드와 마찬가지로 DB PSU 패치시에 나오는 경고는 무시해도 됩니다.

2번 노드 root 스크립트 실행
$GRID_HOME/rdbms/install/rootadd_rdbms.sh
$GRID_HOME/perl/bin/perl $GRID_HOME/crs/install/rootcrs.pl -patch
[root@rac2 ~]# $GRID_HOME/rdbms/install/rootadd_rdbms.sh

[root@rac2 ~]# $GRID_HOME/perl/bin/perl $GRID_HOME/crs/install/rootcrs.pl -patch
Using configuration parameter file: /u01/app/11.2.0/grid/crs/install/crsconfig_params
Installing Trace File Analyzer
CRS-4123: Oracle High Availability Services has been started.


2번 노드 패치 결과 확인
grid_env
opatch lspatches
db_env
opatch lspatches
[racdb2:/home/oracle]> grid_env

[+ASM2:/home/oracle]> opatch lspatches
30298532;Database Patch Set Update : 11.2.0.4.200114 (30298532)
29509309;ACFS Patch Set Update : 11.2.0.4.190716 (29509309)
29938455;OCW Patch Set Update : 11.2.0.4.191015 (29938455)

OPatch succeeded.

[+ASM2:/home/oracle]> db_env

[racdb2:/home/oracle]> opatch lspatches
30298532;Database Patch Set Update : 11.2.0.4.200114 (30298532)
29938455;OCW Patch Set Update : 11.2.0.4.191015 (29938455)

OPatch succeeded.


E) Database에 PSU 적용

데이터베이스에 PSU 패치 적용
@?/rdbms/admin/catbundle.sql psu apply
@?/rdbms/admin/utlrp.sql
[racdb1:/home/oracle]> sqlplus / as sysdba

SQL*Plus: Release 11.2.0.4.0 Production on Thu Apr 16 09:49:29 2020

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


Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, Real Application Clusters, OLAP, Data Mining
and Real Application Testing options

SQL> col ACTION_TIME form a30
SQL> col ACTION form a10
SQL> col VERSION form a10
SQL> col COMMENTS form a20
SQL> select ACTION_TIME, ACTION, VERSION, COMMENTS from REGISTRY$HISTORY;

ACTION_TIME                    ACTION     VERSION    COMMENTS
------------------------------ ---------- ---------- --------------------
20/04/14 16:06:47.563599       APPLY      11.2.0.4   Patchset 11.2.0.2.0

SQL> @?/rdbms/admin/catbundle.sql psu apply

PL/SQL procedure successfully completed.


Function created.


Function created.


PL/SQL procedure successfully completed.







PL/SQL procedure successfully completed.





Generating apply and rollback scripts...
Check the following file for errors:
/u01/app/oracle/cfgtoollogs/catbundle/catbundle_PSU_RACDB_GENERATE_2020Apr16_09_52_12.log
Apply script: /u01/app/oracle/product/11.2.0/db_1/rdbms/admin/catbundle_PSU_RACDB_APPLY.sql
Rollback script: /u01/app/oracle/product/11.2.0/db_1/rdbms/admin/catbundle_PSU_RACDB_ROLLBACK.sql

PL/SQL procedure successfully completed.

Executing script file...

...  << 생략 >> ...

SQL> ALTER SESSION SET current_schema = SYS;

Session altered.

SQL> PROMPT Updating registry...
Updating registry...
SQL> INSERT INTO registry$history
  2    (action_time, action,
  3     namespace, version, id,
  4     bundle_series, comments)
  5  VALUES
  6    (SYSTIMESTAMP, 'APPLY',
  7     SYS_CONTEXT('REGISTRY$CTX','NAMESPACE'),
  8     '11.2.0.4',
  9     200114,
 10     'PSU',
 11     'PSU 11.2.0.4.200114');

1 row created.

SQL> COMMIT;

Commit complete.

SQL> SPOOL off
SQL> SET echo off
Check the following log file for errors:
/u01/app/oracle/cfgtoollogs/catbundle/catbundle_PSU_RACDB_APPLY_2020Apr16_09_52_16.log
SQL> @?/rdbms/admin/utlrp.sql

TIMESTAMP
--------------------------------------------------------------------------------
COMP_TIMESTAMP UTLRP_BGN  2020-04-16 09:57:31

1 row selected.

DOC>   The following PL/SQL block invokes UTL_RECOMP to recompile invalid
DOC>   objects in the database. Recompilation time is proportional to the
DOC>   number of invalid objects in the database, so this command may take
DOC>   a long time to execute on a database with a large number of invalid
DOC>   objects.
DOC>
DOC>   Use the following queries to track recompilation progress:
DOC>
DOC>   1. Query returning the number of invalid objects remaining. This
DOC>      number should decrease with time.
DOC>         SELECT COUNT(*) FROM obj$ WHERE status IN (4, 5, 6);
DOC>
DOC>   2. Query returning the number of objects compiled so far. This number
DOC>      should increase with time.
DOC>         SELECT COUNT(*) FROM UTL_RECOMP_COMPILED;
DOC>
DOC>   This script automatically chooses serial or parallel recompilation
DOC>   based on the number of CPUs available (parameter cpu_count) multiplied
DOC>   by the number of threads per CPU (parameter parallel_threads_per_cpu).
DOC>   On RAC, this number is added across all RAC nodes.
DOC>
DOC>   UTL_RECOMP uses DBMS_SCHEDULER to create jobs for parallel
DOC>   recompilation. Jobs are created without instance affinity so that they
DOC>   can migrate across RAC nodes. Use the following queries to verify
DOC>   whether UTL_RECOMP jobs are being created and run correctly:
DOC>
DOC>   1. Query showing jobs created by UTL_RECOMP
DOC>         SELECT job_name FROM dba_scheduler_jobs
DOC>            WHERE job_name like 'UTL_RECOMP_SLAVE_%';
DOC>
DOC>   2. Query showing UTL_RECOMP jobs that are running
DOC>         SELECT job_name FROM dba_scheduler_running_jobs
DOC>            WHERE job_name like 'UTL_RECOMP_SLAVE_%';
DOC>#

PL/SQL procedure successfully completed.


TIMESTAMP
--------------------------------------------------------------------------------
COMP_TIMESTAMP UTLRP_END  2020-04-16 09:57:37

1 row selected.

DOC> The following query reports the number of objects that have compiled
DOC> with errors.
DOC>
DOC> If the number is higher than expected, please examine the error
DOC> messages reported with each object (using SHOW ERRORS) to see if they
DOC> point to system misconfiguration or resource constraints that must be
DOC> fixed before attempting to recompile these objects.
DOC>#

OBJECTS WITH ERRORS
-------------------
                  0

1 row selected.

DOC> The following query reports the number of errors caught during
DOC> recompilation. If this number is non-zero, please query the error
DOC> messages in the table UTL_RECOMP_ERRORS to see if any of these errors
DOC> are due to misconfiguration or resource constraints that must be
DOC> fixed before objects can compile successfully.
DOC>#

ERRORS DURING RECOMPILATION
---------------------------
                          0

1 row selected.


Function created.


PL/SQL procedure successfully completed.


Function dropped.


PL/SQL procedure successfully completed.


데이터베이스 PSU 패치 결과 확인
select ACTION_TIME, ACTION, VERSION, COMMENTS from REGISTRY$HISTORY;
QL> select ACTION_TIME, ACTION, VERSION, COMMENTS from REGISTRY$HISTORY;

ACTION_TIME                    ACTION     VERSION    COMMENTS
------------------------------ ---------- ---------- --------------------
20/04/14 16:06:47.563599       APPLY      11.2.0.4   Patchset 11.2.0.2.0
20/04/16 09:55:09.998487       APPLY      11.2.0.4   PSU 11.2.0.4.200114

2 rows selected.

SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, Real Application Clusters, OLAP, Data Mining
and Real Application Testing options
[racdb1:/home/oracle]>


2. ASM 구성


A) ASM 인스턴스 및 디스크 그룹 생성

ASM 인스턴스 및 디스크 그룹 생성
grid_env
asmca -silent -configureASM -sysAsmPassword <SYSASM 암호> -asmsnmpPassword <ASMSNMP 암호> -diskString 'ORCL:*' -diskGroupName CRS -diskList 'ORCL:CRS1,ORCL:CRS2,ORCL:CRS3' -redundancy NORMAL
[racdb1:/home/oracle]> grid_env

[+ASM1:/home/oracle]> asmca -silent -configureASM -sysAsmPassword oracle_4U -asmsnmpPassword oracle_4U -diskString 'ORCL:*' -diskGroupName CRS -diskList 'ORCL:CRS1,ORCL:CRS2,ORCL:CRS3' -redundancy NORMAL

ASM이 성공적으로 생성되고 시작되었습니다.

디스크 그룹 CRS이(가) 성공적으로 생성되었습니다.

[+ASM1:/home/oracle]> asmcmd lsdg
State    Type    Rebal  Sector  Block       AU  Total_MB  Free_MB  Req_mir_free_MB  Usable_file_MB  Offline_disks  Voting_files  Name
MOUNTED  NORMAL  N         512   4096  1048576      3069     2764             1023             870              0             N  CRS/


DATA 및 FRA 디스크 그룹 추가 생성
asmca -silent -createDiskGroup -diskString 'ORCL:*' -diskGroupName DATA -disk 'ORCL:DATA' -redundancy EXTERNAL
asmca -silent -createDiskGroup -diskString 'ORCL:*' -diskGroupName FRA -disk 'ORCL:FRA' -redundancy EXTERNAL
[+ASM1:/home/oracle]> asmca -silent -createDiskGroup -diskString 'ORCL:*' -diskGroupName DATA -disk 'ORCL:DATA' -redundancy EXTERNAL

디스크 그룹 DATA이(가) 성공적으로 생성되었습니다.

[+ASM1:/home/oracle]> asmca -silent -createDiskGroup -diskString 'ORCL:*' -diskGroupName FRA -disk 'ORCL:FRA' -redundancy EXTERNAL

디스크 그룹 FRA이(가) 성공적으로 생성되었습니다.

[+ASM1:/home/oracle]> asmcmd lsdg
State    Type    Rebal  Sector  Block       AU  Total_MB  Free_MB  Req_mir_free_MB  Usable_file_MB  Offline_disks  Voting_files  Name
MOUNTED  NORMAL  N         512   4096  1048576      3069     2764             1023             870              0             N  CRS/
MOUNTED  EXTERN  N         512   4096  1048576     30719    30624                0           30624              0             N  DATA/
MOUNTED  EXTERN  N         512   4096  1048576     20479    20384                0           20384              0             N  FRA/


B) CRS 및 Vote 영역 ASM으로 이관

ASM으로 OCR 영역 이관
ocrconfig -add +CRS
ocrconfig -delete /dev/raw/raw1
ocrconfig -delete /dev/raw/raw2
ocrcheck
[root@rac1 ~]# ocrcheck
Status of Oracle Cluster Registry is as follows :
         Version                  :          3
         Total space (kbytes)     :     262120
         Used space (kbytes)      :       3020
         Available space (kbytes) :     259100
         ID                       :  934357259
         Device/File Name         : /dev/raw/raw1
                                    Device/File integrity check succeeded
         Device/File Name         : /dev/raw/raw2
                                    Device/File integrity check succeeded

                                    Device/File not configured

                                    Device/File not configured

                                    Device/File not configured

         Cluster registry integrity check succeeded

         Logical corruption check succeeded

[root@rac1 ~]# ocrconfig -add +CRS

[root@rac1 ~]# ocrconfig -delete /dev/raw/raw1

[root@rac1 ~]# ocrconfig -delete /dev/raw/raw2

[root@rac1 ~]# ocrcheck
Status of Oracle Cluster Registry is as follows :
         Version                  :          3
         Total space (kbytes)     :     262120
         Used space (kbytes)      :       3020
         Available space (kbytes) :     259100
         ID                       :  934357259
         Device/File Name         :       +CRS
                                    Device/File integrity check succeeded

                                    Device/File not configured

                                    Device/File not configured

                                    Device/File not configured

                                    Device/File not configured

         Cluster registry integrity check succeeded

         Logical corruption check succeeded


ASM으로 Vote 영역 이관
crsctl replace votedisk +CRS
crsctl query css votedisk
[root@rac1 ~]# crsctl query css votedisk
##  STATE    File Universal Id                File Name Disk group
--  -----    -----------------                --------- ---------
 1. ONLINE   a4c3ccb126b64f4dbf3d89ae84d163a2 (/dev/raw/raw3) []
 2. ONLINE   31693ea2d7774f83bfd26b71d8173078 (/dev/raw/raw4) []
 3. ONLINE   7527b0194b634f7abfbc3c3501a8a6f4 (/dev/raw/raw5) []
Located 3 voting disk(s).

[root@rac1 ~]# crsctl replace votedisk +CRS
CRS-4256: Updating the profile
Successful addition of voting disk d10cbc0b84bb4fa1bf868c98b6cb9463.
Successful addition of voting disk 6d485ec847b34f48bf3cd1462e0ba114.
Successful addition of voting disk e42528b7cab34f88bf51951976a27e4a.
Successful deletion of voting disk a4c3ccb126b64f4dbf3d89ae84d163a2.
Successful deletion of voting disk 31693ea2d7774f83bfd26b71d8173078.
Successful deletion of voting disk 7527b0194b634f7abfbc3c3501a8a6f4.
Successfully replaced voting disk group with +CRS.
CRS-4256: Updating the profile
CRS-4266: Voting file(s) successfully replaced

[root@rac1 ~]# crsctl query css votedisk
##  STATE    File Universal Id                File Name Disk group
--  -----    -----------------                --------- ---------
 1. ONLINE   d10cbc0b84bb4fa1bf868c98b6cb9463 (ORCL:CRS1) [CRS]
 2. ONLINE   6d485ec847b34f48bf3cd1462e0ba114 (ORCL:CRS2) [CRS]
 3. ONLINE   e42528b7cab34f88bf51951976a27e4a (ORCL:CRS3) [CRS]
Located 3 voting disk(s).


C) ASM 호환성 변경

ASM 호환성 변경
asmcmd setattr -G CRS compatible.asm 11.2.0.2.0
asmcmd setattr -G DATA compatible.asm 11.2.0.2.0
asmcmd setattr -G FRA compatible.asm 11.2.0.2.0
asmcmd lsattr -G CRS -lm compatible.asm
asmcmd lsattr -G DATA -lm compatible.asm
asmcmd lsattr -G FRA -lm compatible.asm
[+ASM1:/home/oracle]> asmcmd lsattr -G CRS -lm compatible.asm
Group_Name  Name            Value       RO  Sys
CRS         compatible.asm  11.2.0.0.0  N   Y

[+ASM1:/home/oracle]> asmcmd lsattr -G DATA -lm compatible.asm
Group_Name  Name            Value       RO  Sys
DATA        compatible.asm  11.2.0.0.0  N   Y

[+ASM1:/home/oracle]> asmcmd lsattr -G FRA -lm compatible.asm
Group_Name  Name            Value       RO  Sys
FRA         compatible.asm  11.2.0.0.0  N   Y

[+ASM1:/home/oracle]> asmcmd setattr -G CRS compatible.asm 11.2.0.2.0
[+ASM1:/home/oracle]> asmcmd setattr -G DATA compatible.asm 11.2.0.2.0
[+ASM1:/home/oracle]> asmcmd setattr -G FRA compatible.asm 11.2.0.2.0

[+ASM1:/home/oracle]> asmcmd lsattr -G CRS -lm compatible.asm
Group_Name  Name            Value       RO  Sys
CRS         compatible.asm  11.2.0.2.0  N   Y

[+ASM1:/home/oracle]> asmcmd lsattr -G DATA -lm compatible.asm
Group_Name  Name            Value       RO  Sys
DATA        compatible.asm  11.2.0.2.0  N   Y

[+ASM1:/home/oracle]> asmcmd lsattr -G FRA -lm compatible.asm
Group_Name  Name            Value       RO  Sys
FRA         compatible.asm  11.2.0.2.0  N   Y

11g R2의 ASM을 19c로 업그레이드 하기 위해서는 ASM의 최소 호환성은 11.2.0.2 이상이어야 합니다.

3. ASM으로 Database 이관

A) 사전 현황 조사

데이터 파일 현황 조사
select TABLESPACE_NAME, FILE_NAME, BYTES/1024/1024 MB 
from DBA_DATA_FILES;
SQL> col TABLESPACE_NAME form a20
SQL> col FILE_NAME form a20
SQL> col MB form 999,999

SQL> select TABLESPACE_NAME, FILE_NAME, BYTES/1024/1024 MB from DBA_DATA_FILES;

TABLESPACE FILE_NAME                  MB
---------- -------------------- --------
SYSTEM     /dev/raw/raw6           1,000
SYSAUX     /dev/raw/raw7           1,000
UNDOTBS1   /dev/raw/raw10          1,000
UNDOTBS2   /dev/raw/raw11          1,000
USERS      /dev/raw/raw8             500


임시 파일 현황 조사
select NAME, BYTES/1024/1024 MB 
from V$TEMPFILE;
SQL> col NAME form a20
SQL> col MB form 999,999

SQL> select NAME, BYTES/1024/1024 MB from V$TEMPFILE;

NAME                       MB
-------------------- --------
/dev/raw/raw9             699


컨트롤 파일 현황 조사
select NAME
from V$CONTROLFILE;
SQL> col NAME form a20

SQL> select NAME from V$CONTROLFILE;

NAME
--------------------
/dev/raw/raw12
/dev/raw/raw13


Redo Log 현황 조사
select GROUP#, MEMBER 
from V$LOGFILE;
SQL> col MEMBER form a20

SQL> select GROUP#, MEMBER from V$LOGFILE;

    GROUP# MEMBER
---------- --------------------
         1 /dev/raw/raw14
         2 /dev/raw/raw15
         3 /dev/raw/raw16
         4 /dev/raw/raw17
         5 /dev/raw/raw18
         6 /dev/raw/raw19

6 rows selected.


B) Archive 모드 확인

운영 모드 현황 조사
archive log list;
SQL> archive log list;
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence     18
Next log sequence to archive   20
Current log sequence           20


C) Data File 이관 준비

RMAN으로 Database를 ASM 영역으로 복사
backup as copy database format '+DATA';


[racdb1:/home/oracle]> rman target /

Recovery Manager: Release 11.2.0.4.0 - Production on Thu Apr 16 11:32:09 2020

Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.

connected to target database: RACDB (DBID=1035336379)

RMAN> backup as copy database format '+DATA';

Starting backup at 20/04/16
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=23 instance=racdb1 device type=DISK
channel ORA_DISK_1: starting datafile copy
input datafile file number=00001 name=/dev/raw/raw6
output file name=+DATA/racdb/datafile/system.256.1037878345 tag=TAG20200416T113220 RECID=1 STAMP=1037878349
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:15
channel ORA_DISK_1: starting datafile copy
input datafile file number=00002 name=/dev/raw/raw7
output file name=+DATA/racdb/datafile/sysaux.257.1037878355 tag=TAG20200416T113220 RECID=2 STAMP=1037878361
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:07
channel ORA_DISK_1: starting datafile copy
input datafile file number=00003 name=/dev/raw/raw10
output file name=+DATA/racdb/datafile/undotbs1.258.1037878363 tag=TAG20200416T113220 RECID=3 STAMP=1037878368
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:07
channel ORA_DISK_1: starting datafile copy
input datafile file number=00004 name=/dev/raw/raw11
output file name=+DATA/racdb/datafile/undotbs2.259.1037878371 tag=TAG20200416T113220 RECID=4 STAMP=1037878376
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:07
channel ORA_DISK_1: starting datafile copy
input datafile file number=00005 name=/dev/raw/raw8
output file name=+DATA/racdb/datafile/users.260.1037878377 tag=TAG20200416T113220 RECID=5 STAMP=1037878380
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:07
channel ORA_DISK_1: starting datafile copy
copying current control file
output file name=+DATA/racdb/controlfile/backup.261.1037878385 tag=TAG20200416T113220 RECID=6 STAMP=1037878385
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:01
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
including current SPFILE in backup set
channel ORA_DISK_1: starting piece 1 at 20/04/16
channel ORA_DISK_1: finished piece 1 at 20/04/16
piece handle=+DATA/racdb/backupset/2020_04_16/nnsnf0_tag20200416t113220_0.262.1037878387 tag=TAG20200416T113220 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
Finished backup at 20/04/16

RMAN> exit


Recovery Manager complete.


ASM 사용을 위한 Database 파라미터 변경
alter system set db_recovery_file_dest='+FRA' sid='*';
alter system set db_create_file_dest='+DATA' sid='*';
SQL> alter system set db_recovery_file_dest='+FRA' sid='*';

System altered.

SQL> alter system set db_create_file_dest='+DATA' sid='*';

System altered.


D) 파라미터 파일 ASM으로 이관

파라미터 파일 ASM 영역으로 이관
create pfile='$ORACLE_HOME/dbs/initracdb.ora' from spfile;
create spfile='+DATA/RACDB/spfileracdb.ora' from pfile='$ORACLE_HOME/dbs/initracdb.ora';
SQL> create pfile='$ORACLE_HOME/dbs/initracdb.ora' from spfile;

File created.

SQL> create spfile='+DATA/RACDB/spfileracdb.ora' from pfile='$ORACLE_HOME/dbs/initracdb.ora';

File created.


파라미터 파일 변경 및 1번 노드 파일 수정
srvctl modify database -d racdb -p +DATA/RACDB/spfileracdb.ora
mv $DB_HOME/dbs/initracdb1.ora $DB_HOME/dbs/initracdb1.ora.raw
echo "spfile='+DATA/RACDB/spfileracdb.ora'" > $DB_HOME/dbs/initracdb1.ora
[racdb1:/home/oracle]> srvctl modify database -d racdb -p +DATA/RACDB/spfileracdb.ora

[racdb1:/home/oracle]> mv $DB_HOME/dbs/initracdb1.ora $DB_HOME/dbs/initracdb1.ora.raw

[racdb1:/home/oracle]> echo "spfile='+DATA/RACDB/spfileracdb.ora'" > $DB_HOME/dbs/initracdb1.ora

[racdb1:/home/oracle]> cat $DB_HOME/dbs/initracdb1.ora
spfile='+DATA/RACDB/spfileracdb.ora'


2번 노드 파라미터 파일 수정
mv $DB_HOME/dbs/initracdb2.ora $DB_HOME/dbs/initracdb2.ora.raw
echo "spfile='+DATA/RACDB/spfileracdb.ora'" > $DB_HOME/dbs/initracdb2.ora
[racdb2:/home/oracle]> mv $DB_HOME/dbs/initracdb2.ora $DB_HOME/dbs/initracdb2.ora.raw

[racdb2:/home/oracle]> echo "spfile='+DATA/RACDB/spfileracdb.ora'" > $DB_HOME/dbs/initracdb2.ora

[racdb2:/home/oracle]> cat $DB_HOME/dbs/initracdb2.ora
spfile='+DATA/RACDB/spfileracdb.ora'


모든 노드 중지 후 1번 노드만 기동
srvctl stop database -d racdb -o immediate
srvctl start instance -d racdb -i racdb1 -o mount
[racdb1:/home/oracle]> srvctl stop database -d racdb -o immediate

[racdb1:/home/oracle]> srvctl start instance -d racdb -i racdb1 -o mount

[racdb1:/home/oracle]> crsctl stat res -t
--------------------------------------------------------------------------------
NAME           TARGET  STATE        SERVER                   STATE_DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.LISTENER.lsnr
               ONLINE  ONLINE       rac1
               ONLINE  ONLINE       rac2
ora.gsd
               OFFLINE OFFLINE      rac1
               OFFLINE OFFLINE      rac2
ora.net1.network
               ONLINE  ONLINE       rac1
               ONLINE  ONLINE       rac2
ora.ons
               ONLINE  ONLINE       rac1
               ONLINE  ONLINE       rac2
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       rac2
ora.LISTENER_SCAN2.lsnr
      1        ONLINE  ONLINE       rac1
ora.LISTENER_SCAN3.lsnr
      1        ONLINE  ONLINE       rac1
ora.cvu
      1        ONLINE  ONLINE       rac1
ora.oc4j
      1        ONLINE  ONLINE       rac1
ora.rac1.vip
      1        ONLINE  ONLINE       rac1
ora.rac2.vip
      1        ONLINE  ONLINE       rac2
ora.racdb.db
      1        ONLINE  INTERMEDIATE rac1                     Mounted (Closed)
      2        OFFLINE OFFLINE                               Instance Shutdown
ora.scan1.vip
      1        ONLINE  ONLINE       rac2
ora.scan2.vip
      1        ONLINE  ONLINE       rac1
ora.scan3.vip
      1        ONLINE  ONLINE       rac1

ASM 영역으로 이관된 파라미터 파일을 적용하기 위해 데이터베이스를 재기동해야 합니다.

우선은 다른 파일들도 이관을 해야 하므로 1번 노드의 데이터베이스만 기동합니다.

E) 컨트롤 파일 ASM으로 이관

콘트롤 파일 위치 변경 및 No Mount 모드로 기동
alter system set control_files='+DATA','+FRA' sid='*' scope=spfile;
startup force nomount;
SQL> alter system set control_files='+DATA','+FRA' sid='*' scope=spfile;

System altered.

SQL> startup force nomount;
ORACLE instance started.

Total System Global Area 3206836224 bytes
Fixed Size                  2257520 bytes
Variable Size             721423760 bytes
Database Buffers         2466250752 bytes
Redo Buffers               16904192 bytes

Raw Device에 있는 컨트롤 파일을 이관하기 위해 컨트롤 파일의 위치 파라미터를 수정하고, 데이터베이스를 No Mount 모드로 전환합니다.

ASM 영역으로 컨트롤 파일 이관 및 적용
restore controlfile from '/dev/raw/raw12';
alter database mount;
[oracle@rac1 ~]$ rman target /

Recovery Manager: Release 11.2.0.4.0 - Production on Thu Apr 16 11:37:55 2020

Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.

connected to target database: RACDB (not mounted)

RMAN> restore controlfile from '/dev/raw/raw12';

Starting restore at 20/04/16
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=141 instance=racdb1 device type=DISK

channel ORA_DISK_1: copied control file copy
output file name=+DATA/racdb/controlfile/current.264.1037878683
output file name=+FRA/racdb/controlfile/current.256.1037878683
Finished restore at 20/04/16

RMAN> alter database mount;

database mounted
released channel: ORA_DISK_1


F) 데이터 파일 ASM 복제본으로 이관

ASM 영역의 데이터 파일로 이관
switch database to copy;
recover database;
alter database open;
shutdown immediate


RMAN> switch database to copy;

datafile 1 switched to datafile copy "+DATA/racdb/datafile/system.256.1037878345"
datafile 2 switched to datafile copy "+DATA/racdb/datafile/sysaux.257.1037878355"
datafile 3 switched to datafile copy "+DATA/racdb/datafile/undotbs1.258.1037878363"
datafile 4 switched to datafile copy "+DATA/racdb/datafile/undotbs2.259.1037878371"
datafile 5 switched to datafile copy "+DATA/racdb/datafile/users.260.1037878377"

RMAN> recover database;

Starting recover at 20/04/16
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=141 instance=racdb1 device type=DISK

starting media recovery
media recovery complete, elapsed time: 00:00:00

Finished recover at 20/04/16

RMAN> alter database open;

database opened

RMAN> shutdown immediate

using target database control file instead of recovery catalog
database closed
database dismounted
Oracle instance shut down

RMAN> exit


Recovery Manager complete.


전체 노드 대상으로 데이터베이스 기동
srvctl start database -d racdb
[racdb1:/home/oracle]> srvctl start database -d racdb

[racdb1:/home/oracle]> crsctl stat res -t
--------------------------------------------------------------------------------
NAME           TARGET  STATE        SERVER                   STATE_DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.CRS.dg
               ONLINE  ONLINE       rac1
               ONLINE  ONLINE       rac2
ora.DATA.dg
               ONLINE  ONLINE       rac1
               ONLINE  ONLINE       rac2
ora.FRA.dg
               ONLINE  ONLINE       rac1
               ONLINE  ONLINE       rac2
ora.LISTENER.lsnr
               ONLINE  ONLINE       rac1
               ONLINE  ONLINE       rac2
ora.asm
               ONLINE  ONLINE       rac1                     Started
               ONLINE  ONLINE       rac2                     Started
ora.gsd
               OFFLINE OFFLINE      rac1
               OFFLINE OFFLINE      rac2
ora.net1.network
               ONLINE  ONLINE       rac1
               ONLINE  ONLINE       rac2
ora.ons
               ONLINE  ONLINE       rac1
               ONLINE  ONLINE       rac2
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       rac2
ora.LISTENER_SCAN2.lsnr
      1        ONLINE  ONLINE       rac1
ora.LISTENER_SCAN3.lsnr
      1        ONLINE  ONLINE       rac1
ora.cvu
      1        ONLINE  ONLINE       rac1
ora.oc4j
      1        ONLINE  ONLINE       rac1
ora.rac1.vip
      1        ONLINE  ONLINE       rac1
ora.rac2.vip
      1        ONLINE  ONLINE       rac2
ora.racdb.db
      1        ONLINE  ONLINE       rac1                     Open
      2        ONLINE  ONLINE       rac2                     Open
ora.scan1.vip
      1        ONLINE  ONLINE       rac2
ora.scan2.vip
      1        ONLINE  ONLINE       rac1
ora.scan3.vip
      1        ONLINE  ONLINE       rac1


임시 파일 ASM 영역으로 재생성
alter database tempfile '/dev/raw/raw9' drop;
alter tablespace TEMP add tempfile size 100m autoextend on maxsize 1G;
SQL> alter database tempfile '/dev/raw/raw9' drop;

Database altered.

SQL> alter tablespace TEMP add tempfile size 100m autoextend on maxsize 1G;

Tablespace altered.

SQL> col NAME form a50
SQL> select NAME from V$TEMPFILE;

NAME
--------------------------------------------------
+DATA/racdb/tempfile/temp.265.1037878839


G) ASM 영역으로 Redo Log 이관

ASM 영역으로 Redo Log 맴버 추가
alter database add logfile member '+DATA' to group 1;
alter database add logfile member '+DATA' to group 2;
alter database add logfile member '+DATA' to group 3;
alter database add logfile member '+DATA' to group 4;
alter database add logfile member '+DATA' to group 5;
alter database add logfile member '+DATA' to group 6;
alter database add logfile member '+FRA' to group 1;
alter database add logfile member '+FRA' to group 2;
alter database add logfile member '+FRA' to group 3;
alter database add logfile member '+FRA' to group 4;
alter database add logfile member '+FRA' to group 5;
alter database add logfile member '+FRA' to group 6;
SQL> alter database add logfile member '+DATA' to group 1;

Database altered.

SQL> alter database add logfile member '+DATA' to group 2;

Database altered.

SQL> alter database add logfile member '+DATA' to group 3;

Database altered.

SQL> alter database add logfile member '+DATA' to group 4;

Database altered.

SQL> alter database add logfile member '+DATA' to group 5;

Database altered.

SQL> alter database add logfile member '+DATA' to group 6;

Database altered.

SQL> alter database add logfile member '+FRA' to group 1;

Database altered.

SQL> alter database add logfile member '+FRA' to group 2;

Database altered.

SQL> alter database add logfile member '+FRA' to group 3;

Database altered.

SQL> alter database add logfile member '+FRA' to group 4;

Database altered.

SQL> alter database add logfile member '+FRA' to group 5;

Database altered.

SQL> alter database add logfile member '+FRA' to group 6;

Database altered.

SQL> set lines 200
SQL> set pages 100
SQL> col MEMBER form a50
SQL> col MEMBER form a50
SQL> col LOG_STATUS form a12
SQL> col FILE_STATUS form a12
SQL> select a.GROUP#, THREAD#, a.STATUS file_status, b.STATUS log_status, MEMBER
  2   from V$LOGFILE a, V$LOG b
  3   where a.GROUP# = b.GROUP#
  4   order by GROUP#, MEMBER;

    GROUP#    THREAD# FILE_STATUS  LOG_STATUS   MEMBER
---------- ---------- ------------ ------------ --------------------------------------------------
         1          1 INVALID      INACTIVE     +DATA/racdb/onlinelog/group_1.266.1037879561
         1          1 INVALID      INACTIVE     +FRA/racdb/onlinelog/group_1.257.1037879581
         1          1              INACTIVE     /dev/raw/raw14
         2          1 INVALID      CURRENT      +DATA/racdb/onlinelog/group_2.267.1037879565
         2          1 INVALID      CURRENT      +FRA/racdb/onlinelog/group_2.258.1037879585
         2          1              CURRENT      /dev/raw/raw15
         3          1 INVALID      INACTIVE     +DATA/racdb/onlinelog/group_3.268.1037879569
         3          1 INVALID      INACTIVE     +FRA/racdb/onlinelog/group_3.259.1037879587
         3          1              INACTIVE     /dev/raw/raw16
         4          2 INVALID      INACTIVE     +DATA/racdb/onlinelog/group_4.269.1037879571
         4          2 INVALID      INACTIVE     +FRA/racdb/onlinelog/group_4.260.1037879591
         4          2              INACTIVE     /dev/raw/raw17
         5          2 INVALID      INACTIVE     +DATA/racdb/onlinelog/group_5.270.1037879575
         5          2 INVALID      INACTIVE     +FRA/racdb/onlinelog/group_5.261.1037879593
         5          2              INACTIVE     /dev/raw/raw18
         6          2 INVALID      CURRENT      +DATA/racdb/onlinelog/group_6.271.1037879579
         6          2 INVALID      CURRENT      +FRA/racdb/onlinelog/group_6.262.1037879597
         6          2              CURRENT      /dev/raw/raw19

18 rows selected.


1번 노드 Raw Device 영역의 Redo Log 맴버 제거
alter database drop logfile member '/dev/raw/raw14';
alter database drop logfile member '/dev/raw/raw15';
alter database drop logfile member '/dev/raw/raw16';
SQL> alter database drop logfile member '/dev/raw/raw14';
alter database drop logfile member '/dev/raw/raw14'
*
ERROR at line 1:
ORA-00362: member is required to form a valid logfile in group 1
ORA-01517: log member: '/dev/raw/raw14'

SQL> alter system switch logfile;

System altered.

SQL> alter system switch logfile;

System altered.

SQL> select a.GROUP#, THREAD#, a.STATUS file_status, b.STATUS log_status, MEMBER
  2    from V$LOGFILE a, V$LOG b
  3   where a.GROUP# = b.GROUP#
  4   order by GROUP#, MEMBER;

    GROUP#    THREAD# FILE_STATUS  LOG_STATUS   MEMBER
---------- ---------- ------------ ------------ --------------------------------------------------
         1          1              CURRENT      +DATA/racdb/onlinelog/group_1.266.1037879561
         1          1              CURRENT      +FRA/racdb/onlinelog/group_1.257.1037879581
         1          1              CURRENT      /dev/raw/raw14
         2          1 INVALID      ACTIVE       +DATA/racdb/onlinelog/group_2.267.1037879565
         2          1 INVALID      ACTIVE       +FRA/racdb/onlinelog/group_2.258.1037879585
         2          1              ACTIVE       /dev/raw/raw15
         3          1              ACTIVE       +DATA/racdb/onlinelog/group_3.268.1037879569
         3          1              ACTIVE       +FRA/racdb/onlinelog/group_3.259.1037879587
         3          1              ACTIVE       /dev/raw/raw16
         4          2 INVALID      INACTIVE     +DATA/racdb/onlinelog/group_4.269.1037879571
         4          2 INVALID      INACTIVE     +FRA/racdb/onlinelog/group_4.260.1037879591
         4          2              INACTIVE     /dev/raw/raw17
         5          2 INVALID      INACTIVE     +DATA/racdb/onlinelog/group_5.270.1037879575
         5          2 INVALID      INACTIVE     +FRA/racdb/onlinelog/group_5.261.1037879593
         5          2              INACTIVE     /dev/raw/raw18
         6          2 INVALID      CURRENT      +DATA/racdb/onlinelog/group_6.271.1037879579
         6          2 INVALID      CURRENT      +FRA/racdb/onlinelog/group_6.262.1037879597
         6          2              CURRENT      /dev/raw/raw19

18 rows selected.

SQL> alter database drop logfile member '/dev/raw/raw14';
alter database drop logfile member '/dev/raw/raw14'
*
ERROR at line 1:
ORA-01609: log 1 is the current log for thread 1 - cannot drop members
ORA-00312: online log 1 thread 1: '/dev/raw/raw14'
ORA-00312: online log 1 thread 1: '+DATA/racdb/onlinelog/group_1.266.1037879561'
ORA-00312: online log 1 thread 1: '+FRA/racdb/onlinelog/group_1.257.1037879581'

SQL> alter system switch logfile;

System altered.

SQL> alter database drop logfile member '/dev/raw/raw14';

Database altered.

SQL> alter system switch logfile;

System altered.

SQL> alter system switch logfile;

System altered.

SQL> alter database drop logfile member '/dev/raw/raw15';

Database altered.

SQL> alter database drop logfile member '/dev/raw/raw16';

Database altered.

SQL> select a.GROUP#, THREAD#, a.STATUS file_status, b.STATUS log_status, MEMBER
  2    from V$LOGFILE a, V$LOG b
  3   where a.GROUP# = b.GROUP#
  4    order by GROUP#, MEMBER;

    GROUP#    THREAD# FILE_STATUS  LOG_STATUS   MEMBER
---------- ---------- ------------ ------------ --------------------------------------------------
         1          1              CURRENT      +DATA/racdb/onlinelog/group_1.266.1037879561
         1          1              CURRENT      +FRA/racdb/onlinelog/group_1.257.1037879581
         2          1              ACTIVE       +DATA/racdb/onlinelog/group_2.267.1037879565
         2          1              ACTIVE       +FRA/racdb/onlinelog/group_2.258.1037879585
         3          1              ACTIVE       +DATA/racdb/onlinelog/group_3.268.1037879569
         3          1              ACTIVE       +FRA/racdb/onlinelog/group_3.259.1037879587
         4          2 INVALID      INACTIVE     +DATA/racdb/onlinelog/group_4.269.1037879571
         4          2 INVALID      INACTIVE     +FRA/racdb/onlinelog/group_4.260.1037879591
         4          2              INACTIVE     /dev/raw/raw17
         5          2 INVALID      INACTIVE     +DATA/racdb/onlinelog/group_5.270.1037879575
         5          2 INVALID      INACTIVE     +FRA/racdb/onlinelog/group_5.261.1037879593
         5          2              INACTIVE     /dev/raw/raw18
         6          2 INVALID      CURRENT      +DATA/racdb/onlinelog/group_6.271.1037879579
         6          2 INVALID      CURRENT      +FRA/racdb/onlinelog/group_6.262.1037879597
         6          2              CURRENT      /dev/raw/raw19

15 rows selected.


2번 노드 Raw Device 영역의 Redo Log 맴버 제거
alter database drop logfile member '/dev/raw/raw17';
alter database drop logfile member '/dev/raw/raw18';
alter database drop logfile member '/dev/raw/raw19';
SQL> alter system switch logfile;

System altered.

SQL> alter system switch logfile;

System altered.

SQL> alter database drop logfile member '/dev/raw/raw17';

Database altered.

SQL> alter system switch logfile;

System altered.

SQL> alter database drop logfile member '/dev/raw/raw18';

Database altered.

SQL> alter system switch logfile;

System altered.

SQL> alter database drop logfile member '/dev/raw/raw19';

Database altered.

SQL> select a.GROUP#, THREAD#, a.STATUS file_status, b.STATUS log_status, MEMBER
  2    from V$LOGFILE a, V$LOG b
  3   where a.GROUP# = b.GROUP#
  4   order by GROUP#, MEMBER;

    GROUP#    THREAD# FILE_STATUS  LOG_STATUS   MEMBER
---------- ---------- ------------ ------------ --------------------------------------------------
         1          1              CURRENT      +DATA/racdb/onlinelog/group_1.266.1037879561
         1          1              CURRENT      +FRA/racdb/onlinelog/group_1.257.1037879581
         2          1              INACTIVE     +DATA/racdb/onlinelog/group_2.267.1037879565
         2          1              INACTIVE     +FRA/racdb/onlinelog/group_2.258.1037879585
         3          1              INACTIVE     +DATA/racdb/onlinelog/group_3.268.1037879569
         3          1              INACTIVE     +FRA/racdb/onlinelog/group_3.259.1037879587
         4          2              CURRENT      +DATA/racdb/onlinelog/group_4.269.1037879571
         4          2              CURRENT      +FRA/racdb/onlinelog/group_4.260.1037879591
         5          2              INACTIVE     +DATA/racdb/onlinelog/group_5.270.1037879575
         5          2              INACTIVE     +FRA/racdb/onlinelog/group_5.261.1037879593
         6          2              ACTIVE       +DATA/racdb/onlinelog/group_6.271.1037879579
         6          2              ACTIVE       +FRA/racdb/onlinelog/group_6.262.1037879597

12 rows selected.


IX. 19c Grid 설치 및 클러스터 업그레이드

1. Grid 19c 설치 및 클러스터 업그레이드

A) 설치 사전 준비

$GRID_HOME 상위 경로 권한 변경
chown oracle:oinstall /u01/app
[root@rac1 ~]# chown oracle:oinstall /u01/app
[root@rac2 ~]# chown oracle:oinstall /u01/app


vi .bash_profile 로 $GRID_HOME 경로 변경
export GRID_HOME=/u01/app/19.0.0/grid
[root@rac1 ~]# cat ~oracle/.bash_profile | grep GRID_HOME
export GRID_HOME=/u01/app/19.0.0/grid

[root@rac1 ~]# cat .bash_profile | grep GRID_HOME
export GRID_HOME=/u01/app/19.0.0/grid
[root@rac2 ~]# cat ~oracle/.bash_profile | grep GRID_HOME
export GRID_HOME=/u01/app/19.0.0/grid

[root@rac2 ~]# cat .bash_profile | grep GRID_HOME
export GRID_HOME=/u01/app/19.0.0/grid


$GRID_HOME 경로 생성 및 설치 파일 압축 해제
mkdir -p $GRID_HOME
unzip <설치 파일 다운로드 경로>/LINUX.X64_193000_grid_home.zip -d $GRID_HOME
[racdb1:/home/oracle]> grid_env

[+ASM1:/home/oracle]> echo $GRID_HOME
/u01/app/19.0.0/grid

[+ASM1:/home/oracle]> mkdir -p $GRID_HOME

[+ASM1:/home/oracle]> unzip /media/sf_oracle/19.3/LINUX.X64_193000_grid_home.zip -d $GRID_HOME
Archive:  /media/sf_oracle/19.3/LINUX.X64_193000_grid_home.zip
   creating: /u01/app/19.0.0/grid/instantclient/
... << 중략 >> ...
 extracting: /u01/app/19.0.0/grid/install/.img.bin
finishing deferred symbolic links:
  /u01/app/19.0.0/grid/bin/lbuilder -> ../nls/lbuilder/lbuilder
  /u01/app/19.0.0/grid/lib/libocci.so -> libocci.so.19.1
  /u01/app/19.0.0/grid/lib/libagtsh.so -> libagtsh.so.1.0
  /u01/app/19.0.0/grid/lib/libodm19.so -> libodmd19.so
  /u01/app/19.0.0/grid/lib/libclntsh.so -> libclntsh.so.19.1
  /u01/app/19.0.0/grid/lib/libjavavm19.a -> ../javavm/jdk/jdk8/lib/libjavavm19.a
  /u01/app/19.0.0/grid/javavm/lib/jce.jar -> ../../javavm/jdk/jdk8/lib/jce.jar
  /u01/app/19.0.0/grid/lib/libocci.so.18.1 -> libocci.so
  /u01/app/19.0.0/grid/jdk/bin/ControlPanel -> jcontrol
  /u01/app/19.0.0/grid/javavm/admin/cbp.jar -> ../../javavm/jdk/jdk8/admin/cbp.jar
  /u01/app/19.0.0/grid/lib/libclntshcore.so -> libclntshcore.so.19.1
  /u01/app/19.0.0/grid/lib/libclntsh.so.12.1 -> libclntsh.so
  /u01/app/19.0.0/grid/lib/libclntsh.so.18.1 -> libclntsh.so
  /u01/app/19.0.0/grid/lib/libclntsh.so.11.1 -> libclntsh.so
  /u01/app/19.0.0/grid/lib/libclntsh.so.10.1 -> libclntsh.so
  /u01/app/19.0.0/grid/jdk/jre/bin/ControlPanel -> jcontrol
  /u01/app/19.0.0/grid/javavm/admin/libjtcjt.so -> ../../javavm/jdk/jdk8/admin/libjtcjt.so
  /u01/app/19.0.0/grid/javavm/admin/classes.bin -> ../../javavm/jdk/jdk8/admin/classes.bin
  /u01/app/19.0.0/grid/javavm/admin/lfclasses.bin -> ../../javavm/jdk/jdk8/admin/lfclasses.bin
  /u01/app/19.0.0/grid/javavm/lib/security/cacerts -> ../../../javavm/jdk/jdk8/lib/security/cacerts
  /u01/app/19.0.0/grid/javavm/lib/sunjce_provider.jar -> ../../javavm/jdk/jdk8/lib/sunjce_provider.jar
  /u01/app/19.0.0/grid/javavm/lib/security/README.txt -> ../../../javavm/jdk/jdk8/lib/security/README.txt
  /u01/app/19.0.0/grid/javavm/lib/security/java.security -> ../../../javavm/jdk/jdk8/lib/security/java.security
  /u01/app/19.0.0/grid/jdk/jre/lib/amd64/server/libjsig.so -> ../libjsig.so


B) 사전 검증

사전 환경 조사
$GRID_HOME/runcluvfy.sh stage -pre crsinst -upgrade -src_crshome /u01/app/11.2.0/grid -dest_crshome /u01/app/19.0.0/grid -dest_version 19.0.0.0.0 -fixup -method root -verbose
[+ASM1:/home/oracle]> $GRID_HOME/runcluvfy.sh stage -pre crsinst -upgrade -src_crshome /u01/app/11.2.0/grid -dest_crshome /u01/app/19.0.0/grid -dest_version 19.0.0.0.0 -fixup -method root -verbose
"ROOT" 비밀번호 입력:

물리적 메모리 확인 중...
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          9.7635GB (1.0237792E7KB)  8GB (8388608.0KB)         성공
  rac1          9.7635GB (1.0237792E7KB)  8GB (8388608.0KB)         성공
물리적 메모리 확인 중...성공
사용 가능한 물리적 메모리 확인 중...
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          8.4698GB (8881180.0KB)    50MB (51200.0KB)          성공
  rac1          7.4548GB (7816880.0KB)    50MB (51200.0KB)          성공
사용 가능한 물리적 메모리 확인 중...성공
교체 크기 확인 중...
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          10GB (1.0485756E7KB)      9.7635GB (1.0237792E7KB)  성공
  rac1          10GB (1.0485756E7KB)      9.7635GB (1.0237792E7KB)  성공
교체 크기 확인 중...성공
사용 가능한 공간: rac2:/usr,rac2:/var,rac2:/etc,rac2:/sbin,rac2:/tmp 확인 중...
  경로                노드 이름         마운트 위치        사용 가능         필수            상태
  ----------------  ------------  ------------  ------------  ------------  ------------
  /usr              rac2          /             74.1533GB     25MB          성공 
  /var              rac2          /             74.1533GB     5MB           성공 
  /etc              rac2          /             74.1533GB     25MB          성공 
  /sbin             rac2          /             74.1533GB     10MB          성공 
  /tmp              rac2          /             74.1533GB     1GB           성공 
사용 가능한 공간: rac2:/usr,rac2:/var,rac2:/etc,rac2:/sbin,rac2:/tmp 확인 중...성공
사용 가능한 공간: rac1:/usr,rac1:/var,rac1:/etc,rac1:/sbin,rac1:/tmp 확인 중...
  경로                노드 이름         마운트 위치        사용 가능         필수            상태
  ----------------  ------------  ------------  ------------  ------------  ------------
  /usr              rac1          /             68.205GB      25MB          성공 
  /var              rac1          /             68.205GB      5MB           성공 
  /etc              rac1          /             68.205GB      25MB          성공 
  /sbin             rac1          /             68.205GB      10MB          성공 
  /tmp              rac1          /             68.205GB      1GB           성공 
사용 가능한 공간: rac1:/usr,rac1:/var,rac1:/etc,rac1:/sbin,rac1:/tmp 확인 중...성공
사용자 존재 여부: oracle 확인 중...
  노드 이름         상태                        설명
  ------------  ------------------------  ------------------------
  rac2          성공                        존재함(54321)
  rac1          성공                        존재함(54321)

  UID가 동일한 사용자입니다.: 54321 확인 중...성공
사용자 존재 여부: oracle 확인 중...성공
그룹 존재 여부: asmadmin 확인 중...
  노드 이름         상태                        설명
  ------------  ------------------------  ------------------------
  rac2          성공                        존재함
  rac1          성공                        존재함
그룹 존재 여부: asmadmin 확인 중...성공
그룹 존재 여부: asmoper 확인 중...
  노드 이름         상태                        설명
  ------------  ------------------------  ------------------------
  rac2          성공                        존재함
  rac1          성공                        존재함
그룹 존재 여부: asmoper 확인 중...성공
그룹 존재 여부: asmdba 확인 중...
  노드 이름         상태                        설명
  ------------  ------------------------  ------------------------
  rac2          성공                        존재함
  rac1          성공                        존재함
그룹 존재 여부: asmdba 확인 중...성공
그룹 존재 여부: oinstall 확인 중...
  노드 이름         상태                        설명
  ------------  ------------------------  ------------------------
  rac2          성공                        존재함
  rac1          성공                        존재함
그룹 존재 여부: oinstall 확인 중...성공
그룹 멤버쉽: asmadmin 확인 중...
  노드 이름             사용자가 존재함      그룹이 존재함       그룹의 사용자       상태
  ----------------  ------------  ------------  ------------  ----------------
  rac2              예             예             예             성공            
  rac1              예             예             예             성공            
그룹 멤버쉽: asmadmin 확인 중...성공
그룹 멤버쉽: asmdba 확인 중...
  노드 이름             사용자가 존재함      그룹이 존재함       그룹의 사용자       상태
  ----------------  ------------  ------------  ------------  ----------------
  rac2              예             예             예             성공            
  rac1              예             예             예             성공            
그룹 멤버쉽: asmdba 확인 중...성공
그룹 멤버쉽: oinstall(기본) 확인 중...
  노드 이름             사용자가 존재함      그룹이 존재함       그룹의 사용자       기본            상태
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac2              예             예             예             예             성공
  rac1              예             예             예             예             성공
그룹 멤버쉽: oinstall(기본) 확인 중...성공
그룹 멤버쉽: asmoper 확인 중...
  노드 이름             사용자가 존재함      그룹이 존재함       그룹의 사용자       상태
  ----------------  ------------  ------------  ------------  ----------------
  rac2              예             예             예             성공            
  rac1              예             예             예             성공            
그룹 멤버쉽: asmoper 확인 중...성공
실행 레벨 확인 중...
  노드 이름         실행 레벨                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          3                         3,5                       성공
  rac1          5                         3,5                       성공
실행 레벨 확인 중...성공
완전 제한: 최대 열린 파일 기술자 확인 중...
  노드 이름             유형            사용 가능         필수            상태   
  ----------------  ------------  ------------  ------------  ----------------
  rac2              완전            65536         65536         성공             
  rac1              완전            65536         65536         성공             
완전 제한: 최대 열린 파일 기술자 확인 중...성공
부분 제한: 최대 열린 파일 기술자 확인 중...
  노드 이름             유형            사용 가능         필수            상태   
  ----------------  ------------  ------------  ------------  ----------------
  rac2              부분            1024          1024          성공             
  rac1              부분            1024          1024          성공             
부분 제한: 최대 열린 파일 기술자 확인 중...성공
완전 제한: 최대 사용자 프로세스 확인 중...
  노드 이름             유형            사용 가능         필수            상태   
  ----------------  ------------  ------------  ------------  ----------------
  rac2              완전            16384         16384         성공             
  rac1              완전            16384         16384         성공             
완전 제한: 최대 사용자 프로세스 확인 중...성공
부분 제한: 최대 사용자 프로세스 확인 중...
  노드 이름             유형            사용 가능         필수            상태   
  ----------------  ------------  ------------  ------------  ----------------
  rac2              부분            16384         2047          성공             
  rac1              부분            16384         2047          성공             
부분 제한: 최대 사용자 프로세스 확인 중...성공
부분 제한: 최대 스택 크기 확인 중...
  노드 이름             유형            사용 가능         필수            상태   
  ----------------  ------------  ------------  ------------  ----------------
  rac2              부분            10240         10240         성공             
  rac1              부분            10240         10240         성공             
부분 제한: 최대 스택 크기 확인 중...성공
Oracle 패치:28553832 확인 중...
  노드 이름         적용됨                       필수                        설명
  ------------  ------------------------  ------------------------  ----------
  rac1          28553832                  28553832                  성공
  rac2          28553832                  28553832                  성공
Oracle 패치:28553832 확인 중...성공
Oracle 패치:17617807 확인 중...
  노드 이름         적용됨                       필수                        설명
  ------------  ------------------------  ------------------------  ----------
  rac1          17617807                  17617807                  성공
  rac2          17617807                  17617807                  성공
Oracle 패치:17617807 확인 중...성공
Oracle 패치:21255373 확인 중...
  노드 이름         적용됨                       필수                        설명
  ------------  ------------------------  ------------------------  ----------
  rac1          21255373                  21255373                  성공
  rac2          21255373                  21255373                  성공
Oracle 패치:21255373 확인 중...성공
이 테스트는 소스 홈 "/u01/app/11.2.0/grid"이(가) "19.0.0.0.0" 버전으로 업그레이드하기에 적합한지 검사합니다. 확인 중...성공
구조 확인 중...
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          x86_64                    x86_64                    성공
  rac1          x86_64                    x86_64                    성공
구조 확인 중...성공
OS 커널 버전 확인 중...
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          4.1.12-112.16.4.el7uek.x86_64  4.1.12                    성공    
  rac1          4.1.12-112.16.4.el7uek.x86_64  4.1.12                    성공    
OS 커널 버전 확인 중...성공
OS 커널 매개변수: semmsl 확인 중...
  노드 이름             현재            구성됨           필수            상태            설명
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac1              250           250           250           성공
  rac2              250           250           250           성공
OS 커널 매개변수: semmsl 확인 중...성공
OS 커널 매개변수: semmns 확인 중...
  노드 이름             현재            구성됨           필수            상태            설명
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac1              32000         32000         32000         성공
  rac2              32000         32000         32000         성공
OS 커널 매개변수: semmns 확인 중...성공
OS 커널 매개변수: semopm 확인 중...
  노드 이름             현재            구성됨           필수            상태            설명
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac1              100           100           100           성공
  rac2              100           100           100           성공
OS 커널 매개변수: semopm 확인 중...성공
OS 커널 매개변수: semmni 확인 중...
  노드 이름             현재            구성됨           필수            상태            설명
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac1              128           128           128           성공
  rac2              128           128           128           성공
OS 커널 매개변수: semmni 확인 중...성공
OS 커널 매개변수: shmmax 확인 중...
  노드 이름             현재            구성됨           필수            상태            설명
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac1              4398046511104  4398046511104  5241749504    성공             
  rac2              4398046511104  4398046511104  5241749504    성공             
OS 커널 매개변수: shmmax 확인 중...성공
OS 커널 매개변수: shmmni 확인 중...
  노드 이름             현재            구성됨           필수            상태            설명
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac1              4096          4096          4096          성공
  rac2              4096          4096          4096          성공
OS 커널 매개변수: shmmni 확인 중...성공
OS 커널 매개변수: shmall 확인 중...
  노드 이름             현재            구성됨           필수            상태            설명
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac1              1073741824    1073741824    1073741824    성공
  rac2              1073741824    1073741824    1073741824    성공
OS 커널 매개변수: shmall 확인 중...성공
OS 커널 매개변수: file-max 확인 중...
  노드 이름             현재            구성됨           필수            상태            설명
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac1              6815744       6815744       6815744       성공
  rac2              6815744       6815744       6815744       성공
OS 커널 매개변수: file-max 확인 중...성공
OS 커널 매개변수: ip_local_port_range 확인 중...
  노드 이름             현재            구성됨           필수            상태            설명
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac1              between 9000 & 65500  between 9000 & 65500  between 9000 & 65535  성공
  rac2              between 9000 & 65500  between 9000 & 65500  between 9000 & 65535  성공
OS 커널 매개변수: ip_local_port_range 확인 중...성공
OS 커널 매개변수: rmem_default 확인 중...
  노드 이름             현재            구성됨           필수            상태            설명
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac1              262144        262144        262144        성공
  rac2              262144        262144        262144        성공
OS 커널 매개변수: rmem_default 확인 중...성공
OS 커널 매개변수: rmem_max 확인 중...
  노드 이름             현재            구성됨           필수            상태            설명
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac1              4194304       4194304       4194304       성공
  rac2              4194304       4194304       4194304       성공
OS 커널 매개변수: rmem_max 확인 중...성공
OS 커널 매개변수: wmem_default 확인 중...
  노드 이름             현재            구성됨           필수            상태            설명
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac1              262144        262144        262144        성공
  rac2              262144        262144        262144        성공
OS 커널 매개변수: wmem_default 확인 중...성공
OS 커널 매개변수: wmem_max 확인 중...
  노드 이름             현재            구성됨           필수            상태            설명
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac1              1048576       1048576       1048576       성공
  rac2              1048576       1048576       1048576       성공
OS 커널 매개변수: wmem_max 확인 중...성공
OS 커널 매개변수: aio-max-nr 확인 중...
  노드 이름             현재            구성됨           필수            상태            설명
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac1              1048576       1048576       1048576       성공
  rac2              1048576       1048576       1048576       성공
OS 커널 매개변수: aio-max-nr 확인 중...성공
OS 커널 매개변수: panic_on_oops 확인 중...
  노드 이름             현재            구성됨           필수            상태            설명
  ----------------  ------------  ------------  ------------  ------------  ------------
  rac1              1             1             1             성공
  rac2              1             1             1             성공
OS 커널 매개변수: panic_on_oops 확인 중...성공
패키지: ocfs2-tools-1.2.7 확인 중...
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          ocfs2-tools-1.8.6-9.el7   ocfs2-tools-1.2.7         성공
  rac1          ocfs2-tools-1.8.6-9.el7   ocfs2-tools-1.2.7         성공
패키지: ocfs2-tools-1.2.7 확인 중...성공
패키지: kmod-20-21 (x86_64) 확인 중...
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          kmod(x86_64)-20-21.0.1.el7  kmod(x86_64)-20-21        성공       
  rac1          kmod(x86_64)-20-21.0.1.el7  kmod(x86_64)-20-21        성공       
패키지: kmod-20-21 (x86_64) 확인 중...성공
패키지: kmod-libs-20-21 (x86_64) 확인 중...
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          kmod-libs(x86_64)-20-21.0.1.el7  kmod-libs(x86_64)-20-21   성공  
  rac1          kmod-libs(x86_64)-20-21.0.1.el7  kmod-libs(x86_64)-20-21   성공  
패키지: kmod-libs-20-21 (x86_64) 확인 중...성공
패키지: binutils-2.23.52.0.1 확인 중...
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          binutils-2.27-27.base.el7  binutils-2.23.52.0.1      성공
  rac1          binutils-2.27-27.base.el7  binutils-2.23.52.0.1      성공
패키지: binutils-2.23.52.0.1 확인 중...성공
패키지: compat-libcap1-1.10 확인 중...
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          compat-libcap1-1.10-7.el7  compat-libcap1-1.10       성공
  rac1          compat-libcap1-1.10-7.el7  compat-libcap1-1.10       성공
패키지: compat-libcap1-1.10 확인 중...성공
패키지: libgcc-4.8.2 (x86_64) 확인 중...
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          libgcc(x86_64)-4.8.5-28.0.1.el7  libgcc(x86_64)-4.8.2      성공  
  rac1          libgcc(x86_64)-4.8.5-28.0.1.el7  libgcc(x86_64)-4.8.2      성공  
패키지: libgcc-4.8.2 (x86_64) 확인 중...성공
패키지: libstdc++-4.8.2 (x86_64) 확인 중...
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          libstdc++(x86_64)-4.8.5-28.0.1.el7  libstdc++(x86_64)-4.8.2   성공
  rac1          libstdc++(x86_64)-4.8.5-28.0.1.el7  libstdc++(x86_64)-4.8.2   성공
패키지: libstdc++-4.8.2 (x86_64) 확인 중...성공
패키지: libstdc++-devel-4.8.2 (x86_64) 확인 중...
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          libstdc++-devel(x86_64)-4.8.5-28.0.1.el7  libstdc++-devel(x86_64)-4.8.2  성공
  rac1          libstdc++-devel(x86_64)-4.8.5-28.0.1.el7  libstdc++-devel(x86_64)-4.8.2  성공
패키지: libstdc++-devel-4.8.2 (x86_64) 확인 중...성공
패키지: sysstat-10.1.5 확인 중...
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          sysstat-10.1.5-13.el7     sysstat-10.1.5            성공
  rac1          sysstat-10.1.5-13.el7     sysstat-10.1.5            성공
패키지: sysstat-10.1.5 확인 중...성공
패키지: ksh 확인 중...
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          ksh                       ksh                       성공
  rac1          ksh                       ksh                       성공
패키지: ksh 확인 중...성공
패키지: make-3.82 확인 중...
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          make-3.82-23.el7          make-3.82                 성공
  rac1          make-3.82-23.el7          make-3.82                 성공
패키지: make-3.82 확인 중...성공
패키지: glibc-2.17 (x86_64) 확인 중...
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          glibc(x86_64)-2.17-222.el7  glibc(x86_64)-2.17        성공       
  rac1          glibc(x86_64)-2.17-222.el7  glibc(x86_64)-2.17        성공       
패키지: glibc-2.17 (x86_64) 확인 중...성공
패키지: glibc-devel-2.17 (x86_64) 확인 중...
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          glibc-devel(x86_64)-2.17-222.el7  glibc-devel(x86_64)-2.17  성공 
  rac1          glibc-devel(x86_64)-2.17-222.el7  glibc-devel(x86_64)-2.17  성공 
패키지: glibc-devel-2.17 (x86_64) 확인 중...성공
패키지: libaio-0.3.109 (x86_64) 확인 중...
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          libaio(x86_64)-0.3.109-13.el7  libaio(x86_64)-0.3.109    성공    
  rac1          libaio(x86_64)-0.3.109-13.el7  libaio(x86_64)-0.3.109    성공    
패키지: libaio-0.3.109 (x86_64) 확인 중...성공
패키지: libaio-devel-0.3.109 (x86_64) 확인 중...
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          libaio-devel(x86_64)-0.3.109-13.el7  libaio-devel(x86_64)-0.3.109  성공
  rac1          libaio-devel(x86_64)-0.3.109-13.el7  libaio-devel(x86_64)-0.3.109  성공
패키지: libaio-devel-0.3.109 (x86_64) 확인 중...성공
패키지: nfs-utils-1.2.3-15 확인 중...
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          nfs-utils-1.3.0-0.54.0.1.el7  nfs-utils-1.2.3-15        성공     
  rac1          nfs-utils-1.3.0-0.54.0.1.el7  nfs-utils-1.2.3-15        성공     
패키지: nfs-utils-1.2.3-15 확인 중...성공
패키지: smartmontools-6.2-4 확인 중...
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          smartmontools-6.5-1.el7   smartmontools-6.2-4       성공
  rac1          smartmontools-6.5-1.el7   smartmontools-6.2-4       성공
패키지: smartmontools-6.2-4 확인 중...성공
패키지: net-tools-2.0-0.17 확인 중...
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          net-tools-2.0-0.22.20131004git.el7  net-tools-2.0-0.17        성공
  rac1          net-tools-2.0-0.22.20131004git.el7  net-tools-2.0-0.17        성공
패키지: net-tools-2.0-0.17 확인 중...성공
UID가 동일한 사용자입니다.: 0 확인 중...성공
현재 그룹 ID 확인 중...성공
루트 사용자 일관성 확인 중...
  노드 이름                                 상태
  ------------------------------------  ------------------------
  rac2                                  성공
  rac1                                  성공
루트 사용자 일관성 확인 중...성공
ASM 검색 문자열의 선택성 확인 중...성공
ASM 예비 매개변수 확인 중...성공
디스크 그룹 ASM 호환성 설정 확인 중...성공
패키지: cvuqdisk-1.0.10-1 확인 중...
  노드 이름         사용 가능                     필수                        상태
  ------------  ------------------------  ------------------------  ----------
  rac2          cvuqdisk-1.0.9-1          cvuqdisk-1.0.10-1         실패
  rac1          cvuqdisk-1.0.9-1          cvuqdisk-1.0.10-1         실패
패키지: cvuqdisk-1.0.10-1 확인 중...실패 (PRVG-11551)
호스트 이름 확인 중...성공
노드 접속 확인 중...
  호스트 파일 확인 중...
  노드 이름                                 상태
  ------------------------------------  ------------------------
  rac1                                  성공
  rac2                                  성공
  호스트 파일 확인 중...성공

"rac1" 노드에 대한 인터페이스 정보

 이름     IP 주소           서브넷             게이트웨이           Def. 게이트웨이      HW 주소             MTU
 ------ --------------- --------------- --------------- --------------- ----------------- ------
 enp0s3 10.0.1.101      10.0.1.0        0.0.0.0         10.0.1.1        08:00:27:39:AE:EE 1500
 enp0s3 10.0.1.193      10.0.1.0        0.0.0.0         10.0.1.1        08:00:27:39:AE:EE 1500
 enp0s3 10.0.1.192      10.0.1.0        0.0.0.0         10.0.1.1        08:00:27:39:AE:EE 1500
 enp0s3 10.0.1.201      10.0.1.0        0.0.0.0         10.0.1.1        08:00:27:39:AE:EE 1500
 enp0s8 10.0.5.101      10.0.5.0        0.0.0.0         10.0.1.1        08:00:27:D3:1A:94 1500

"rac2" 노드에 대한 인터페이스 정보

 이름     IP 주소           서브넷             게이트웨이           Def. 게이트웨이      HW 주소             MTU
 ------ --------------- --------------- --------------- --------------- ----------------- ------
 enp0s3 10.0.1.102      10.0.1.0        0.0.0.0         10.0.1.1        08:00:27:6E:44:4D 1500
 enp0s3 10.0.1.202      10.0.1.0        0.0.0.0         10.0.1.1        08:00:27:6E:44:4D 1500
 enp0s3 10.0.1.191      10.0.1.0        0.0.0.0         10.0.1.1        08:00:27:6E:44:4D 1500
 enp0s8 10.0.5.102      10.0.5.0        0.0.0.0         10.0.1.1        08:00:27:BE:10:55 1500

검사: "10.0.5.0" 서브넷 전용 인터페이스의 MTU 일관성

  노드                이름            IP 주소         서브넷           MTU       
  ----------------  ------------  ------------  ------------  ----------------
  rac1              enp0s8        10.0.5.101    10.0.5.0      1500
  rac2              enp0s8        10.0.5.102    10.0.5.0      1500

검사: "10.0.1.0" 서브넷의 MTU 일관성.

  노드                이름            IP 주소         서브넷           MTU       
  ----------------  ------------  ------------  ------------  ----------------
  rac1              enp0s3        10.0.1.101    10.0.1.0      1500
  rac1              enp0s3        10.0.1.193    10.0.1.0      1500
  rac1              enp0s3        10.0.1.192    10.0.1.0      1500
  rac1              enp0s3        10.0.1.201    10.0.1.0      1500
  rac2              enp0s3        10.0.1.102    10.0.1.0      1500
  rac2              enp0s3        10.0.1.202    10.0.1.0      1500
  rac2              enp0s3        10.0.1.191    10.0.1.0      1500

  소스                              대상                              접속됨?    
  ------------------------------  ------------------------------  ----------------
  rac1[enp0s8:10.0.5.101]         rac2[enp0s8:10.0.5.102]         예             

  소스                              대상                              접속됨?    
  ------------------------------  ------------------------------  ----------------
  rac1[enp0s3:10.0.1.101]         rac1[enp0s3:10.0.1.193]         예             
  rac1[enp0s3:10.0.1.101]         rac1[enp0s3:10.0.1.192]         예             
  rac1[enp0s3:10.0.1.101]         rac1[enp0s3:10.0.1.201]         예             
  rac1[enp0s3:10.0.1.101]         rac2[enp0s3:10.0.1.102]         예             
  rac1[enp0s3:10.0.1.101]         rac2[enp0s3:10.0.1.202]         예             
  rac1[enp0s3:10.0.1.101]         rac2[enp0s3:10.0.1.191]         예             
  rac1[enp0s3:10.0.1.193]         rac1[enp0s3:10.0.1.192]         예             
  rac1[enp0s3:10.0.1.193]         rac1[enp0s3:10.0.1.201]         예             
  rac1[enp0s3:10.0.1.193]         rac2[enp0s3:10.0.1.102]         예             
  rac1[enp0s3:10.0.1.193]         rac2[enp0s3:10.0.1.202]         예             
  rac1[enp0s3:10.0.1.193]         rac2[enp0s3:10.0.1.191]         예             
  rac1[enp0s3:10.0.1.192]         rac1[enp0s3:10.0.1.201]         예             
  rac1[enp0s3:10.0.1.192]         rac2[enp0s3:10.0.1.102]         예             
  rac1[enp0s3:10.0.1.192]         rac2[enp0s3:10.0.1.202]         예             
  rac1[enp0s3:10.0.1.192]         rac2[enp0s3:10.0.1.191]         예             
  rac1[enp0s3:10.0.1.201]         rac2[enp0s3:10.0.1.102]         예             
  rac1[enp0s3:10.0.1.201]         rac2[enp0s3:10.0.1.202]         예             
  rac1[enp0s3:10.0.1.201]         rac2[enp0s3:10.0.1.191]         예             
  rac2[enp0s3:10.0.1.102]         rac2[enp0s3:10.0.1.202]         예             
  rac2[enp0s3:10.0.1.102]         rac2[enp0s3:10.0.1.191]         예             
  rac2[enp0s3:10.0.1.202]         rac2[enp0s3:10.0.1.191]         예             
  최대(MTU) 크기 패킷이 서브넷을 통과하는지 검사 확인 중...성공
  "10.0.5.0" 서브넷에 대한 서브넷 마스크 일관성 확인 중...성공
  "10.0.1.0" 서브넷에 대한 서브넷 마스크 일관성 확인 중...성공
노드 접속 확인 중...성공
멀티캐스트 또는 브로드캐스트 검사 확인 중...
멀티캐스트 그룹 "224.0.0.251"과(와) 멀티캐스트 통신을 위해 "10.0.5.0" 서브넷을 검사하는 중
멀티캐스트 또는 브로드캐스트 검사 확인 중...성공
ASMLib 설치 및 구성을 확인합니다. 확인 중...
  '/etc/init.d/oracleasm' 확인 중...성공
  '/dev/oracleasm' 확인 중...성공
  '/etc/sysconfig/oracleasm' 확인 중...성공

  노드 이름                                 상태
  ------------------------------------  ------------------------
  rac1                                  성공
  rac2                                  성공
ASMLib 설치 및 구성을 확인합니다. 확인 중...성공
ACFS 드라이버 검사 확인 중...성공
NTP(네트워크 시간 프로토콜) 확인 중...성공
동일한 코어 파일 이름 패턴 확인 중...성공
사용자 마스크 확인 중...
  노드 이름         사용 가능                     필수                        설명
  ------------  ------------------------  ------------------------  ----------
  rac2          0022                      0022                      성공
  rac1          0022                      0022                      성공
사용자 마스크 확인 중...성공
사용자가 그룹에 없습니다. "root": oracle 확인 중...
  노드 이름         상태                        설명
  ------------  ------------------------  ------------------------
  rac2          성공                        존재하지 않음
  rac1          성공                        존재하지 않음
사용자가 그룹에 없습니다. "root": oracle 확인 중...성공
시간대 일관성 확인 중...성공
노드 사이의 시간 오프셋 확인 중...성공
resolv.conf 무결성 확인 중...
  노드 이름                                 상태
  ------------------------------------  ------------------------
  rac1                                  성공
  rac2                                  성공

"/etc/resolv.conf"에 지정된 각 이름 서버에서 "rac1" 이름에 대한 응답을 확인하는 중

  노드 이름         소스                        설명                        상태 
  ------------  ------------------------  ------------------------  ----------
  rac1          127.0.0.1                 IPv4                      성공

"/etc/resolv.conf"에 지정된 각 이름 서버에서 "rac2" 이름에 대한 응답을 확인하는 중

  노드 이름         소스                        설명                        상태 
  ------------  ------------------------  ------------------------  ----------
  rac2          127.0.0.1                 IPv4                      성공
resolv.conf 무결성 확인 중...성공
DNS/NIS 이름 서비스 확인 중...성공
"avahi-daemon" 데몬이 구성되어 실행 중이 아닙니다. 확인 중...
  노드 이름         구성됨                       상태
  ------------  ------------------------  ------------------------
  rac2          아니오                       성공
  rac1          아니오                       성공

  노드 이름         실행 중?                     상태
  ------------  ------------------------  ------------------------
  rac2          아니오                       성공
  rac1          아니오                       성공
"avahi-daemon" 데몬이 구성되어 실행 중이 아닙니다. 확인 중...성공
"proxyt" 데몬이 구성되어 실행 중이 아닙니다. 확인 중...
  노드 이름         구성됨                       상태
  ------------  ------------------------  ------------------------
  rac2          아니오                       성공
  rac1          아니오                       성공

  노드 이름         실행 중?                     상태
  ------------  ------------------------  ------------------------
  rac2          아니오                       성공
  rac1          아니오                       성공
"proxyt" 데몬이 구성되어 실행 중이 아닙니다. 확인 중...성공
루프백 네트워크 인터페이스 주소 확인 중...성공
업그레이드를 위한 권한 있는 그룹 일관성 확인 중...성공
업그레이드하는 CRS 사용자의 일관성 확인 중...성공
Clusterware 버전 일관성 확인 중...
  클러스터 업그레이드 상태 확인 중...성공
Clusterware 버전 일관성 확인 중...성공
크기가 잘못 지정된 ASM 디스크 검사 확인 중...성공
네트워크 구성 일관성 검사 확인 중...성공
/boot 마운트 확인 중...성공
OLR 무결성 확인 중...성공
ASM 인스턴스가 기존 ASM 매개변수 파일을 사용하여 구성되었는지 확인하십시오. 확인 중...성공
ASM 디스크 크기 일관성 확인 중...성공
사용자 동일성 확인 중...성공
RPM Package Manager 데이터베이스 확인 중...성공
전용 상호 접속 네트워크 인터페이스의 네트워크 인터페이스 연결 상태 확인 중...성공
/dev/shm이 임시 파일 시스템으로 마운트됨 확인 중...성공
/var 경로에 대한 파일 시스템 마운트 옵션 확인 중...성공
DefaultTasksMax 매개변수 확인 중...성공
zeroconf 검사 확인 중...성공
ASM 필터 드라이버 구성 확인 중...성공
Systemd 로그인 관리자 IPC 매개변수 확인 중...성공

클러스터 서비스 설정에 대한 사전 확인을 실패했습니다.
다음 노드에 대한 검사를 실패했습니다.
        rac2,rac1


CVU 확인 요청 "stage -pre crsinst"을(를) 실행하는 동안 오류가 발생했습니다.

패키지: cvuqdisk-1.0.10-1 확인 중...실패
rac2: PRVG-11551 : "rac2" 노드에서 "cvuqdisk" 패키지의 필요한 버전을 찾지 못했습니다. [필요한 값 =
      "cvuqdisk-1.0.10-1", 발견된 값 = "cvuqdisk-1.0.9-1"].

rac1: PRVG-11551 : "rac1" 노드에서 "cvuqdisk" 패키지의 필요한 버전을 찾지 못했습니다. [필요한 값 =
      "cvuqdisk-1.0.10-1", 발견된 값 = "cvuqdisk-1.0.9-1"].


수행된 CVU 작업:                   stage -pre crsinst
날짜:                           2020. 4. 16 오후 1:11:13
CVU 홈:                        /u01/app/19.0.0/grid/
사용자:                          oracle
******************************************************************************************
다음은 이 세션에서 수정하도록 선택된 수정 가능 필요 조건 목록입니다.
******************************************************************************************
------------                  --------            ---------      --------
검사를 실패했습니다.                   노드에서 실패함            재부팅 필요 여부      재로그인 필요?
------------                  --------            ---------      --------
패키지: cvuqdisk-1.0.10-1        rac2,rac1           아니오            아니오    


수정: 패키지: cvuqdisk-1.0.10-1

  노드 이름                                 상태
  ------------------------------------  ------------------------
  rac2                                  성공
  rac1                                  성공
결과:
적용 가능한 모든 노드에서 "패키지: cvuqdisk-1.0.10-1"이(가) 성공적으로 수정되었습니다.

적용 가능한 모든 노드에서 수정 작업이 성공적으로 완료되었습니다.


C) Response 파일 생성

gridsetup.rsp 파일 생성 (주요 파라미터 요약)
oracle.install.responseFileVersion=/oracle/install/rspfmt_crsinstall_response_schema_v19.0.0
INVENTORY_LOCATION=/u01/app/oraInventory
oracle.install.option=UPGRADE
ORACLE_BASE=/u01/app/oracle
oracle.install.asm.OSDBA=asmdba
oracle.install.asm.OSASM=asmadmin
oracle.install.crs.config.scanType=LOCAL_SCAN
oracle.install.crs.config.gpnp.scanName=rac-scan.localdomain
oracle.install.crs.config.gpnp.scanPort=1521
oracle.install.crs.config.ClusterConfiguration=STANDALONE
oracle.install.crs.config.configureAsExtendedCluster=false
oracle.install.crs.config.clusterName=rac
oracle.install.crs.config.gpnp.configureGNS=false
oracle.install.crs.config.autoConfigureClusterNodeVIP=false
oracle.install.crs.config.clusterNodes=rac1:rac1-vip,rac2:rac2-vip
oracle.install.crs.config.networkInterfaceList=enp0s3:10.0.1.0:1,enp0s8:10.0.5.0:5
oracle.install.crs.configureGIMR=false
oracle.install.asm.configureGIMRDataDG=false
oracle.install.crs.config.ignoreDownNodes=true
oracle.install.crs.rootconfig.executeRootScript=false
###############################################################################
## Copyright(c) Oracle Corporation 1998,2019. All rights reserved.           ##
##                                                                           ##
## Specify values for the variables listed below to customize                ##
## your installation.                                                        ##
##                                                                           ##
## Each variable is associated with a comment. The comment                   ##
## can help to populate the variables with the appropriate                   ##
## values.                                                                   ##
##                                                                           ##
## IMPORTANT NOTE: This file contains plain text passwords and               ##
## should be secured to have read permission only by oracle user             ##
## or db administrator who owns this installation.                           ##
##                                                                           ##
###############################################################################

###############################################################################
##                                                                           ##
## Instructions to fill this response file                                   ##
## To register and configure 'Grid Infrastructure for Cluster'               ##
##  - Fill out sections A,B,C,D,E,F and G                                    ##
##  - Fill out section G if OCR and voting disk should be placed on ASM      ##
##                                                                           ##
## To register and configure 'Grid Infrastructure for Standalone server'     ##
##  - Fill out sections A,B and G                                            ##
##                                                                           ##
## To register software for 'Grid Infrastructure'                            ##
##  - Fill out sections A,B and D                                            ##
##  - Provide the cluster nodes in section D when choosing CRS_SWONLY as     ##
##    installation option in section A                                       ##
##                                                                           ##
## To upgrade clusterware and/or Automatic storage management of earlier     ##
## releases                                                                  ##
##  - Fill out sections A,B,C,D and H                                        ##
##                                                                           ##
## To add more nodes to the cluster                                          ##
##  - Fill out sections A and D                                              ##
##  - Provide the cluster nodes in section D when choosing CRS_ADDNODE as    ##
##    installation option in section A                                       ##
##                                                                           ##
###############################################################################

#------------------------------------------------------------------------------
# Do not change the following system generated value. 
#------------------------------------------------------------------------------
oracle.install.responseFileVersion=/oracle/install/rspfmt_crsinstall_response_schema_v19.0.0

###############################################################################
#                                                                             #
#                          SECTION A - BASIC                                  #
#                                                                             #
###############################################################################


#-------------------------------------------------------------------------------
# Specify the location which holds the inventory files.
# This is an optional parameter if installing on  
# Windows based Operating System.
#-------------------------------------------------------------------------------
INVENTORY_LOCATION=/u01/app/oraInventory

#-------------------------------------------------------------------------------
# Specify the installation option.
# Allowed values: CRS_CONFIG or HA_CONFIG or UPGRADE or CRS_SWONLY or HA_SWONLY
#   - CRS_CONFIG  : To register home and configure Grid Infrastructure for cluster
#   - HA_CONFIG   : To register home and configure Grid Infrastructure for stand alone server
#   - UPGRADE     : To register home and upgrade clusterware software of earlier release
#   - CRS_SWONLY  : To register Grid Infrastructure Software home (can be configured for cluster 
#                   or stand alone server later)
#   - HA_SWONLY   : To register Grid Infrastructure Software home (can be configured for stand 
#                   alone server later. This is only supported on Windows.)
#   - CRS_ADDNODE : To add more nodes to the cluster
#   - CRS_DELETE_NODE : To delete nodes to the cluster
#-------------------------------------------------------------------------------
oracle.install.option=UPGRADE

#-------------------------------------------------------------------------------
# Specify the complete path of the Oracle Base.
#-------------------------------------------------------------------------------
ORACLE_BASE=/u01/app/oracle

################################################################################
#                                                                              #
#                              SECTION B - GROUPS                              #
#                                                                              #
#   The following three groups need to be assigned for all GI installations.   #
#   OSDBA and OSOPER can be the same or different.  OSASM must be different    #
#   than the other two.                                                        #
#   The value to be specified for OSDBA, OSOPER and OSASM group is only for    #
#   Unix based Operating System.                                               #
#   These groups are not required for upgrades, as they will be determined     #
#   from the Oracle home to upgrade.                                           #
#                                                                              #
################################################################################
#-------------------------------------------------------------------------------
# The OSDBA_GROUP is the OS group which is to be granted SYSDBA privileges.
#-------------------------------------------------------------------------------
oracle.install.asm.OSDBA=asmdba

#-------------------------------------------------------------------------------
# The OSOPER_GROUP is the OS group which is to be granted SYSOPER privileges.
# The value to be specified for OSOPER group is optional.
# Value should not be provided if configuring Client Cluster - i.e. storageOption=CLIENT_ASM_STORAGE.
#-------------------------------------------------------------------------------
oracle.install.asm.OSOPER=asmoper

#-------------------------------------------------------------------------------
# The OSASM_GROUP is the OS group which is to be granted SYSASM privileges. This
# must be different than the previous two.
#-------------------------------------------------------------------------------
oracle.install.asm.OSASM=asmadmin

################################################################################
#                                                                              #
#                           SECTION C - SCAN                                   #
#                                                                              #
################################################################################
#-------------------------------------------------------------------------------
# Specify the type of SCAN configuration for the cluster
# Allowed values : LOCAL_SCAN and SHARED_SCAN
#-------------------------------------------------------------------------------
oracle.install.crs.config.scanType=LOCAL_SCAN

#-------------------------------------------------------------------------------
# Applicable only if SHARED_SCAN is being configured for cluster
# Specify the path to the SCAN client data file
#-------------------------------------------------------------------------------
oracle.install.crs.config.SCANClientDataFile=

#-------------------------------------------------------------------------------
# Specify a name for SCAN
# Applicable if LOCAL_SCAN is being configured for the cluster
# If you choose to configure the cluster with GNS with Auto assigned Node VIPs(DHCP),then the scanName should be specified in the format of 'SCAN name.Cluster name.GNS sub-domain'
#-------------------------------------------------------------------------------
oracle.install.crs.config.gpnp.scanName=rac-scan.localdomain

#-------------------------------------------------------------------------------
# Specify a unused port number for SCAN service
#-------------------------------------------------------------------------------
oracle.install.crs.config.gpnp.scanPort=1521

################################################################################
#                                                                              #
#                           SECTION D - CLUSTER & GNS                         #
#                                                                              #
################################################################################
#-------------------------------------------------------------------------------
# Specify the required cluster configuration
# Allowed values: STANDALONE, DOMAIN, MEMBERDB, MEMBERAPP
#-------------------------------------------------------------------------------
oracle.install.crs.config.ClusterConfiguration=STANDALONE

#-------------------------------------------------------------------------------
# Specify 'true' if you would like to configure the cluster as Extended, else
# specify 'false'
#
# Applicable only for STANDALONE and DOMAIN cluster configuration
#-------------------------------------------------------------------------------
oracle.install.crs.config.configureAsExtendedCluster=false


#-------------------------------------------------------------------------------
# Specify the Member Cluster Manifest file
#
# Applicable only for MEMBERDB and MEMBERAPP cluster configuration
#-------------------------------------------------------------------------------
oracle.install.crs.config.memberClusterManifestFile=

#-------------------------------------------------------------------------------
# Specify a name for the Cluster you are creating.
#
# The maximum length allowed for clustername is 63 characters. The name can be 
# any combination of lower and uppercase alphabets (A - Z), (0 - 9) and hyphens (-).
#
# Applicable only for STANDALONE and DOMAIN cluster configuration
#-------------------------------------------------------------------------------
oracle.install.crs.config.clusterName=rac

#-------------------------------------------------------------------------------
# Applicable only for STANDALONE, DOMAIN, MEMBERDB cluster configuration.
# Specify 'true' if you would like to configure Grid Naming Service(GNS), else
# specify 'false'
#-------------------------------------------------------------------------------
oracle.install.crs.config.gpnp.configureGNS=false

#-------------------------------------------------------------------------------
# Applicable only for STANDALONE and DOMAIN cluster configuration if you choose to configure GNS.
# Specify 'true' if you would like to assign SCAN name VIP and Node VIPs by DHCP
# , else specify 'false'
#-------------------------------------------------------------------------------
oracle.install.crs.config.autoConfigureClusterNodeVIP=false

#-------------------------------------------------------------------------------
# Applicable only if you choose to configure GNS.
# Specify the type of GNS configuration for cluster
# Allowed values are: CREATE_NEW_GNS and USE_SHARED_GNS
# Only USE_SHARED_GNS value is allowed for MEMBERDB cluster configuration.
#-------------------------------------------------------------------------------
oracle.install.crs.config.gpnp.gnsOption=

#-------------------------------------------------------------------------------
# Applicable only if SHARED_GNS is being configured for cluster
# Specify the path to the GNS client data file
#-------------------------------------------------------------------------------
oracle.install.crs.config.gpnp.gnsClientDataFile=

#-------------------------------------------------------------------------------
# Applicable only for STANDALONE and DOMAIN cluster configuration if you choose to 
# configure GNS for this cluster oracle.install.crs.config.gpnp.gnsOption=CREATE_NEW_GNS
# Specify the GNS subdomain and an unused virtual hostname for GNS service
#-------------------------------------------------------------------------------
oracle.install.crs.config.gpnp.gnsSubDomain=
oracle.install.crs.config.gpnp.gnsVIPAddress=

#-------------------------------------------------------------------------------
# Specify the list of sites - only if configuring an Extended Cluster
#-------------------------------------------------------------------------------
oracle.install.crs.config.sites=

#-------------------------------------------------------------------------------
# Specify the list of nodes that have to be configured to be part of the cluster.
#
# The list should a comma-separated list of tuples.  Each tuple should be a
# colon-separated string that contains
# - 1 field if you have chosen CRS_SWONLY as installation option, or
# - 1 field if configuring an Application Cluster, or
# - 3 fields if configuring a Flex Cluster
# - 3 fields if adding more nodes to the configured cluster, or
# - 4 fields if configuring an Extended Cluster
# 
# The fields should be ordered as follows:
# 1. The first field should be the public node name.
# 2. The second field should be the virtual host name
#    (Should be specified as AUTO if you have chosen 'auto configure for VIP'
#     i.e. autoConfigureClusterNodeVIP=true)
# 3. The third field indicates the site designation for the node. To be specified only if configuring an Extended Cluster.
# Only the 1st field is applicable if you have chosen CRS_SWONLY as installation option
# Only the 1st field is applicable if configuring an Application Cluster
#
# Examples
# For registering GI for a cluster software: oracle.install.crs.config.clusterNodes=node1,node2
# For adding more nodes to the configured cluster: oracle.install.crs.config.clusterNodes=node1:node1-vip,node2:node2-vip
# For configuring Application Cluster: oracle.install.crs.config.clusterNodes=node1,node2
# For configuring Flex Cluster: oracle.install.crs.config.clusterNodes=node1:node1-vip,node2:node2-vip
# For configuring Extended Cluster: oracle.install.crs.config.clusterNodes=node1:node1-vip:site1,node2:node2-vip:site2
# You can specify a range of nodes in the tuple using colon separated fields of format
# hostnameprefix:lowerbound-upperbound:hostnamesuffix:vipsuffix:role of node
#
#-------------------------------------------------------------------------------
oracle.install.crs.config.clusterNodes=rac1:rac1-vip,rac2:rac2-vip

#-------------------------------------------------------------------------------
# The value should be a comma separated strings where each string is as shown below
# InterfaceName:SubnetAddress:InterfaceType
# where InterfaceType can be either "1", "2", "3", "4", or "5"
# InterfaceType stand for the following values
#   - 1 : PUBLIC
#   - 2 : PRIVATE
#   - 3 : DO NOT USE
#   - 4 : ASM
#   - 5 : ASM & PRIVATE
#
# For example: eth0:140.87.24.0:1,eth1:10.2.1.0:2,eth2:140.87.52.0:3
#
#-------------------------------------------------------------------------------
oracle.install.crs.config.networkInterfaceList=enp0s3:10.0.1.0:1,enp0s8:10.0.5.0:5

#------------------------------------------------------------------------------
# Specify 'true' if you would like to configure Grid Infrastructure Management
# Repository (GIMR), else specify 'false'.
# This option is only applicable when CRS_CONFIG is chosen as install option,
# and STANDALONE is chosen as cluster configuration.
#------------------------------------------------------------------------------
oracle.install.crs.configureGIMR=false

#------------------------------------------------------------------------------
# Create a separate ASM DiskGroup to store GIMR data.
# Specify 'true' if you would like to separate GIMR data with clusterware data, 
# else specify 'false'
# Value should be 'true' for DOMAIN cluster configurations
# Value can be true/false for STANDALONE cluster configurations.
#------------------------------------------------------------------------------
oracle.install.asm.configureGIMRDataDG=false

################################################################################
#                                                                              #
#                              SECTION E - STORAGE                             #
#                                                                              #
################################################################################

#-------------------------------------------------------------------------------
# Specify the type of storage to use for Oracle Cluster Registry(OCR) and Voting
# Disks files. Only applicable for Standalone and MemberDB cluster.
#   - FLEX_ASM_STORAGE
#   - CLIENT_ASM_STORAGE
#   - FILE_SYSTEM_STORAGE
#
# Option FILE_SYSTEM_STORAGE is only for STANDALONE cluster configuration.
#-------------------------------------------------------------------------------
oracle.install.crs.config.storageOption=

#-------------------------------------------------------------------------------
# These properties are applicable only if FILE_SYSTEM_STORAGE is chosen for 
# storing OCR and voting disk
# Specify the location(s) for OCR and voting disks
# Three(3) or one(1) location(s) should be specified for OCR and voting disk, 
# separated by commas.
# Example:
#     For Unix based Operating System:
#     oracle.install.crs.config.sharedFileSystemStorage.votingDiskLocations=/oradbocfs/storage/vdsk1,/oradbocfs/storage/vdsk2,/oradbocfs/storage/vdsk3
#     oracle.install.crs.config.sharedFileSystemStorage.ocrLocations=/oradbocfs/storage/ocr1,/oradbocfs/storage/ocr2,/oradbocfs/storage/ocr3
#     For Windows based Operating System OCR/VDSK on shared storage is not supported.
#-------------------------------------------------------------------------------
oracle.install.crs.config.sharedFileSystemStorage.votingDiskLocations=
oracle.install.crs.config.sharedFileSystemStorage.ocrLocations=
################################################################################
#                                                                              #
#                               SECTION F - IPMI                               #
#                                                                              #
################################################################################

#-------------------------------------------------------------------------------
# Specify 'true' if you would like to configure Intelligent Power Management interface
# (IPMI), else specify 'false'
#-------------------------------------------------------------------------------
oracle.install.crs.config.useIPMI=

#-------------------------------------------------------------------------------
# Applicable only if you choose to configure IPMI
# i.e. oracle.install.crs.config.useIPMI=true
# Specify the username and password for using IPMI service
#-------------------------------------------------------------------------------
oracle.install.crs.config.ipmi.bmcUsername=
oracle.install.crs.config.ipmi.bmcPassword=
################################################################################
#                                                                              #
#                                SECTION G - ASM                               #
#                                                                              #
################################################################################


#-------------------------------------------------------------------------------
# Password for SYS user of Oracle ASM
#-------------------------------------------------------------------------------
oracle.install.asm.SYSASMPassword=

#-------------------------------------------------------------------------------
# The ASM DiskGroup
#
# Example: oracle.install.asm.diskGroup.name=data
#
#-------------------------------------------------------------------------------
oracle.install.asm.diskGroup.name=

#-------------------------------------------------------------------------------
# Redundancy level to be used by ASM.
# It can be one of the following  
#   - NORMAL
#   - HIGH
#   - EXTERNAL
#   - FLEX#   - EXTENDED (required if oracle.install.crs.config.ClusterConfiguration=EXTENDED)
# Example: oracle.install.asm.diskGroup.redundancy=NORMAL
#
#-------------------------------------------------------------------------------
oracle.install.asm.diskGroup.redundancy=

#-------------------------------------------------------------------------------
# Allocation unit size to be used by ASM.
# It can be one of the following values
#   - 1
#   - 2
#   - 4
#   - 8
#   - 16
# Example: oracle.install.asm.diskGroup.AUSize=4
# size unit is MB
#
#-------------------------------------------------------------------------------
oracle.install.asm.diskGroup.AUSize=

#-------------------------------------------------------------------------------
# Failure Groups for the disk group
# If configuring for Extended cluster specify as list of "failure group name:site"
# tuples.
# Else just specify as list of failure group names
#-------------------------------------------------------------------------------
oracle.install.asm.diskGroup.FailureGroups=

#-------------------------------------------------------------------------------
# List of disks and their failure groups to create a ASM DiskGroup
# (Use this if each of the disks have an associated failure group)
# Failure Groups are not required if oracle.install.asm.diskGroup.redundancy=EXTERNAL
# Example:
#     For Unix based Operating System:
#     oracle.install.asm.diskGroup.disksWithFailureGroupNames=/oracle/asm/disk1,FGName,/oracle/asm/disk2,FGName
#     For Windows based Operating System:
#     oracle.install.asm.diskGroup.disksWithFailureGroupNames=\\.\ORCLDISKDATA0,FGName,\\.\ORCLDISKDATA1,FGName
#
#-------------------------------------------------------------------------------
oracle.install.asm.diskGroup.disksWithFailureGroupNames=

#-------------------------------------------------------------------------------
# List of disks to create a ASM DiskGroup
# (Use this variable only if failure groups configuration is not required)
# Example:
#     For Unix based Operating System:
#     oracle.install.asm.diskGroup.disks=/oracle/asm/disk1,/oracle/asm/disk2
#     For Windows based Operating System:
#     oracle.install.asm.diskGroup.disks=\\.\ORCLDISKDATA0,\\.\ORCLDISKDATA1
#
#-------------------------------------------------------------------------------
oracle.install.asm.diskGroup.disks=

#-------------------------------------------------------------------------------
# List of failure groups to be marked as QUORUM.
# Quorum failure groups contain only voting disk data, no user data is stored
# Example:
#	oracle.install.asm.diskGroup.quorumFailureGroupNames=FGName1,FGName2
#-------------------------------------------------------------------------------
oracle.install.asm.diskGroup.quorumFailureGroupNames=
#-------------------------------------------------------------------------------
# The disk discovery string to be used to discover the disks used create a ASM DiskGroup
#
# Example:
#     For Unix based Operating System:
#     oracle.install.asm.diskGroup.diskDiscoveryString=/oracle/asm/*
#     For Windows based Operating System:
#     oracle.install.asm.diskGroup.diskDiscoveryString=\\.\ORCLDISK*
#
#-------------------------------------------------------------------------------
oracle.install.asm.diskGroup.diskDiscoveryString=

#-------------------------------------------------------------------------------
# Password for ASMSNMP account
# ASMSNMP account is used by Oracle Enterprise Manager to monitor Oracle ASM instances
#-------------------------------------------------------------------------------
oracle.install.asm.monitorPassword=

#-------------------------------------------------------------------------------
# GIMR Storage data ASM DiskGroup
# Applicable only when 
# oracle.install.asm.configureGIMRDataDG=true
# Example: oracle.install.asm.GIMRDG.name=MGMT
#
#-------------------------------------------------------------------------------
oracle.install.asm.gimrDG.name=

#-------------------------------------------------------------------------------
# Redundancy level to be used by ASM.
# It can be one of the following  
#   - NORMAL
#   - HIGH
#   - EXTERNAL
#   - FLEX#   - EXTENDED (only if oracle.install.crs.config.ClusterConfiguration=EXTENDED)
# Example: oracle.install.asm.gimrDG.redundancy=NORMAL
#
#-------------------------------------------------------------------------------
oracle.install.asm.gimrDG.redundancy=

#-------------------------------------------------------------------------------
# Allocation unit size to be used by ASM.
# It can be one of the following values
#   - 1
#   - 2
#   - 4
#   - 8
#   - 16
# Example: oracle.install.asm.gimrDG.AUSize=4
# size unit is MB
#
#-------------------------------------------------------------------------------
oracle.install.asm.gimrDG.AUSize=

#-------------------------------------------------------------------------------
# Failure Groups for the GIMR storage data ASM disk group
# If configuring for Extended cluster specify as list of "failure group name:site"
# tuples.
# Else just specify as list of failure group names
#-------------------------------------------------------------------------------
oracle.install.asm.gimrDG.FailureGroups=

#-------------------------------------------------------------------------------
# List of disks and their failure groups to create GIMR data ASM DiskGroup
# (Use this if each of the disks have an associated failure group)
# Failure Groups are not required if oracle.install.asm.gimrDG.redundancy=EXTERNAL
# Example:
#     For Unix based Operating System:
#     oracle.install.asm.gimrDG.disksWithFailureGroupNames=/oracle/asm/disk1,FGName,/oracle/asm/disk2,FGName
#     For Windows based Operating System:
#     oracle.install.asm.gimrDG.disksWithFailureGroupNames=\\.\ORCLDISKDATA0,FGName,\\.\ORCLDISKDATA1,FGName
#
#-------------------------------------------------------------------------------
oracle.install.asm.gimrDG.disksWithFailureGroupNames=

#-------------------------------------------------------------------------------
# List of disks to create GIMR data ASM DiskGroup
# (Use this variable only if failure groups configuration is not required)
# Example:
#     For Unix based Operating System:
#     oracle.install.asm.gimrDG.disks=/oracle/asm/disk1,/oracle/asm/disk2
#     For Windows based Operating System:
#     oracle.install.asm.gimrDG.disks=\\.\ORCLDISKDATA0,\\.\ORCLDISKDATA1
#
#-------------------------------------------------------------------------------
oracle.install.asm.gimrDG.disks=

#-------------------------------------------------------------------------------
# List of failure groups to be marked as QUORUM.
# Quorum failure groups contain only voting disk data, no user data is stored
# Example:
#	oracle.install.asm.gimrDG.quorumFailureGroupNames=FGName1,FGName2
#-------------------------------------------------------------------------------
oracle.install.asm.gimrDG.quorumFailureGroupNames=

#-------------------------------------------------------------------------------
# Configure AFD - ASM Filter Driver
# Applicable only for FLEX_ASM_STORAGE option
# Specify 'true' if you want to configure AFD, else specify 'false'
#-------------------------------------------------------------------------------
oracle.install.asm.configureAFD=
#-------------------------------------------------------------------------------
# Configure RHPS - Rapid Home Provisioning Service
# Applicable only for DOMAIN cluster configuration
# Specify 'true' if you want to configure RHP service, else specify 'false'
#-------------------------------------------------------------------------------
oracle.install.crs.configureRHPS=

################################################################################
#                                                                              #
#                             SECTION H - UPGRADE                              #
#                                                                              #
################################################################################
#-------------------------------------------------------------------------------
# Specify whether to ignore down nodes during upgrade operation.
# Value should be 'true' to ignore down nodes otherwise specify 'false'
#-------------------------------------------------------------------------------
oracle.install.crs.config.ignoreDownNodes=true
################################################################################
#                                                                              #
#                               MANAGEMENT OPTIONS                             #
#                                                                              #
################################################################################

#-------------------------------------------------------------------------------
# Specify the management option to use for managing Oracle Grid Infrastructure
# Options are:
# 1. CLOUD_CONTROL - If you want to manage your Oracle Grid Infrastructure with Enterprise Manager Cloud Control.
# 2. NONE   -If you do not want to manage your Oracle Grid Infrastructure with Enterprise Manager Cloud Control.
#-------------------------------------------------------------------------------
oracle.install.config.managementOption=

#-------------------------------------------------------------------------------
# Specify the OMS host to connect to Cloud Control.
# Applicable only when oracle.install.config.managementOption=CLOUD_CONTROL
#-------------------------------------------------------------------------------
oracle.install.config.omsHost=

#-------------------------------------------------------------------------------
# Specify the OMS port to connect to Cloud Control.
# Applicable only when oracle.install.config.managementOption=CLOUD_CONTROL
#-------------------------------------------------------------------------------
oracle.install.config.omsPort=

#-------------------------------------------------------------------------------
# Specify the EM Admin user name to use to connect to Cloud Control.
# Applicable only when oracle.install.config.managementOption=CLOUD_CONTROL
#-------------------------------------------------------------------------------
oracle.install.config.emAdminUser=

#-------------------------------------------------------------------------------
# Specify the EM Admin password to use to connect to Cloud Control.
# Applicable only when oracle.install.config.managementOption=CLOUD_CONTROL
#-------------------------------------------------------------------------------
oracle.install.config.emAdminPassword=
################################################################################
#                                                                              #
#                      Root script execution configuration                     #
#                                                                              #
################################################################################

#-------------------------------------------------------------------------------------------------------
# Specify the root script execution mode.
#
#   - true  : To execute the root script automatically by using the appropriate configuration methods.
#   - false : To execute the root script manually.
#
# If this option is selected, password should be specified on the console.
#-------------------------------------------------------------------------------------------------------
oracle.install.crs.rootconfig.executeRootScript=false

#--------------------------------------------------------------------------------------
# Specify the configuration method to be used for automatic root script execution.
#
# Following are the possible choices:
#   - ROOT
#   - SUDO
#--------------------------------------------------------------------------------------
oracle.install.crs.rootconfig.configMethod=
#--------------------------------------------------------------------------------------
# Specify the absolute path of the sudo program.
#
# Applicable only when SUDO configuration method was chosen.
#--------------------------------------------------------------------------------------
oracle.install.crs.rootconfig.sudoPath=

#--------------------------------------------------------------------------------------
# Specify the name of the user who is in the sudoers list. 
# Applicable only when SUDO configuration method was chosen.
# Note:For Grid Infrastructure for Standalone server installations,the sudo user name must be the username of the user performing the installation.
#--------------------------------------------------------------------------------------
oracle.install.crs.rootconfig.sudoUserName=
#--------------------------------------------------------------------------------------
# Specify the nodes batch map.
#
# This should be a comma separated list of node:batch pairs.
# During upgrade, you can sequence the automatic execution of root scripts
# by pooling the nodes into batches. 
# A maximum of three batches can be specified. 
# Installer will execute the root scripts on all the nodes in one batch before
# proceeding to next batch.
# Root script execution on the local node must be in Batch 1.
#
# Examples: 
# 1. oracle.install.crs.config.batchinfo=Node1:1,Node2:2,Node3:2,Node4:3
# 2. oracle.install.crs.config.batchinfo=Node1:1,Node2:2,Node3:2,Node4:2
# 3. oracle.install.crs.config.batchinfo=Node1:1,Node2:1,Node3:2,Node4:3
#
# Applicable only for UPGRADE install option. 
#--------------------------------------------------------------------------------------
oracle.install.crs.config.batchinfo=
################################################################################
#                                                                              #
#                           APPLICATION CLUSTER OPTIONS                        #
#                                                                              #
################################################################################

#-------------------------------------------------------------------------------
# Specify the Virtual hostname to configure virtual access for your Application
# The value to be specified for Virtual hostname is optional.
#-------------------------------------------------------------------------------
oracle.install.crs.app.applicationAddress=
#################################################################################
#										#
#			    DELETE NODE OPTIONS					#
#										#
#################################################################################

#--------------------------------------------------------------------------------
# Specify the node names to delete nodes from cluster. 
# Delete node will be performed only for the remote nodes from the cluster.
#--------------------------------------------------------------------------------
oracle.install.crs.deleteNode.nodes=


D) Grid 설치

설치 스크립트 실행
$GRID_HOME/gridSetup.sh -silent -responseFile ~/gridsetup.rsp
# $GRID_HOME/gridSetup.sh -silent -responseFile ~/gridsetup.rsp -applyRU <RU 압축 해제 경로>
[+ASM1:/home/oracle]> $GRID_HOME/gridSetup.sh -silent -responseFile ~/gridsetup.rsp
Oracle Grid Infrastructure 설정 마법사 실행 중...

[WARNING] [INS-43022] 루트 스크립트를 수동으로 실행하도록 선택했습니다. 업그레이드 루트 스크립트를 실행할 때 일부 노드에 연결할 수 없을 경우 연결 가능한 노드에서 Grid Infrastructure 업그레이드를 수행하려면 연결 가능한 모든 노드에서 이 스크립트를 실행한 후 마지막 노드에서 -force 플래그와 함께 rootupgrade.sh을(를) 재실행해야 할 수 있습니다.

연결할 수 없는 나머지 노드는 설명서에 설명되어 있는 수동 단계에 따라 나중에 업그레이드할 수 있습니다.
[WARNING] [INS-13014] 대상 환경이 일부 선택적 요구 사항을 충족하지 않습니다.
   원인: 일부 선택적 필요 조건이 충족되지 않았습니다. 자세한 내용은 로그를 참조하십시오. /u01/app/oraInventory/logs/GridSetupActions2020-04-16_02-45-53PM/gridSetupActions2020-04-16_02-45-53PM.log
   작업: /u01/app/oraInventory/logs/GridSetupActions2020-04-16_02-45-53PM/gridSetupActions2020-04-16_02-45-53PM.log 로그에서 실패한 필요 조건 검사 목록을 확인하십시오. 로그 파일 또는 설치 설명서에서 필요 조건을 충족하는 적합한 구성을 찾아 수동으로 오류를 수정하십시오.
이 세션에 대한 응답 파일을 다음에서 찾을 수 있습니다.
 /u01/app/19.0.0/grid/install/response/grid_2020-04-16_02-45-53PM.rsp

다음 위치에서 이 설치 세션의 로그를 찾을 수 있습니다.
 /u01/app/oraInventory/logs/GridSetupActions2020-04-16_02-45-53PM/gridSetupActions2020-04-16_02-45-53PM.log

루트 사용자로 다음 스크립트를 실행합니다.
        1. /u01/app/19.0.0/grid/rootupgrade.sh

다음 노드에서 /u01/app/19.0.0/grid/rootupgrade.sh을(를) 실행하십시오.
[rac1, rac2]

먼저 로컬 노드에서 스크립트를 실행하십시오. 성공적으로 완료된 후 마지막 노드로 지정하는 노드를 제외한 모든 다른 노드에서 병렬로 스크립트를 시작할 수 있습니다. 마지막 노드를 제외한 모든 노드가 성공적으로 완료되면 마지막 노드에서 스크립트를 실행하십시오.


Successfully Setup Software with warning(s).
설치 사용자로서 다음 명령을 실행하여 구성을 완료합니다.
        /u01/app/19.0.0/grid/gridSetup.sh -executeConfigTools -responseFile /home/oracle/gridsetup.rsp [-silent]

RPM 패키지에 대한 검사는 사전 검증으로 확인되었으므로 무시해도 됩니다. (root 유저 권한으로만 검사가 가능하며, 일반 유저인 oracle만으로 수행시 경고 메시지만 출력됨)

INFO:  [2020. 4. 16 오후 2:48:49] ------------------List of failed Tasks------------------
INFO:  [2020. 4. 16 오후 2:48:49] *********************************************
INFO:  [2020. 4. 16 오후 2:48:49] RPM Package Manager 데이터베이스: RPM Package Manager 데이터베이스 파일을 확인합니다.
INFO:  [2020. 4. 16 오후 2:48:49] Severity:INFORMATION
INFO:  [2020. 4. 16 오후 2:48:49] OverallStatus:INFORMATION
INFO:  [2020. 4. 16 오후 2:48:49] -----------------End of failed Tasks List----------------
WARNING:  [2020. 4. 16 오후 2:48:49] [WARNING] [INS-13014] 대상 환경이 일부 선택적 요구 사항을 충족하지 않습니다.
   원인: 일부 선택적 필요 조건이 충족되지 않았습니다. 자세한 내용은 로그를 참조하십시오. /u01/app/oraInventory/logs/GridSetupActions2020-04-16_02-45-53PM/gridSetupActions2020-04-16_02-45-53PM.log
   작업: /u01/app/oraInventory/logs/GridSetupActions2020-04-16_02-45-53PM/gridSetupActions2020-04-16_02-45-53PM.log 로그에서 실패한 필요 조건 검사 목록을 확인하십시오. 로그 파일 또는 설치 설명서에서 필요 조건을 충족하는 적합한 구성을 찾아 수동으로 오류를 수정하십시오.


E) 클러스터 업그레이드

모든 노드에서 rootupgrade.sh 실행
/u01/app/19.0.0/grid/rootupgrade.sh
[root@rac1 ~]# /u01/app/19.0.0/grid/rootupgrade.sh
Check /u01/app/19.0.0/grid/install/root_rac1_2020-04-16_14-53-31-198208287.log for the output of root script
[root@rac1 ~]# cat /u01/app/19.0.0/grid/install/root_rac1_2020-04-16_14-53-31-198208287.log
Performing root user operation.

The following environment variables are set as:
    ORACLE_OWNER= oracle
    ORACLE_HOME=  /u01/app/19.0.0/grid
   Copying dbhome to /usr/local/bin ...
   Copying oraenv to /usr/local/bin ...
   Copying coraenv to /usr/local/bin ...

Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Relinking oracle with rac_on option
Using configuration parameter file: /u01/app/19.0.0/grid/crs/install/crsconfig_params
The log of current session can be found at:
  /u01/app/oracle/crsdata/rac1/crsconfig/rootcrs_rac1_2020-04-16_02-54-01PM.log
2020/04/16 14:54:30 CLSRSC-595: Executing upgrade step 1 of 18: 'UpgradeTFA'.
2020/04/16 14:54:30 CLSRSC-4015: Performing install or upgrade action for Oracle Trace File Analyzer (TFA) Collector.
2020/04/16 14:54:30 CLSRSC-595: Executing upgrade step 2 of 18: 'ValidateEnv'.
2020/04/16 14:54:39 CLSRSC-595: Executing upgrade step 3 of 18: 'GetOldConfig'.
2020/04/16 14:54:39 CLSRSC-464: Starting retrieval of the cluster configuration data
2020/04/16 14:54:49 CLSRSC-692: Checking whether CRS entities are ready for upgrade. This operation may take a few minutes.
2020/04/16 14:58:12 CLSRSC-4003: Successfully patched Oracle Trace File Analyzer (TFA) Collector.
2020/04/16 14:59:26 CLSRSC-693: CRS entities validation completed successfully.
2020/04/16 14:59:32 CLSRSC-515: Starting OCR manual backup.
2020/04/16 14:59:42 CLSRSC-516: OCR manual backup successful.
2020/04/16 15:02:52 CLSRSC-486:
 At this stage of upgrade, the OCR has changed.
 Any attempt to downgrade the cluster after this point will require a complete cluster outage to restore the OCR.
2020/04/16 15:02:53 CLSRSC-541:
 To downgrade the cluster:
 1. All nodes that have been upgraded must be downgraded.
2020/04/16 15:02:53 CLSRSC-542:
 2. Before downgrading the last node, the Grid Infrastructure stack on all other cluster nodes must be down.
2020/04/16 15:03:08 CLSRSC-465: Retrieval of the cluster configuration data has successfully completed.
2020/04/16 15:03:09 CLSRSC-595: Executing upgrade step 4 of 18: 'GenSiteGUIDs'.
2020/04/16 15:03:11 CLSRSC-595: Executing upgrade step 5 of 18: 'UpgPrechecks'.
2020/04/16 15:03:20 CLSRSC-363: User ignored prerequisites during installation
2020/04/16 15:03:29 CLSRSC-595: Executing upgrade step 6 of 18: 'SetupOSD'.
2020/04/16 15:03:29 CLSRSC-595: Executing upgrade step 7 of 18: 'PreUpgrade'.
2020/04/16 15:04:06 CLSRSC-468: Setting Oracle Clusterware and ASM to rolling migration mode
2020/04/16 15:04:06 CLSRSC-482: Running command: '/u01/app/19.0.0/grid/bin/asmca -silent -upgradeNodeASM -nonRolling false -oldCRSHome /u01/app/11.2.0/grid -oldCRSVersion 11.2.0.4.0 -firstNode true -startRolling true '

ASM 구성이 로컬 노드에서 성공적으로 업그레이드되었습니다.

2020/04/16 15:04:15 CLSRSC-469: Successfully set Oracle Clusterware and ASM to rolling migration mode
2020/04/16 15:04:31 CLSRSC-466: Starting shutdown of the current Oracle Grid Infrastructure stack
2020/04/16 15:05:00 CLSRSC-467: Shutdown of the current Oracle Grid Infrastructure stack has successfully completed.
2020/04/16 15:05:08 CLSRSC-595: Executing upgrade step 8 of 18: 'CheckCRSConfig'.
2020/04/16 15:05:09 CLSRSC-595: Executing upgrade step 9 of 18: 'UpgradeOLR'.
2020/04/16 15:05:25 CLSRSC-595: Executing upgrade step 10 of 18: 'ConfigCHMOS'.
2020/04/16 15:05:25 CLSRSC-595: Executing upgrade step 11 of 18: 'UpgradeAFD'.
2020/04/16 15:05:34 CLSRSC-595: Executing upgrade step 12 of 18: 'createOHASD'.
2020/04/16 15:05:43 CLSRSC-595: Executing upgrade step 13 of 18: 'ConfigOHASD'.
2020/04/16 15:05:44 CLSRSC-329: Replacing Clusterware entries in file 'oracle-ohasd.service'
2020/04/16 15:07:02 CLSRSC-595: Executing upgrade step 14 of 18: 'InstallACFS'.
2020/04/16 15:08:13 CLSRSC-595: Executing upgrade step 15 of 18: 'InstallKA'.
2020/04/16 15:08:25 CLSRSC-595: Executing upgrade step 16 of 18: 'UpgradeCluster'.
clscfg: EXISTING configuration version 5 detected.
Successfully taken the backup of node specific configuration in OCR.
Successfully accumulated necessary OCR keys.
Creating OCR keys for user 'root', privgrp 'root'..
Operation successful.
2020/04/16 15:23:00 CLSRSC-343: Successfully started Oracle Clusterware stack
2020/04/16 15:23:11 CLSRSC-595: Executing upgrade step 17 of 18: 'UpgradeNode'.
2020/04/16 15:23:17 CLSRSC-474: Initiating upgrade of resource types
2020/04/16 15:24:35 CLSRSC-475: Upgrade of resource types successfully initiated.
2020/04/16 15:24:49 CLSRSC-595: Executing upgrade step 18 of 18: 'PostUpgrade'.
2020/04/16 15:25:07 CLSRSC-325: Configure Oracle Grid Infrastructure for a Cluster ... succeeded
[root@rac2 ~]# /u01/app/19.0.0/grid/rootupgrade.sh
Check /u01/app/19.0.0/grid/install/root_rac2_2020-04-16_15-26-36-043316132.log for the output of root script
[root@rac2 ~]# cat /u01/app/19.0.0/grid/install/root_rac2_2020-04-16_15-26-36-043316132.log
Performing root user operation.

The following environment variables are set as:
    ORACLE_OWNER= oracle
    ORACLE_HOME=  /u01/app/19.0.0/grid
   Copying dbhome to /usr/local/bin ...
   Copying oraenv to /usr/local/bin ...
   Copying coraenv to /usr/local/bin ...

Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Relinking oracle with rac_on option
Using configuration parameter file: /u01/app/19.0.0/grid/crs/install/crsconfig_params
The log of current session can be found at:
  /u01/app/oracle/crsdata/rac2/crsconfig/rootcrs_rac2_2020-04-16_03-27-06PM.log
2020/04/16 15:27:21 CLSRSC-595: Executing upgrade step 1 of 18: 'UpgradeTFA'.
2020/04/16 15:27:22 CLSRSC-4015: Performing install or upgrade action for Oracle Trace File Analyzer (TFA) Collector.
2020/04/16 15:27:22 CLSRSC-595: Executing upgrade step 2 of 18: 'ValidateEnv'.
2020/04/16 15:27:24 CLSRSC-595: Executing upgrade step 3 of 18: 'GetOldConfig'.
2020/04/16 15:27:24 CLSRSC-464: Starting retrieval of the cluster configuration data
2020/04/16 15:27:43 CLSRSC-465: Retrieval of the cluster configuration data has successfully completed.
2020/04/16 15:27:43 CLSRSC-595: Executing upgrade step 4 of 18: 'GenSiteGUIDs'.
2020/04/16 15:27:43 CLSRSC-595: Executing upgrade step 5 of 18: 'UpgPrechecks'.
2020/04/16 15:27:44 CLSRSC-363: User ignored prerequisites during installation
2020/04/16 15:27:46 CLSRSC-595: Executing upgrade step 6 of 18: 'SetupOSD'.
2020/04/16 15:27:46 CLSRSC-595: Executing upgrade step 7 of 18: 'PreUpgrade'.

ASM 구성이 로컬 노드에서 성공적으로 업그레이드되었습니다.

2020/04/16 15:28:33 CLSRSC-466: Starting shutdown of the current Oracle Grid Infrastructure stack
2020/04/16 15:29:02 CLSRSC-467: Shutdown of the current Oracle Grid Infrastructure stack has successfully completed.
2020/04/16 15:29:09 CLSRSC-595: Executing upgrade step 8 of 18: 'CheckCRSConfig'.
2020/04/16 15:29:10 CLSRSC-595: Executing upgrade step 9 of 18: 'UpgradeOLR'.
2020/04/16 15:29:19 CLSRSC-595: Executing upgrade step 10 of 18: 'ConfigCHMOS'.
2020/04/16 15:29:19 CLSRSC-595: Executing upgrade step 11 of 18: 'UpgradeAFD'.
2020/04/16 15:29:21 CLSRSC-595: Executing upgrade step 12 of 18: 'createOHASD'.
2020/04/16 15:29:23 CLSRSC-595: Executing upgrade step 13 of 18: 'ConfigOHASD'.
2020/04/16 15:29:24 CLSRSC-329: Replacing Clusterware entries in file 'oracle-ohasd.service'
2020/04/16 15:30:47 CLSRSC-595: Executing upgrade step 14 of 18: 'InstallACFS'.
2020/04/16 15:30:53 CLSRSC-4003: Successfully patched Oracle Trace File Analyzer (TFA) Collector.
2020/04/16 15:32:13 CLSRSC-595: Executing upgrade step 15 of 18: 'InstallKA'.
2020/04/16 15:32:15 CLSRSC-595: Executing upgrade step 16 of 18: 'UpgradeCluster'.
2020/04/16 15:33:17 CLSRSC-343: Successfully started Oracle Clusterware stack
clscfg: EXISTING configuration version 19 detected.
Successfully taken the backup of node specific configuration in OCR.
Successfully accumulated necessary OCR keys.
Creating OCR keys for user 'root', privgrp 'root'..
Operation successful.
2020/04/16 15:34:34 CLSRSC-595: Executing upgrade step 17 of 18: 'UpgradeNode'.
Start upgrade invoked..
CRS 관리 객체를 업그레이드하는 중입니다.
22개 CRS 리소스를 업그레이드하는 중입니다.
CRS 리소스 업그레이드를 완료했습니다.
70개 CRS 유형을 업그레이드하는 중입니다.
CRS 유형 업그레이드를 완료했습니다.
3개 CRS 서버 풀을 업그레이드하는 중입니다.
CRS 서버 풀 업그레이드를 완료했습니다.
2개 기존 서버를 업그레이드하는 중입니다.
서버 업그레이드를 완료했습니다.
CRS 업그레이드가 완료되었습니다.
2020/04/16 15:37:11 CLSRSC-478: Setting Oracle Clusterware active version on the last node to be upgraded
2020/04/16 15:37:11 CLSRSC-482: Running command: '/u01/app/19.0.0/grid/bin/crsctl set crs activeversion'
Oracle Clusterware의 활성 버전 업그레이드를 시작했습니다. 이 작업은 몇 분 정도 걸릴 수 있습니다.
OCR 업그레이드가 시작되었습니다.
OCR이 성공적으로 업그레이드되었습니다.
CSS 업그레이드를 시작했습니다.
CSS가 성공적으로 업그레이드되었습니다.
Oracle ASM 업그레이드를 시작했습니다.
CRS 업그레이드를 시작했습니다.
CRS가 성공적으로 업그레이드되었습니다.
Started to upgrade Oracle ACFS.
Oracle ACFS was successfully upgraded.
Oracle Clusterware의 활성 버전이 성공적으로 업그레이드되었습니다.
Oracle Clusterware 활성 버전이 성공적으로 19.0.0.0.0(으)로 설정되었습니다.
2020/04/16 15:39:59 CLSRSC-479: Successfully set Oracle Clusterware active version
2020/04/16 15:40:13 CLSRSC-476: Finishing upgrade of resource types
2020/04/16 15:41:16 CLSRSC-477: Successfully completed upgrade of resource types
2020/04/16 15:42:15 CLSRSC-595: Executing upgrade step 18 of 18: 'PostUpgrade'.
Successfully updated XAG resources.
2020/04/16 15:44:03 CLSRSC-325: Configure Oracle Grid Infrastructure for a Cluster ... succeeded


executeConfigTools 수행
$GRID_HOME/gridSetup.sh -executeConfigTools -responseFile ~/gridsetup.rsp -silent
[+ASM1:/home/oracle]> $GRID_HOME/gridSetup.sh -executeConfigTools -responseFile ~/gridsetup.rsp -silent
Oracle Grid Infrastructure 설정 마법사 실행 중...

다음 위치에서 이 세션의 로그를 찾을 수 있습니다.
/u01/app/oraInventory/logs/GridSetupActions2020-04-16_03-47-17PM

다음 위치에서 이 설치 세션의 로그를 찾을 수 있습니다.
 /u01/app/oraInventory/logs/UpdateNodeList2020-04-16_03-47-17PM.log
다음 위치에서 이 설치 세션의 로그를 찾을 수 있습니다.
 /u01/app/oraInventory/logs/UpdateNodeList2020-04-16_03-47-17PM.log
Successfully Configured Software.
[+ASM1:/home/oracle]> cat /u01/app/oraInventory/logs/UpdateNodeList2020-04-16_03-47-17PM.log
****************************************************************************
정보: Oracle Universal Installer 버전: 12.2.0.7.0

정보: 환경 변수:

정보:   ORACLE_HOME = /u01/app/19.0.0/grid

정보:   PATH = /u01/app/19.0.0/grid/bin:/u01/app/19.0.0/grid/OPatch:/usr/sbin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/oracle/.local/bin:/home/oracle/bin

정보:   CLASSPATH = /u01/app/oracle/product/11.2.0/db_1/JRE:/u01/app/oracle/product/11.2.0/db_1/jlib:/u01/app/oracle/product/11.2.0/db_1/rdbms/jlib

정보: 사용자 이름:oracle
정보:
=================================================================JVM PROPERTIES===========================================================
oracle.installer.warningonremovefiles = true
oracle.installer.removeHome = false
file.encoding.pkg = sun.io
oracle.installer.ignoreDiskLabel = false
java.home = /u01/app/19.0.0/grid/jdk/jre
actionable.validation.advisor.severity = FATAL
autoConfigureVIP_helpid = S_HELP_AUTOCONFIGURE_VIP@oracle.sysman.oii.oiir.OiirRuntimeRes
sun.font.fontmanager = sun.awt.X11FontManager
oracle.installer.waitforcompletion = false
java.endorsed.dirs = /u01/app/19.0.0/grid/jdk/jre/lib/endorsed
oracle.installer.silent = true
oracle.install.asm.util.asmtoolg.ASMTOOL_HOME = /u01/app/19.0.0/grid/bin
oracle.installer.suppressedSource = false
oracle.installer.rootshbackup = true
oracle.installer.fastcopy = true
sun.os.patch.level = unknown
java.vendor.url = http://java.oracle.com/
oracle.installer.acceptUntrustedCertificates = false
java.version = 1.8.0_201
oracle.installer.cleanup = false
oracle.installer.suppressPostCopyScript = false
oracle.installer.installAddOns = false
oracle.installer.generateGUID = true
oracle.installer.help = false
oracle.srvm.formCluster = false
oracle.install.commons.base.driver.common.SetupDriver = oracle.install.ivw.crs.driver.CRSImageSetupDriver
oracle.installer.silentVariableValidation = false
java.vendor.url.bug = http://bugreport.sun.com/bugreport/
oracle.installer.oui_loc = /u01/app/19.0.0/grid/oui
oracle.install.library.partition.diskmanager.ORAREMOTESERVICE_PATH = /u01/app/19.0.0/grid/bin
oracle.installer.addNode = false
user.name = oracle
sun.io.unicode.encoding = UnicodeLittle
sun.jnu.encoding = UTF-8
oracle.install.asm.util.kfod.PATH = /u01/app/19.0.0/grid/bin
java.runtime.name = Java(TM) SE Runtime Environment
oracle.installer.printmemory = false
oracle.installer.performRemoteCopyInAPIMode = false
oracle.installer.nobootStrap = false
oracle.installer.dynamicLoadOnPrereqRetry = true
oracle.installer.ntw32FoldersActions = true
oracle.installer.preCloneSetup = false
oracle.installer.removeallfiles = false
java.specification.name = Java Platform API Specification
oracle.installer.exitOnPrereqFailure = false
user.timezone = Asia/Seoul
path.separator = :
file.encoding = UTF-8
application.commandline.validateForMandatoryDependentArgs = true
oracle.installer.ignorePatchConflicts = false
sun.java.command = oracle.install.ivw.crs.driver.CRSConfigWizard -printtime ORACLE_HOME=/u01/app/19.0.0/grid -executeConfigTools -responseFile /home/oracle/gridsetup.rsp -silent
oracle.installer.continueOnAllChecksPass = false
oracle.installer.executeSysPrereqs = false
oracle.installer.forceDeinstall = false
oracle.installer.timestamp = 2020-04-16_03-47-17PM
oracle.installer.detachHome = false
java.io.tmpdir = /tmp/GridSetupActions2020-04-16_03-47-17PM
oracle.installer.scratchPath = /u01/app/19.0.0/grid/inventory/Scripts
user.language = ko
oracle.installer.skipACLSetting = false
line.separator =

oracle.installer.enableRollingUpgrade = false
oracle.installer.deinstall = false
oracle.installer.rootshcumulative = false
oracle.installer.gridConfig = true
oracle.installer.defaultHomeName = false
oracle.installer.ignoreSharedInventory = true
java.vm.info = mixed mode
java.vm.specification.name = Java Virtual Machine Specification
oracle.installer.cleanUpOnExit = true
oracle.installer.tempLogDir = /tmp/GridSetupActions2020-04-16_03-47-17PM
exitOnMakeFailure_helpid = S_HELP_OPTION_EXITONMAKEFAILURE@oracle.sysman.oii.oiir.OiirRuntimeRes
oracle.installer.summary_expand_nodes = Global,Langs,Space,NewInstalls,Upgrades,Reinstalls,Deinstalls,NewLangs
oracle.installer.upgradeOUI = false
oracle.install.commons.base.util.OracleServiceRegistry = oracle.install.driver.oui.OUIOracleServiceRegistry
java.awt.printerjob = sun.print.PSPrinterJob
oracle.installer.install.showproductname = true
oracle.installer.showVariables = false
oracle.installer.remoteActions = true
oracle.installer.supportBinaryInventory = false
OUI_TEMP_OB = /u01/app/oraInventory/logs/GridSetupActions2020-04-16_03-47-17PM/temp_ob
oracle.installer.console = true
oracle.installer.welcome = true
os.name = Linux
oracle.installer.exitOnVarValidationFailure = false
java.specification.vendor = Oracle Corporation
java.vm.name = Java HotSpot(TM) 64-Bit Server VM
oracle.installer.updateNodeList = false
oracle.installer.suppressPreCopyScript = false
java.library.path = /u01/app/19.0.0/grid/lib:/u01/app/19.0.0/grid/oui/lib/linux64:/u01/app/19.0.0/grid/bin:/u01/app/oracle/product/11.2.0/db_1/lib:/lib:/usr/lib:/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
SRVM_SAVE_CACHE = true
java.class.version = 52.0
oracle.install.commons.net.support.SSHSupportManager = oracle.install.commons.net.support.DefaultSSHSupportManager
oracle.installer.printdiskusage = false
oracle.installer.copy = true
oracle.installer.config = true
oracle.installer.allDepHomes = false
application.commandline.currentContextId = GridSetup
oracle.installer.record = false
oracle.installer.remote = false
oracle.installer.install.showinstalledproducts = true
oracle.installer.fileActions = true
sun.boot.library.path = /u01/app/19.0.0/grid/jdk/jre/lib/amd64
example_ids = S_HELP_VARIABLE_DEFINITION,S_HELP_SESSION_VARIABLE_TITLE,S_HELP_SESSION_EX1,S_HELP_SESSION_EX2,S_HELP_SESSION_VARIABLE_LOOKUP,S_HELP_COMPONENT_VARIABLE_TITLE,S_HELP_COMPONENT_EX1,S_HELP_COMPONENT_EX2,S_HELP_COMPONENT_VARIABLE_LOOKUP
sun.management.compiler = HotSpot 64-Bit Tiered Compilers
java.awt.graphicsenv = sun.awt.X11GraphicsEnvironment
oracle.installer.install.showproductversion = true
oracle.installer.wait = true
oracle.installer.printtimeverbose = false
oracle.installer.clusterEnabled = true
oracle.install.asm.util.kfod.KFOD_ORACLE_HOME = /u01/app/19.0.0/grid
oracle.installer.depHomesOnly = false
oracle.installer.configWizard = true
oracle.installer.clone = false
oracle.installer.removeAllPatches = false
java.vm.specification.version = 1.8
oracle.installer.installUpdates = false
awt.toolkit = sun.awt.X11.XToolkit
oracle.installer.remotecopy.standalone = true
sun.cpu.isalist =
oracle.installer.entryPoint = oracle.crs_Complete_cluster_install
java.ext.dirs = /u01/app/19.0.0/grid/jdk/jre/lib/ext:/usr/java/packages/lib/ext
oracle.installer.forceClone = false
os.version = 4.1.12-112.16.4.el7uek.x86_64
oracle.installer.appendConfigCommands = false
application.commandline.toolName = gridSetup.sh
oracle.installer.backupInventory = true
user.home = /home/oracle
oracle.installer.testForAutoUpdates = false
java.vm.vendor = Oracle Corporation
oracle.installer.h = false
oracle.installer.skipLogsToHome = false
oracle.installer.exitOnStopInstall = false
oracle.installer.splash = true
oracle.installer.putTimestamp = false
oracle.installer.mandatorySetup = false
user.dir = /u01/app/19.0.0/grid
oracle.installer.setCustomNodelist = false
oracle.installer.printtime = true
oracle.installer.executeRemotePrereqs = false
oracle.installer.updateNodeListEx = false
oracle.installer.exitonback = false
oracle.installer.oh_admin_acl = false
oracle.installer.responseFile = /home/oracle/gridsetup.rsp
oracle.install.cvu.prereq_xml_loc = /u01/app/19.0.0/grid/cv/cvdata/cvu_prereq.xml
sun.cpu.endian = little
oracle.installer.sessionType = Install
oracle.sysman.prov.PathsPropertiesLoc = /u01/app/19.0.0/grid/oui/prov/resources
oracle.installer.link = true
oracle.installer.library_loc = /u01/app/19.0.0/grid/oui/lib/linux64
java.vm.version = 25.201-b09
ORACLE_HOME = /u01/app/19.0.0/grid
java.class.path = /u01/app/19.0.0/grid/install/jlib/installcommons_1.0.0b.jar:/u01/app/19.0.0/grid/install/jlib/instcommon.jar:/u01/app/19.0.0/grid/install/jlib/instcrs.jar:/u01/app/19.0.0/grid/install/jlib/pilot_1.0.0b.jar:/u01/app/19.0.0/grid/install/jlib/instdb.jar:/u01/app/19.0.0/grid/install/jlib/instclient.jar:/u01/app/19.0.0/grid/install/jlib/emCoreConsole.jar:/u01/app/19.0.0/grid/jlib/cvu.jar:/u01/app/19.0.0/grid/jlib/srvmhas.jar:/u01/app/19.0.0/grid/jlib/srvmasm.jar:/u01/app/19.0.0/grid/jlib/gns.jar:/u01/app/19.0.0/grid/jlib/srvm.jar:/u01/app/19.0.0/grid/jlib/oraclepki.jar:/u01/app/19.0.0/grid/jlib/mgmtca.jar:/u01/app/19.0.0/grid/jlib/mgmtua.jar:/u01/app/19.0.0/grid/jlib/clscred.jar:/u01/app/19.0.0/grid/jlib/oracle.dbtools-common.jar:/u01/app/19.0.0/grid/jlib/wsclient_extended.jar:/u01/app/19.0.0/grid/jlib/adf-share-ca.jar:/u01/app/19.0.0/grid/jlib/jmxspi.jar:/u01/app/19.0.0/grid/jlib/emca.jar:/u01/app/19.0.0/grid/jlib/entityManager_proxy.jar:/u01/app/19.0.0/grid/jlib/javax.security.jacc_1.0.0.0_1-1.jar:/u01/app/19.0.0/grid/jlib/orai18n-mapping.jar:/u01/app/19.0.0/grid/jlib/orai18n-utility.jar:/u01/app/19.0.0/grid/jlib/orai18n-translation.jar:/u01/app/19.0.0/grid/jlib/jwc-cred.jar:/u01/app/19.0.0/grid/jdbc/lib/ojdbc8.jar:/u01/app/19.0.0/grid/OPatch/jlib/opatchsdk.jar:/u01/app/19.0.0/grid/OPatch/jlib/opatch.jar:/u01/app/19.0.0/grid/oui/jlib/OraPrereqChecks.jar:/u01/app/19.0.0/grid/oui/jlib/prov_fixup.jar:/u01/app/19.0.0/grid/oui/jlib/ssh.jar:/u01/app/19.0.0/grid/oui/jlib/jsch.jar:/u01/app/19.0.0/grid/oui/jlib/remoteinterfaces.jar:/u01/app/19.0.0/grid/oui/jlib/OraPrereq.jar:/u01/app/19.0.0/grid/oui/jlib/com.oracle.glcm.patch.opatch-common-api-schema_13.9.3.0.jar:/u01/app/19.0.0/grid/oui/jlib/share.jar:/u01/app/19.0.0/grid/oui/jlib/OraSuiteInstaller.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_pt_BR.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_fr.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_ja.jar:/u01/app/19.0.0/grid/oui/jlib/swingaccess.jar:/u01/app/19.0.0/grid/oui/jlib/ewt3.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_es.jar:/u01/app/19.0.0/grid/oui/jlib/xml.jar:/u01/app/19.0.0/grid/oui/jlib/OraInstallerNet.jar:/u01/app/19.0.0/grid/oui/jlib/com.oracle.glcm.patch.opatch-common-api-interfaces_13.9.3.0.jar:/u01/app/19.0.0/grid/oui/jlib/jewt4.jar:/u01/app/19.0.0/grid/oui/jlib/emCfg.jar:/u01/app/19.0.0/grid/oui/jlib/oui.jar:/u01/app/19.0.0/grid/oui/jlib/filesList.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp.jar:/u01/app/19.0.0/grid/oui/jlib/orai18n-collation.jar:/u01/app/19.0.0/grid/oui/jlib/ohj.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_zh_CN.jar:/u01/app/19.0.0/grid/oui/jlib/com.oracle.glcm.patch.opatch-common-api_13.9.3.0.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_it.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_zh_TW.jar:/u01/app/19.0.0/grid/oui/jlib/classes12.jar:/u01/app/19.0.0/grid/oui/jlib/xmlparserv2.jar:/u01/app/19.0.0/grid/oui/jlib/http_client.jar:/u01/app/19.0.0/grid/oui/jlib/OraCheckPoint.jar:/u01/app/19.0.0/grid/oui/jlib/oneclick.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_de.jar:/u01/app/19.0.0/grid/oui/jlib/InstImages.jar:/u01/app/19.0.0/grid/oui/jlib/ojmisc.jar:/u01/app/19.0.0/grid/oui/jlib/oracle_ice.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_ko.jar:/u01/app/19.0.0/grid/oui/jlib/help-share.jar:/u01/app/19.0.0/grid/oui/jlib/OraInstaller.jar:/u01/app/19.0.0/grid/oui/jlib/ewt3-swingaccess.jar
oracle.installer.oneclick = false
oracle.installer.ouiApiMode = true
os.arch = amd64
oracle.installer.attachHome = false
oracle.installer.addLangs = false
oracle.installer.ignoreDiskWarning = false
oracle.installer.createLinkBackup = true
oracle.installer.compsdeinstall = true
oracle.installer.homepermissioncheck = true
oracle.installer.force = false
oracle.installer.cfs = false
oracle.installer.repeat = true
oracle.installer.doNotUpdateNodeList = false
sun.java.launcher = SUN_STANDARD
CV_HOME = /u01/app/19.0.0/grid
java.vm.specification.vendor = Oracle Corporation
oracle.installer.showLoadProgress = false
oracle.installer.defaultifyLanguages = false
file.separator = /
oracle.installer.ignorePreReq = false
CVU_OS_SETTINGS = SHELL_NOFILE_SOFT_LIMIT:1024,SHELL_STACK_SOFT_LIMIT:10240,SHELL_UMASK:0022
java.runtime.version = 1.8.0_201-b09
sun.boot.class.path = /u01/app/19.0.0/grid/jdk/jre/lib/resources.jar:/u01/app/19.0.0/grid/jdk/jre/lib/rt.jar:/u01/app/19.0.0/grid/jdk/jre/lib/sunrsasign.jar:/u01/app/19.0.0/grid/jdk/jre/lib/jsse.jar:/u01/app/19.0.0/grid/jdk/jre/lib/jce.jar:/u01/app/19.0.0/grid/jdk/jre/lib/charsets.jar:/u01/app/19.0.0/grid/jdk/jre/lib/jfr.jar:/u01/app/19.0.0/grid/jdk/jre/classes
java.security.policy = jar:file:/u01/app/19.0.0/grid/install/jlib/installcommons_1.0.0b.jar!/oracle/install/commons/base/driver/common/installer.policy
oracle.installer.relink = false
user.country = KR
oracle.installer.ignoreSysPrereqs = false
oracle.installer.debug = false
oracle.installer.remoteInvocation = false
oracle.installer.local = false
oracle.installer.useExistingInventory = true
oracle.installer.clusterSwitch = false
oracle.installer.background = true
java.vendor = Oracle Corporation
oracle.installer.logCopyRequired = false
java.specification.version = 1.8
oracle.installer.logPrefix = gridSetupActions
sun.arch.data.model = 64
==========================================================================================================================================
정보: Creating a new Install area Control for this inventory session with new  access level  2
정보: Install area Control created with access level  2
정보: Initializing Logs dir to - /u01/app/oraInventory/logs
정보: Ending the inventory Session
정보: config-context initialized
정보:
 The Runconfig command constructed is /u01/app/19.0.0/grid/oui/bin/runConfig.sh ORACLE_HOME=/u01/app/19.0.0/grid MODE=perform ACTION=configure RERUN=true $*
정보: Since the option is to overwrite the existing /u01/app/19.0.0/grid/cfgtoollogs/configToolAllCommands file, backing it up
정보: The backed up file name is /u01/app/19.0.0/grid/cfgtoollogs/configToolAllCommands.bak
정보: Done processing command line arguments
정보: ''ORACLE_HOME'' 변수를 ''/u01/app/11.2.0/grid''(으)로 설정하는 중입니다. 명령행에서 값을 받았습니다.
정보: ''CLUSTER_NEW_NODES'' 변수를 ''''(으)로 설정하는 중입니다. 명령행에서 값을 받았습니다.
정보: ''NODES_TO_SET'' 변수를 ''rac1,rac2''(으)로 설정하는 중입니다. 명령행에서 값을 받았습니다.
정보: ''CRS'' 변수를 ''false''(으)로 설정하는 중입니다. 명령행에서 값을 받았습니다.
정보: Done creating session context and setting session variables as per command line
정보: Creating a new Install area Control for this inventory session with new  access level  1
정보: Install area Control created with access level  1
****************************************************************************
정보: Oracle Universal Installer 버전: 12.2.0.7.0

정보: 환경 변수:

정보:   ORACLE_HOME = /u01/app/19.0.0/grid

정보:   PATH = /u01/app/19.0.0/grid/bin:/u01/app/19.0.0/grid/OPatch:/usr/sbin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/oracle/.local/bin:/home/oracle/bin

정보:   CLASSPATH = /u01/app/oracle/product/11.2.0/db_1/JRE:/u01/app/oracle/product/11.2.0/db_1/jlib:/u01/app/oracle/product/11.2.0/db_1/rdbms/jlib

정보: 사용자 이름:oracle
정보:
=================================================================JVM PROPERTIES===========================================================
oracle.installer.warningonremovefiles = true
oracle.installer.removeHome = false
file.encoding.pkg = sun.io
oracle.installer.ignoreDiskLabel = false
java.home = /u01/app/19.0.0/grid/jdk/jre
HOME_LOCATION_API = /u01/app/11.2.0/grid
actionable.validation.advisor.severity = FATAL
autoConfigureVIP_helpid = S_HELP_AUTOCONFIGURE_VIP@oracle.sysman.oii.oiir.OiirRuntimeRes
sun.font.fontmanager = sun.awt.X11FontManager
oracle.installer.waitforcompletion = false
java.endorsed.dirs = /u01/app/19.0.0/grid/jdk/jre/lib/endorsed
oracle.installer.silent = true
oracle.install.asm.util.asmtoolg.ASMTOOL_HOME = /u01/app/19.0.0/grid/bin
oracle.installer.suppressedSource = false
oracle.installer.rootshbackup = true
oracle.installer.fastcopy = true
sun.os.patch.level = unknown
java.vendor.url = http://java.oracle.com/
oracle.installer.acceptUntrustedCertificates = false
java.version = 1.8.0_201
oracle.installer.cleanup = false
oracle.installer.suppressPostCopyScript = false
oracle.installer.installAddOns = false
oracle.installer.generateGUID = true
oracle.installer.help = false
oracle.srvm.formCluster = false
oracle.install.commons.base.driver.common.SetupDriver = oracle.install.ivw.crs.driver.CRSImageSetupDriver
oracle.installer.silentVariableValidation = false
java.vendor.url.bug = http://bugreport.sun.com/bugreport/
oracle.installer.oui_loc = /u01/app/19.0.0/grid/oui
java.protocol.handler.pkgs = |oracle.sysman.oii
oracle.install.library.partition.diskmanager.ORAREMOTESERVICE_PATH = /u01/app/19.0.0/grid/bin
oracle.installer.addNode = false
user.name = oracle
sun.io.unicode.encoding = UnicodeLittle
sun.jnu.encoding = UTF-8
oracle.install.asm.util.kfod.PATH = /u01/app/19.0.0/grid/bin
java.runtime.name = Java(TM) SE Runtime Environment
oracle.installer.printmemory = false
oracle.installer.performRemoteCopyInAPIMode = false
DO_NOT_UPDATE_LOCAL_NODE_LIST = false
oracle.installer.nobootStrap = false
oracle.installer.dynamicLoadOnPrereqRetry = true
oracle.installer.ntw32FoldersActions = true
oracle.installer.preCloneSetup = false
oracle.installer.removeallfiles = false
java.specification.name = Java Platform API Specification
oracle.installer.exitOnPrereqFailure = false
user.timezone = Asia/Seoul
path.separator = :
file.encoding = UTF-8
application.commandline.validateForMandatoryDependentArgs = true
oracle.installer.ignorePatchConflicts = false
sun.java.command = oracle.install.ivw.crs.driver.CRSConfigWizard -printtime ORACLE_HOME=/u01/app/19.0.0/grid -executeConfigTools -responseFile /home/oracle/gridsetup.rsp -silent
oracle.installer.continueOnAllChecksPass = false
oracle.installer.executeSysPrereqs = false
oracle.installer.forceDeinstall = false
oracle.installer.timestamp = 2020-04-16_03-47-17PM
oracle.installer.detachHome = false
java.io.tmpdir = /tmp/GridSetupActions2020-04-16_03-47-17PM
oracle.installer.scratchPath = /tmp/GridSetupActions2020-04-16_03-47-17PM
user.language = ko
oracle.installer.skipACLSetting = false
line.separator =

oracle.installer.enableRollingUpgrade = false
oracle.installer.deinstall = false
oracle.installer.rootshcumulative = false
oracle.installer.gridConfig = true
oracle.installer.defaultHomeName = false
oracle.installer.ignoreSharedInventory = true
java.vm.info = mixed mode
java.vm.specification.name = Java Virtual Machine Specification
oracle.installer.cleanUpOnExit = true
oracle.installer.tempLogDir = /tmp/GridSetupActions2020-04-16_03-47-17PM
oracle.installer.rootOwnedHome = true
oracle.installer.font = SansSerif
exitOnMakeFailure_helpid = S_HELP_OPTION_EXITONMAKEFAILURE@oracle.sysman.oii.oiir.OiirRuntimeRes
oracle.installer.summary_expand_nodes = Global,Langs,Space,NewInstalls,Upgrades,Reinstalls,Deinstalls,NewLangs
oracle.installer.upgradeOUI = false
oracle.install.commons.base.util.OracleServiceRegistry = oracle.install.driver.oui.OUIOracleServiceRegistry
java.awt.printerjob = sun.print.PSPrinterJob
oracle.installer.install.showproductname = true
oracle.installer.showVariables = false
oracle.installer.remoteActions = true
oracle.installer.supportBinaryInventory = false
OUI_TEMP_OB = /u01/app/oraInventory/logs/GridSetupActions2020-04-16_03-47-17PM/temp_ob
oracle.installer.console = true
oracle.installer.welcome = true
os.name = Linux
oracle.installer.exitOnVarValidationFailure = false
java.specification.vendor = Oracle Corporation
java.vm.name = Java HotSpot(TM) 64-Bit Server VM
oracle.installer.updateNodeList = true
oracle.installer.suppressPreCopyScript = false
java.library.path = /u01/app/19.0.0/grid/lib:/u01/app/19.0.0/grid/oui/lib/linux64:/u01/app/19.0.0/grid/bin:/u01/app/oracle/product/11.2.0/db_1/lib:/lib:/usr/lib:/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
SRVM_SAVE_CACHE = true
java.class.version = 52.0
oracle.install.commons.net.support.SSHSupportManager = oracle.install.commons.net.support.DefaultSSHSupportManager
oracle.installer.printdiskusage = false
oracle.installer.jre_loc = /u01/app/19.0.0/grid/jdk/jre
oracle.installer.copy = true
oracle.installer.config = true
oracle.installer.allDepHomes = false
application.commandline.currentContextId = GridSetup
oracle.installer.record = false
oracle.installer.remote = false
oracle.installer.install.showinstalledproducts = true
oracle.installer.fileActions = true
sun.boot.library.path = /u01/app/19.0.0/grid/jdk/jre/lib/amd64
example_ids = S_HELP_VARIABLE_DEFINITION,S_HELP_SESSION_VARIABLE_TITLE,S_HELP_SESSION_EX1,S_HELP_SESSION_EX2,S_HELP_SESSION_VARIABLE_LOOKUP,S_HELP_COMPONENT_VARIABLE_TITLE,S_HELP_COMPONENT_EX1,S_HELP_COMPONENT_EX2,S_HELP_COMPONENT_VARIABLE_LOOKUP
sun.management.compiler = HotSpot 64-Bit Tiered Compilers
java.awt.graphicsenv = sun.awt.X11GraphicsEnvironment
oracle.installer.install.showproductversion = true
oracle.installer.wait = true
oracle.installer.printtimeverbose = false
oracle.installer.clusterEnabled = true
oracle.install.asm.util.kfod.KFOD_ORACLE_HOME = /u01/app/19.0.0/grid
oracle.installer.depHomesOnly = false
oracle.installer.configWizard = true
oracle.installer.clone = false
oracle.installer.removeAllPatches = false
java.vm.specification.version = 1.8
oracle.installer.installUpdates = false
awt.toolkit = sun.awt.X11.XToolkit
oracle.installer.remotecopy.standalone = true
sun.cpu.isalist =
oracle.installer.entryPoint = oracle.crs_Complete_cluster_install
java.ext.dirs = /u01/app/19.0.0/grid/jdk/jre/lib/ext:/usr/java/packages/lib/ext
oracle.installer.forceClone = false
os.version = 4.1.12-112.16.4.el7uek.x86_64
oracle.installer.appendConfigCommands = false
application.commandline.toolName = gridSetup.sh
oracle.installer.backupInventory = true
user.home = /home/oracle
oracle.installer.testForAutoUpdates = false
java.vm.vendor = Oracle Corporation
oracle.installer.h = false
oracle.installer.skipLogsToHome = false
oracle.installer.exitOnStopInstall = false
oracle.installer.splash = true
oracle.installer.putTimestamp = false
oracle.installer.mandatorySetup = false
user.dir = /u01/app/19.0.0/grid
oracle.installer.setCustomNodelist = true
oracle.installer.printtime = true
oracle.installer.executeRemotePrereqs = false
oracle.installer.updateNodeListEx = false
oracle.installer.exitonback = false
oracle.installer.oh_admin_acl = false
oracle.installer.responseFile = /home/oracle/gridsetup.rsp
oracle.install.cvu.prereq_xml_loc = /u01/app/19.0.0/grid/cv/cvdata/cvu_prereq.xml
sun.cpu.endian = little
oracle.installer.sessionType = Install
oracle.sysman.prov.PathsPropertiesLoc = /u01/app/19.0.0/grid/oui/prov/resources
oracle.installer.link = true
oracle.installer.library_loc = /u01/app/19.0.0/grid/oui/lib/linux64
java.vm.version = 25.201-b09
ORACLE_HOME = /u01/app/19.0.0/grid
java.class.path = /u01/app/19.0.0/grid/install/jlib/installcommons_1.0.0b.jar:/u01/app/19.0.0/grid/install/jlib/instcommon.jar:/u01/app/19.0.0/grid/install/jlib/instcrs.jar:/u01/app/19.0.0/grid/install/jlib/pilot_1.0.0b.jar:/u01/app/19.0.0/grid/install/jlib/instdb.jar:/u01/app/19.0.0/grid/install/jlib/instclient.jar:/u01/app/19.0.0/grid/install/jlib/emCoreConsole.jar:/u01/app/19.0.0/grid/jlib/cvu.jar:/u01/app/19.0.0/grid/jlib/srvmhas.jar:/u01/app/19.0.0/grid/jlib/srvmasm.jar:/u01/app/19.0.0/grid/jlib/gns.jar:/u01/app/19.0.0/grid/jlib/srvm.jar:/u01/app/19.0.0/grid/jlib/oraclepki.jar:/u01/app/19.0.0/grid/jlib/mgmtca.jar:/u01/app/19.0.0/grid/jlib/mgmtua.jar:/u01/app/19.0.0/grid/jlib/clscred.jar:/u01/app/19.0.0/grid/jlib/oracle.dbtools-common.jar:/u01/app/19.0.0/grid/jlib/wsclient_extended.jar:/u01/app/19.0.0/grid/jlib/adf-share-ca.jar:/u01/app/19.0.0/grid/jlib/jmxspi.jar:/u01/app/19.0.0/grid/jlib/emca.jar:/u01/app/19.0.0/grid/jlib/entityManager_proxy.jar:/u01/app/19.0.0/grid/jlib/javax.security.jacc_1.0.0.0_1-1.jar:/u01/app/19.0.0/grid/jlib/orai18n-mapping.jar:/u01/app/19.0.0/grid/jlib/orai18n-utility.jar:/u01/app/19.0.0/grid/jlib/orai18n-translation.jar:/u01/app/19.0.0/grid/jlib/jwc-cred.jar:/u01/app/19.0.0/grid/jdbc/lib/ojdbc8.jar:/u01/app/19.0.0/grid/OPatch/jlib/opatchsdk.jar:/u01/app/19.0.0/grid/OPatch/jlib/opatch.jar:/u01/app/19.0.0/grid/oui/jlib/OraPrereqChecks.jar:/u01/app/19.0.0/grid/oui/jlib/prov_fixup.jar:/u01/app/19.0.0/grid/oui/jlib/ssh.jar:/u01/app/19.0.0/grid/oui/jlib/jsch.jar:/u01/app/19.0.0/grid/oui/jlib/remoteinterfaces.jar:/u01/app/19.0.0/grid/oui/jlib/OraPrereq.jar:/u01/app/19.0.0/grid/oui/jlib/com.oracle.glcm.patch.opatch-common-api-schema_13.9.3.0.jar:/u01/app/19.0.0/grid/oui/jlib/share.jar:/u01/app/19.0.0/grid/oui/jlib/OraSuiteInstaller.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_pt_BR.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_fr.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_ja.jar:/u01/app/19.0.0/grid/oui/jlib/swingaccess.jar:/u01/app/19.0.0/grid/oui/jlib/ewt3.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_es.jar:/u01/app/19.0.0/grid/oui/jlib/xml.jar:/u01/app/19.0.0/grid/oui/jlib/OraInstallerNet.jar:/u01/app/19.0.0/grid/oui/jlib/com.oracle.glcm.patch.opatch-common-api-interfaces_13.9.3.0.jar:/u01/app/19.0.0/grid/oui/jlib/jewt4.jar:/u01/app/19.0.0/grid/oui/jlib/emCfg.jar:/u01/app/19.0.0/grid/oui/jlib/oui.jar:/u01/app/19.0.0/grid/oui/jlib/filesList.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp.jar:/u01/app/19.0.0/grid/oui/jlib/orai18n-collation.jar:/u01/app/19.0.0/grid/oui/jlib/ohj.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_zh_CN.jar:/u01/app/19.0.0/grid/oui/jlib/com.oracle.glcm.patch.opatch-common-api_13.9.3.0.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_it.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_zh_TW.jar:/u01/app/19.0.0/grid/oui/jlib/classes12.jar:/u01/app/19.0.0/grid/oui/jlib/xmlparserv2.jar:/u01/app/19.0.0/grid/oui/jlib/http_client.jar:/u01/app/19.0.0/grid/oui/jlib/OraCheckPoint.jar:/u01/app/19.0.0/grid/oui/jlib/oneclick.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_de.jar:/u01/app/19.0.0/grid/oui/jlib/InstImages.jar:/u01/app/19.0.0/grid/oui/jlib/ojmisc.jar:/u01/app/19.0.0/grid/oui/jlib/oracle_ice.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_ko.jar:/u01/app/19.0.0/grid/oui/jlib/help-share.jar:/u01/app/19.0.0/grid/oui/jlib/OraInstaller.jar:/u01/app/19.0.0/grid/oui/jlib/ewt3-swingaccess.jar
oracle.installer.oneclick = false
oracle.installer.ouiApiMode = true
os.arch = amd64
oracle.installer.attachHome = false
oracle.installer.addLangs = false
oracle.installer.ignoreDiskWarning = false
oracle.installer.createLinkBackup = true
oracle.installer.compsdeinstall = true
oracle.installer.homepermissioncheck = true
oracle.installer.force = false
oracle.installer.cfs = false
oracle.installer.repeat = true
oracle.installer.doNotUpdateNodeList = true
sun.java.launcher = SUN_STANDARD
CV_HOME = /u01/app/19.0.0/grid
java.vm.specification.vendor = Oracle Corporation
oracle.installer.showLoadProgress = false
oracle.installer.defaultifyLanguages = false
file.separator = /
oracle.installer.ignorePreReq = false
CVU_OS_SETTINGS = SHELL_NOFILE_SOFT_LIMIT:1024,SHELL_STACK_SOFT_LIMIT:10240,SHELL_UMASK:0022
java.runtime.version = 1.8.0_201-b09
sun.boot.class.path = /u01/app/19.0.0/grid/jdk/jre/lib/resources.jar:/u01/app/19.0.0/grid/jdk/jre/lib/rt.jar:/u01/app/19.0.0/grid/jdk/jre/lib/sunrsasign.jar:/u01/app/19.0.0/grid/jdk/jre/lib/jsse.jar:/u01/app/19.0.0/grid/jdk/jre/lib/jce.jar:/u01/app/19.0.0/grid/jdk/jre/lib/charsets.jar:/u01/app/19.0.0/grid/jdk/jre/lib/jfr.jar:/u01/app/19.0.0/grid/jdk/jre/classes
oracle.installer.inventory_location = /u01/app/oraInventory
java.security.policy = jar:file:/u01/app/19.0.0/grid/install/jlib/installcommons_1.0.0b.jar!/oracle/install/commons/base/driver/common/installer.policy
oracle.installer.ignoreExitCode = true
oracle.installer.relink = false
user.country = KR
oracle.installer.ignoreSysPrereqs = false
oracle.installer.debug = false
oracle.installer.remoteInvocation = false
oracle.installer.local = false
oracle.installer.useExistingInventory = true
oracle.installer.clusterSwitch = false
oracle.installer.background = true
java.vendor = Oracle Corporation
oracle.installer.logCopyRequired = false
java.specification.version = 1.8
oracle.installer.logPrefix = gridSetupActions
sun.arch.data.model = 64
==========================================================================================================================================
정보: Initializing Logs dir to - /u01/app/oraInventory/logs
정보: ''INVENTORY_LOCATION'' 변수를 ''/u01/app/oraInventory''(으)로 설정하는 중입니다. 코드 블록에서 값을 받았습니다.
정보: Created OiicStandardInventorySession.
정보: Checkpoint:getting indexSession from checkpoint factory
정보: Checkpoint:Index file :/u01/app/11.2.0/grid/install/checkpoints/oui/index.xml not found.
정보: Checkpoint:Initializing checkpoint session in oiicUpdateNodeList.
정보: Checkpoint:Location is- /u01/app/11.2.0/grid/install
정보: Checkpoint:Initializing checkpoint session in oiicUpdateNodeList.
정보: Checkpoint:Index session object added to oiicexitops.
정보: Checkpoint:Initializing checkpoint session for UpdateNodeList.
정보: Checkpoint:checkpointfile :/u01/app/11.2.0/grid/install/checkpoints/oui/checkpoint_null.xml not found,creating one for this session
정보: Checkpoint:constructing checkpoint with name:oracle.installer.updateNodeList in checkpoint factory
정보: ''CLUSTER_NODES'' 변수를 ''rac1,rac2''(으)로 설정하는 중입니다. 코드 블록에서 값을 받았습니다.
정보: 로컬 노드 'rac1'은(는) Oracle 홈 속성에서 파생되었습니다.
정보: ''LOCAL_NODE'' 변수를 ''rac1''(으)로 설정하는 중입니다. 코드 블록에서 값을 받았습니다.
정보: ''REMOTE_NODES'' 변수를 ''rac2''(으)로 설정하는 중입니다. 코드 블록에서 값을 받았습니다.
정보: Saving the install inventory which has the access of 1
정보: Saving a backup of central inventory.
정보: The flags set for this home (/u01/app/11.2.0/grid) are:crs
정보: The flags set for this home (/u01/app/oracle/product/11.2.0/db_1) are:clean
정보: Home:/u01/app/oracle/product/11.2.0/db_1 oraclehomeproperties.xml is not saved because the flags indicate no changes to this file.
정보: The flags set for this home (/u01/app/19.0.0/grid) are:clean
정보: Home:/u01/app/19.0.0/grid oraclehomeproperties.xml is not saved because the flags indicate no changes to this file.
정보: Updating XML inventory.
정보: Saving a backup of inventory for home:/u01/app/11.2.0/grid
정보: Setting permission on dir : /u01/app/11.2.0/grid/inventory/backup
정보: Executing command find /u01/app/11.2.0/grid/inventory/backup -type d -exec chmod  -f 0750 {} ";"
정보: Executing command find /u01/app/11.2.0/grid/inventory/backup -type f -exec chmod  -f 0640 {} ";"
정보: Saving comps.xml for /u01/app/11.2.0/grid
정보: Setting permission on dir : /u01/app/11.2.0/grid/inventory/ContentsXML
정보: Executing command find /u01/app/11.2.0/grid/inventory/ContentsXML -type d -exec chmod  -f 0750 {} ";"
정보: Executing command find /u01/app/11.2.0/grid/inventory/ContentsXML -type f -exec chmod  -f 0640 {} ";"
정보: Setting permission on dir : /u01/app/oraInventory/ContentsXML /u01/app/oraInventory/logs /u01/app/oraInventory/backup /u01/app/oraInventory/oui /u01/app/oraInventory/oraInst.loc
정보: Executing command find /u01/app/oraInventory/ContentsXML /u01/app/oraInventory/logs /u01/app/oraInventory/backup /u01/app/oraInventory/oui /u01/app/oraInventory/oraInst.loc -type d -exec chmod  -f 0770 {} ";"
정보: Executing command find /u01/app/oraInventory/ContentsXML /u01/app/oraInventory/logs /u01/app/oraInventory/backup /u01/app/oraInventory/oui /u01/app/oraInventory/oraInst.loc -type f -exec chmod  -f 0660 {} ";"
정보: Executing command find /u01/app/oraInventory/logs -type f -exec chmod  -f 0640 {} ";"
정보: 현재 인벤토리:
        Oracle 홈: Ora11g_gridinfrahome1
                Oracle Grid Infrastructure 11g 11.2.0.4.0
                Java Development Kit 1.5.0.51.10
                Installer SDK Component 11.2.0.4.0
                Oracle One-Off Patch Installer 11.2.0.3.4
                Oracle Universal Installer 11.2.0.4.0
                Oracle RAC Required Support Files-HAS 11.2.0.4.0
                Oracle USM Deconfiguration 11.2.0.4.0
                Oracle Configuration Manager Deconfiguration 10.3.1.0.0
                Enterprise Manager Common Core Files 10.2.0.4.5
                Oracle DBCA Deconfiguration 11.2.0.4.0
                Oracle RAC Deconfiguration 11.2.0.4.0
                Oracle Quality of Service Management (Server) 11.2.0.4.0
                Installation Plugin Files 11.2.0.4.0
                Universal Storage Manager Files 11.2.0.4.0
                Oracle Text Required Support Files 11.2.0.4.0
                Automatic Storage Management Assistant 11.2.0.4.0
                Oracle Database 11g Multimedia Files 11.2.0.4.0
                Oracle Multimedia Java Advanced Imaging 11.2.0.4.0
                Oracle Globalization Support 11.2.0.4.0
                Oracle Multimedia Locator RDBMS Files 11.2.0.4.0
                Oracle Core Required Support Files 11.2.0.4.0
                Bali Share 1.1.18.0.0
                Oracle Database Deconfiguration 11.2.0.4.0
                Oracle Quality of Service Management (Client) 11.2.0.4.0
                Expat libraries 2.0.1.0.1
                Oracle Containers for Java 11.2.0.4.0
                Perl Modules 5.10.0.0.1
                Secure Socket Layer 11.2.0.4.0
                Oracle JDBC/OCI Instant Client 11.2.0.4.0
                Oracle Multimedia Client Option 11.2.0.4.0
                LDAP Required Support Files 11.2.0.4.0
                Character Set Migration Utility 11.2.0.4.0
                Perl Interpreter 5.10.0.0.2
                PL/SQL Embedded Gateway 11.2.0.4.0
                OLAP SQL Scripts 11.2.0.4.0
                Database SQL Scripts 11.2.0.4.0
                Oracle Extended Windowing Toolkit 3.4.47.0.0
                SSL Required Support Files for InstantClient 11.2.0.4.0
                SQL*Plus Files for Instant Client 11.2.0.4.0
                Oracle Net Required Support Files 11.2.0.4.0
                Oracle Database User Interface 2.2.13.0.0
                RDBMS Required Support Files for Instant Client 11.2.0.4.0
                RDBMS Required Support Files Runtime 11.2.0.4.0
                XML Parser for Java 11.2.0.4.0
                Oracle Security Developer Tools 11.2.0.4.0
                Oracle Wallet Manager 11.2.0.4.0
                Enterprise Manager plugin Common Files 11.2.0.4.0
                Platform Required Support Files 11.2.0.4.0
                Oracle JFC Extended Windowing Toolkit 4.2.36.0.0
                RDBMS Required Support Files 11.2.0.4.0
                Oracle Ice Browser 5.2.3.6.0
                Oracle Help For Java 4.2.9.0.0
                Enterprise Manager Common Files 10.2.0.4.5
                Deinstallation Tool 11.2.0.4.0
                Oracle Java Client 11.2.0.4.0
                Cluster Verification Utility Files 11.2.0.4.0
                Oracle Notification Service (eONS) 11.2.0.4.0
                Oracle LDAP administration 11.2.0.4.0
                Cluster Verification Utility Common Files 11.2.0.4.0
                Oracle Clusterware RDBMS Files 11.2.0.4.0
                Oracle Locale Builder 11.2.0.4.0
                Oracle Globalization Support 11.2.0.4.0
                Buildtools Common Files 11.2.0.4.0
                HAS Common Files 11.2.0.4.0
                SQL*Plus Required Support Files 11.2.0.4.0
                XDK Required Support Files 11.2.0.4.0
                Agent Required Support Files 10.2.0.4.5
                Parser Generator Required Support Files 11.2.0.4.0
                Precompiler Required Support Files 11.2.0.4.0
                Installation Common Files 11.2.0.4.0
                Required Support Files 11.2.0.4.0
                Oracle JDBC/THIN Interfaces 11.2.0.4.0
                Oracle Multimedia Locator 11.2.0.4.0
                Oracle Multimedia 11.2.0.4.0
                Assistant Common Files 11.2.0.4.0
                Oracle Net 11.2.0.4.0
                PL/SQL 11.2.0.4.0
                HAS Files for DB 11.2.0.4.0
                Oracle Recovery Manager 11.2.0.4.0
                Oracle Database Utilities 11.2.0.4.0
                Oracle Notification Service 11.2.0.3.0
                SQL*Plus 11.2.0.4.0
                Oracle Netca Client 11.2.0.4.0
                Oracle Advanced Security 11.2.0.4.0
                Oracle JVM 11.2.0.4.0
                Oracle Internet Directory Client 11.2.0.4.0
                Oracle Net Listener 11.2.0.4.0
                Cluster Ready Services Files 11.2.0.4.0
                Oracle Database 11g 11.2.0.4.0
                Interim 패치 번호 29938455
                Interim 패치 번호 29509309
                Interim 패치 번호 17478514
                Interim 패치 번호 18031668
                Interim 패치 번호 18522509
                Interim 패치 번호 19121551
                Interim 패치 번호 19769489
                Interim 패치 번호 20299013
                Interim 패치 번호 20760982
                Interim 패치 번호 21352635
                Interim 패치 번호 21948347
                Interim 패치 번호 22502456
                Interim 패치 번호 23054359
                Interim 패치 번호 24006111
                Interim 패치 번호 24732075
                Interim 패치 번호 25869727
                Interim 패치 번호 26609445
                Interim 패치 번호 26392168
                Interim 패치 번호 26925576
                Interim 패치 번호 27338049
                Interim 패치 번호 27734982
                Interim 패치 번호 28204707
                Interim 패치 번호 28729262
                Interim 패치 번호 29141056
                Interim 패치 번호 29497421
                Interim 패치 번호 29913194
                Interim 패치 번호 30298532
        Oracle 홈: OraDb11g_home1
                이 Oracle 홈은 이 세션에서 변경되지 않았습니다.
        Oracle 홈: OraGI19Home1
                이 Oracle 홈은 이 세션에서 변경되지 않았습니다.

정보: Starting remote cmd threads...............
정보: All remote cmd threads started...............
정보: New thread started for node : rac2
정보: 'rac2' 노드에서 '/u01/app/11.2.0/grid/oui/bin/runInstaller  -paramFile /u01/app/11.2.0/grid/oui/clusterparam.ini  -silent -ignoreSysPrereqs -updateNodeList -setCustomNodelist -noClusterEnabled ORACLE_HOME=/u01/app/11.2.0/grid "CLUSTER_NODES={rac1,rac2}" "NODES_TO_SET={rac1,rac2}" CRS=false  LOCAL_NODE=rac2 -remoteInvocation -invokingNodeName rac1 -logFilePath "/u01/app/oraInventory/logs" -timestamp 2020-04-16_03-47-17PM -doNotUpdateNodeList ' 명령을 실행하는 중입니다.
정보: 클러스터 노드 rac2에서 OUI 호출 중
정보: /u01/app/11.2.0/grid/oui/bin/runInstaller  -paramFile /u01/app/11.2.0/grid/oui/clusterparam.ini  -silent -ignoreSysPrereqs -updateNodeList -setCustomNodelist -noClusterEnabled ORACLE_HOME=/u01/app/11.2.0/grid "CLUSTER_NODES={rac1,rac2}" "NODES_TO_SET={rac1,rac2}" CRS=false  LOCAL_NODE=rac2 -remoteInvocation -invokingNodeName rac1 -logFilePath "/u01/app/oraInventory/logs" -timestamp 2020-04-16_03-47-17PM -doNotUpdateNodeList
정보: Command execution completes for node : rac2
정보: Command execution sucess for node : rac2
정보: All threads completed its operations
정보: Checkpoint:Index file written and updated
정보: Done calling doOperation.
정보: 'UpdateNodeList'을(를) 성공했습니다.

****************************************************************************
정보: Oracle Universal Installer 버전: 12.2.0.7.0

정보: 환경 변수:

정보:   ORACLE_HOME = /u01/app/19.0.0/grid

정보:   PATH = /u01/app/19.0.0/grid/bin:/u01/app/19.0.0/grid/OPatch:/usr/sbin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/oracle/.local/bin:/home/oracle/bin

정보:   CLASSPATH = /u01/app/oracle/product/11.2.0/db_1/JRE:/u01/app/oracle/product/11.2.0/db_1/jlib:/u01/app/oracle/product/11.2.0/db_1/rdbms/jlib

정보: 사용자 이름:oracle
정보:
=================================================================JVM PROPERTIES===========================================================
oracle.installer.warningonremovefiles = true
oracle.installer.removeHome = false
file.encoding.pkg = sun.io
oracle.installer.ignoreDiskLabel = false
java.home = /u01/app/19.0.0/grid/jdk/jre
actionable.validation.advisor.severity = FATAL
autoConfigureVIP_helpid = S_HELP_AUTOCONFIGURE_VIP@oracle.sysman.oii.oiir.OiirRuntimeRes
sun.font.fontmanager = sun.awt.X11FontManager
oracle.installer.waitforcompletion = false
java.endorsed.dirs = /u01/app/19.0.0/grid/jdk/jre/lib/endorsed
oracle.installer.silent = true
oracle.install.asm.util.asmtoolg.ASMTOOL_HOME = /u01/app/19.0.0/grid/bin
oracle.installer.suppressedSource = false
oracle.installer.rootshbackup = true
oracle.installer.fastcopy = true
sun.os.patch.level = unknown
java.vendor.url = http://java.oracle.com/
oracle.installer.acceptUntrustedCertificates = false
java.version = 1.8.0_201
oracle.installer.cleanup = false
oracle.installer.suppressPostCopyScript = false
oracle.installer.installAddOns = false
oracle.installer.generateGUID = true
oracle.installer.help = false
oracle.srvm.formCluster = false
oracle.install.commons.base.driver.common.SetupDriver = oracle.install.ivw.crs.driver.CRSImageSetupDriver
oracle.installer.silentVariableValidation = false
java.vendor.url.bug = http://bugreport.sun.com/bugreport/
oracle.installer.oui_loc = /u01/app/19.0.0/grid/oui
oracle.install.library.partition.diskmanager.ORAREMOTESERVICE_PATH = /u01/app/19.0.0/grid/bin
oracle.installer.addNode = false
user.name = oracle
sun.io.unicode.encoding = UnicodeLittle
sun.jnu.encoding = UTF-8
oracle.install.asm.util.kfod.PATH = /u01/app/19.0.0/grid/bin
java.runtime.name = Java(TM) SE Runtime Environment
oracle.installer.printmemory = false
oracle.installer.performRemoteCopyInAPIMode = false
oracle.installer.nobootStrap = false
oracle.installer.dynamicLoadOnPrereqRetry = true
oracle.installer.ntw32FoldersActions = true
oracle.installer.preCloneSetup = false
oracle.installer.removeallfiles = false
java.specification.name = Java Platform API Specification
oracle.installer.exitOnPrereqFailure = false
user.timezone = Asia/Seoul
path.separator = :
file.encoding = UTF-8
application.commandline.validateForMandatoryDependentArgs = true
oracle.installer.ignorePatchConflicts = false
sun.java.command = oracle.install.ivw.crs.driver.CRSConfigWizard -printtime ORACLE_HOME=/u01/app/19.0.0/grid -executeConfigTools -responseFile /home/oracle/gridsetup.rsp -silent
oracle.installer.continueOnAllChecksPass = false
oracle.installer.executeSysPrereqs = false
oracle.installer.forceDeinstall = false
oracle.installer.timestamp = 2020-04-16_03-47-17PM
oracle.installer.detachHome = false
java.io.tmpdir = /tmp/GridSetupActions2020-04-16_03-47-17PM
oracle.installer.scratchPath = /u01/app/19.0.0/grid/inventory/Scripts
user.language = ko
oracle.installer.skipACLSetting = false
line.separator =

oracle.installer.enableRollingUpgrade = false
oracle.installer.deinstall = false
oracle.installer.rootshcumulative = false
oracle.installer.gridConfig = true
oracle.installer.defaultHomeName = false
oracle.installer.ignoreSharedInventory = true
java.vm.info = mixed mode
java.vm.specification.name = Java Virtual Machine Specification
oracle.installer.cleanUpOnExit = true
oracle.installer.tempLogDir = /tmp/GridSetupActions2020-04-16_03-47-17PM
exitOnMakeFailure_helpid = S_HELP_OPTION_EXITONMAKEFAILURE@oracle.sysman.oii.oiir.OiirRuntimeRes
oracle.installer.summary_expand_nodes = Global,Langs,Space,NewInstalls,Upgrades,Reinstalls,Deinstalls,NewLangs
oracle.installer.upgradeOUI = false
oracle.install.commons.base.util.OracleServiceRegistry = oracle.install.driver.oui.OUIOracleServiceRegistry
java.awt.printerjob = sun.print.PSPrinterJob
oracle.installer.install.showproductname = true
oracle.installer.showVariables = false
oracle.installer.remoteActions = true
oracle.installer.supportBinaryInventory = false
OUI_TEMP_OB = /u01/app/oraInventory/logs/GridSetupActions2020-04-16_03-47-17PM/temp_ob
oracle.installer.console = true
oracle.installer.welcome = true
os.name = Linux
oracle.installer.exitOnVarValidationFailure = false
java.specification.vendor = Oracle Corporation
java.vm.name = Java HotSpot(TM) 64-Bit Server VM
oracle.installer.updateNodeList = false
oracle.installer.suppressPreCopyScript = false
java.library.path = /u01/app/19.0.0/grid/lib:/u01/app/19.0.0/grid/oui/lib/linux64:/u01/app/19.0.0/grid/bin:/u01/app/oracle/product/11.2.0/db_1/lib:/lib:/usr/lib:/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
SRVM_SAVE_CACHE = true
java.class.version = 52.0
oracle.install.commons.net.support.SSHSupportManager = oracle.install.commons.net.support.DefaultSSHSupportManager
oracle.installer.printdiskusage = false
oracle.installer.copy = true
oracle.installer.config = true
oracle.installer.allDepHomes = false
application.commandline.currentContextId = GridSetup
oracle.installer.record = false
oracle.installer.remote = false
oracle.installer.install.showinstalledproducts = true
oracle.installer.fileActions = true
sun.boot.library.path = /u01/app/19.0.0/grid/jdk/jre/lib/amd64
example_ids = S_HELP_VARIABLE_DEFINITION,S_HELP_SESSION_VARIABLE_TITLE,S_HELP_SESSION_EX1,S_HELP_SESSION_EX2,S_HELP_SESSION_VARIABLE_LOOKUP,S_HELP_COMPONENT_VARIABLE_TITLE,S_HELP_COMPONENT_EX1,S_HELP_COMPONENT_EX2,S_HELP_COMPONENT_VARIABLE_LOOKUP
sun.management.compiler = HotSpot 64-Bit Tiered Compilers
java.awt.graphicsenv = sun.awt.X11GraphicsEnvironment
oracle.installer.install.showproductversion = true
oracle.installer.wait = true
oracle.installer.printtimeverbose = false
oracle.installer.clusterEnabled = true
oracle.install.asm.util.kfod.KFOD_ORACLE_HOME = /u01/app/19.0.0/grid
oracle.installer.depHomesOnly = false
oracle.installer.configWizard = true
oracle.installer.clone = false
oracle.installer.removeAllPatches = false
java.vm.specification.version = 1.8
oracle.installer.installUpdates = false
awt.toolkit = sun.awt.X11.XToolkit
oracle.installer.remotecopy.standalone = true
sun.cpu.isalist =
oracle.installer.entryPoint = oracle.crs_Complete_cluster_install
java.ext.dirs = /u01/app/19.0.0/grid/jdk/jre/lib/ext:/usr/java/packages/lib/ext
oracle.installer.forceClone = false
os.version = 4.1.12-112.16.4.el7uek.x86_64
oracle.installer.appendConfigCommands = false
application.commandline.toolName = gridSetup.sh
oracle.installer.backupInventory = true
user.home = /home/oracle
oracle.installer.testForAutoUpdates = false
java.vm.vendor = Oracle Corporation
oracle.installer.h = false
oracle.installer.skipLogsToHome = false
oracle.installer.exitOnStopInstall = false
oracle.installer.splash = true
oracle.installer.putTimestamp = false
oracle.installer.mandatorySetup = false
user.dir = /u01/app/19.0.0/grid
oracle.installer.setCustomNodelist = false
oracle.installer.printtime = true
oracle.installer.executeRemotePrereqs = false
oracle.installer.updateNodeListEx = false
oracle.installer.exitonback = false
oracle.installer.oh_admin_acl = false
oracle.installer.responseFile = /home/oracle/gridsetup.rsp
oracle.install.cvu.prereq_xml_loc = /u01/app/19.0.0/grid/cv/cvdata/cvu_prereq.xml
sun.cpu.endian = little
oracle.installer.sessionType = Install
oracle.sysman.prov.PathsPropertiesLoc = /u01/app/19.0.0/grid/oui/prov/resources
oracle.installer.link = true
oracle.installer.library_loc = /u01/app/19.0.0/grid/oui/lib/linux64
java.vm.version = 25.201-b09
ORACLE_HOME = /u01/app/19.0.0/grid
java.class.path = /u01/app/19.0.0/grid/install/jlib/installcommons_1.0.0b.jar:/u01/app/19.0.0/grid/install/jlib/instcommon.jar:/u01/app/19.0.0/grid/install/jlib/instcrs.jar:/u01/app/19.0.0/grid/install/jlib/pilot_1.0.0b.jar:/u01/app/19.0.0/grid/install/jlib/instdb.jar:/u01/app/19.0.0/grid/install/jlib/instclient.jar:/u01/app/19.0.0/grid/install/jlib/emCoreConsole.jar:/u01/app/19.0.0/grid/jlib/cvu.jar:/u01/app/19.0.0/grid/jlib/srvmhas.jar:/u01/app/19.0.0/grid/jlib/srvmasm.jar:/u01/app/19.0.0/grid/jlib/gns.jar:/u01/app/19.0.0/grid/jlib/srvm.jar:/u01/app/19.0.0/grid/jlib/oraclepki.jar:/u01/app/19.0.0/grid/jlib/mgmtca.jar:/u01/app/19.0.0/grid/jlib/mgmtua.jar:/u01/app/19.0.0/grid/jlib/clscred.jar:/u01/app/19.0.0/grid/jlib/oracle.dbtools-common.jar:/u01/app/19.0.0/grid/jlib/wsclient_extended.jar:/u01/app/19.0.0/grid/jlib/adf-share-ca.jar:/u01/app/19.0.0/grid/jlib/jmxspi.jar:/u01/app/19.0.0/grid/jlib/emca.jar:/u01/app/19.0.0/grid/jlib/entityManager_proxy.jar:/u01/app/19.0.0/grid/jlib/javax.security.jacc_1.0.0.0_1-1.jar:/u01/app/19.0.0/grid/jlib/orai18n-mapping.jar:/u01/app/19.0.0/grid/jlib/orai18n-utility.jar:/u01/app/19.0.0/grid/jlib/orai18n-translation.jar:/u01/app/19.0.0/grid/jlib/jwc-cred.jar:/u01/app/19.0.0/grid/jdbc/lib/ojdbc8.jar:/u01/app/19.0.0/grid/OPatch/jlib/opatchsdk.jar:/u01/app/19.0.0/grid/OPatch/jlib/opatch.jar:/u01/app/19.0.0/grid/oui/jlib/OraPrereqChecks.jar:/u01/app/19.0.0/grid/oui/jlib/prov_fixup.jar:/u01/app/19.0.0/grid/oui/jlib/ssh.jar:/u01/app/19.0.0/grid/oui/jlib/jsch.jar:/u01/app/19.0.0/grid/oui/jlib/remoteinterfaces.jar:/u01/app/19.0.0/grid/oui/jlib/OraPrereq.jar:/u01/app/19.0.0/grid/oui/jlib/com.oracle.glcm.patch.opatch-common-api-schema_13.9.3.0.jar:/u01/app/19.0.0/grid/oui/jlib/share.jar:/u01/app/19.0.0/grid/oui/jlib/OraSuiteInstaller.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_pt_BR.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_fr.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_ja.jar:/u01/app/19.0.0/grid/oui/jlib/swingaccess.jar:/u01/app/19.0.0/grid/oui/jlib/ewt3.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_es.jar:/u01/app/19.0.0/grid/oui/jlib/xml.jar:/u01/app/19.0.0/grid/oui/jlib/OraInstallerNet.jar:/u01/app/19.0.0/grid/oui/jlib/com.oracle.glcm.patch.opatch-common-api-interfaces_13.9.3.0.jar:/u01/app/19.0.0/grid/oui/jlib/jewt4.jar:/u01/app/19.0.0/grid/oui/jlib/emCfg.jar:/u01/app/19.0.0/grid/oui/jlib/oui.jar:/u01/app/19.0.0/grid/oui/jlib/filesList.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp.jar:/u01/app/19.0.0/grid/oui/jlib/orai18n-collation.jar:/u01/app/19.0.0/grid/oui/jlib/ohj.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_zh_CN.jar:/u01/app/19.0.0/grid/oui/jlib/com.oracle.glcm.patch.opatch-common-api_13.9.3.0.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_it.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_zh_TW.jar:/u01/app/19.0.0/grid/oui/jlib/classes12.jar:/u01/app/19.0.0/grid/oui/jlib/xmlparserv2.jar:/u01/app/19.0.0/grid/oui/jlib/http_client.jar:/u01/app/19.0.0/grid/oui/jlib/OraCheckPoint.jar:/u01/app/19.0.0/grid/oui/jlib/oneclick.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_de.jar:/u01/app/19.0.0/grid/oui/jlib/InstImages.jar:/u01/app/19.0.0/grid/oui/jlib/ojmisc.jar:/u01/app/19.0.0/grid/oui/jlib/oracle_ice.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_ko.jar:/u01/app/19.0.0/grid/oui/jlib/help-share.jar:/u01/app/19.0.0/grid/oui/jlib/OraInstaller.jar:/u01/app/19.0.0/grid/oui/jlib/ewt3-swingaccess.jar
oracle.installer.oneclick = false
oracle.installer.ouiApiMode = true
os.arch = amd64
oracle.installer.attachHome = false
oracle.installer.addLangs = false
oracle.installer.ignoreDiskWarning = false
oracle.installer.createLinkBackup = true
oracle.installer.compsdeinstall = true
oracle.installer.homepermissioncheck = true
oracle.installer.force = false
oracle.installer.cfs = false
oracle.installer.repeat = true
oracle.installer.doNotUpdateNodeList = false
sun.java.launcher = SUN_STANDARD
CV_HOME = /u01/app/19.0.0/grid
java.vm.specification.vendor = Oracle Corporation
oracle.installer.showLoadProgress = false
oracle.installer.defaultifyLanguages = false
file.separator = /
oracle.installer.ignorePreReq = false
CVU_OS_SETTINGS = SHELL_NOFILE_SOFT_LIMIT:1024,SHELL_STACK_SOFT_LIMIT:10240,SHELL_UMASK:0022
java.runtime.version = 1.8.0_201-b09
sun.boot.class.path = /u01/app/19.0.0/grid/jdk/jre/lib/resources.jar:/u01/app/19.0.0/grid/jdk/jre/lib/rt.jar:/u01/app/19.0.0/grid/jdk/jre/lib/sunrsasign.jar:/u01/app/19.0.0/grid/jdk/jre/lib/jsse.jar:/u01/app/19.0.0/grid/jdk/jre/lib/jce.jar:/u01/app/19.0.0/grid/jdk/jre/lib/charsets.jar:/u01/app/19.0.0/grid/jdk/jre/lib/jfr.jar:/u01/app/19.0.0/grid/jdk/jre/classes
java.security.policy = jar:file:/u01/app/19.0.0/grid/install/jlib/installcommons_1.0.0b.jar!/oracle/install/commons/base/driver/common/installer.policy
oracle.installer.relink = false
user.country = KR
oracle.installer.ignoreSysPrereqs = false
oracle.installer.debug = false
oracle.installer.remoteInvocation = false
oracle.installer.local = false
oracle.installer.useExistingInventory = true
oracle.installer.clusterSwitch = false
oracle.installer.background = true
java.vendor = Oracle Corporation
oracle.installer.logCopyRequired = false
java.specification.version = 1.8
oracle.installer.logPrefix = gridSetupActions
sun.arch.data.model = 64
==========================================================================================================================================
정보: Creating a new Install area Control for this inventory session with new  access level  2
정보: Install area Control created with access level  2
정보: Initializing Logs dir to - /u01/app/oraInventory/logs
정보: Ending the inventory Session
정보: config-context initialized
정보:
 The Runconfig command constructed is /u01/app/19.0.0/grid/oui/bin/runConfig.sh ORACLE_HOME=/u01/app/19.0.0/grid MODE=perform ACTION=configure RERUN=true $*
정보: Since the option is to overwrite the existing /u01/app/19.0.0/grid/cfgtoollogs/configToolAllCommands file, backing it up
정보: The backed up file name is /u01/app/19.0.0/grid/cfgtoollogs/configToolAllCommands.bak
정보: Done processing command line arguments
정보: ''ORACLE_HOME'' 변수를 ''/u01/app/11.2.0/grid''(으)로 설정하는 중입니다. 명령행에서 값을 받았습니다.
정보: ''CLUSTER_NEW_NODES'' 변수를 ''''(으)로 설정하는 중입니다. 명령행에서 값을 받았습니다.
정보: ''NODES_TO_SET'' 변수를 ''rac1,rac2''(으)로 설정하는 중입니다. 명령행에서 값을 받았습니다.
정보: ''CRS'' 변수를 ''false''(으)로 설정하는 중입니다. 명령행에서 값을 받았습니다.
정보: Done creating session context and setting session variables as per command line
정보: Creating a new Install area Control for this inventory session with new  access level  1
정보: Install area Control created with access level  1
****************************************************************************
정보: Oracle Universal Installer 버전: 12.2.0.7.0

정보: 환경 변수:

정보:   ORACLE_HOME = /u01/app/19.0.0/grid

정보:   PATH = /u01/app/19.0.0/grid/bin:/u01/app/19.0.0/grid/OPatch:/usr/sbin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/oracle/.local/bin:/home/oracle/bin

정보:   CLASSPATH = /u01/app/oracle/product/11.2.0/db_1/JRE:/u01/app/oracle/product/11.2.0/db_1/jlib:/u01/app/oracle/product/11.2.0/db_1/rdbms/jlib

정보: 사용자 이름:oracle
정보:
=================================================================JVM PROPERTIES===========================================================
oracle.installer.warningonremovefiles = true
oracle.installer.removeHome = false
file.encoding.pkg = sun.io
oracle.installer.ignoreDiskLabel = false
java.home = /u01/app/19.0.0/grid/jdk/jre
HOME_LOCATION_API = /u01/app/11.2.0/grid
actionable.validation.advisor.severity = FATAL
autoConfigureVIP_helpid = S_HELP_AUTOCONFIGURE_VIP@oracle.sysman.oii.oiir.OiirRuntimeRes
sun.font.fontmanager = sun.awt.X11FontManager
oracle.installer.waitforcompletion = false
java.endorsed.dirs = /u01/app/19.0.0/grid/jdk/jre/lib/endorsed
oracle.installer.silent = true
oracle.install.asm.util.asmtoolg.ASMTOOL_HOME = /u01/app/19.0.0/grid/bin
oracle.installer.suppressedSource = false
oracle.installer.rootshbackup = true
oracle.installer.fastcopy = true
sun.os.patch.level = unknown
java.vendor.url = http://java.oracle.com/
oracle.installer.acceptUntrustedCertificates = false
java.version = 1.8.0_201
oracle.installer.cleanup = false
oracle.installer.suppressPostCopyScript = false
oracle.installer.installAddOns = false
oracle.installer.generateGUID = true
oracle.installer.help = false
oracle.srvm.formCluster = false
oracle.install.commons.base.driver.common.SetupDriver = oracle.install.ivw.crs.driver.CRSImageSetupDriver
oracle.installer.silentVariableValidation = false
java.vendor.url.bug = http://bugreport.sun.com/bugreport/
oracle.installer.oui_loc = /u01/app/19.0.0/grid/oui
java.protocol.handler.pkgs = |oracle.sysman.oii
oracle.install.library.partition.diskmanager.ORAREMOTESERVICE_PATH = /u01/app/19.0.0/grid/bin
oracle.installer.addNode = false
user.name = oracle
sun.io.unicode.encoding = UnicodeLittle
sun.jnu.encoding = UTF-8
oracle.install.asm.util.kfod.PATH = /u01/app/19.0.0/grid/bin
java.runtime.name = Java(TM) SE Runtime Environment
oracle.installer.printmemory = false
oracle.installer.performRemoteCopyInAPIMode = false
DO_NOT_UPDATE_LOCAL_NODE_LIST = false
oracle.installer.nobootStrap = false
oracle.installer.dynamicLoadOnPrereqRetry = true
oracle.installer.ntw32FoldersActions = true
oracle.installer.preCloneSetup = false
oracle.installer.removeallfiles = false
java.specification.name = Java Platform API Specification
oracle.installer.exitOnPrereqFailure = false
user.timezone = Asia/Seoul
path.separator = :
file.encoding = UTF-8
application.commandline.validateForMandatoryDependentArgs = true
oracle.installer.ignorePatchConflicts = false
sun.java.command = oracle.install.ivw.crs.driver.CRSConfigWizard -printtime ORACLE_HOME=/u01/app/19.0.0/grid -executeConfigTools -responseFile /home/oracle/gridsetup.rsp -silent
oracle.installer.continueOnAllChecksPass = false
oracle.installer.executeSysPrereqs = false
oracle.installer.forceDeinstall = false
oracle.installer.timestamp = 2020-04-16_03-47-17PM
oracle.installer.detachHome = false
java.io.tmpdir = /tmp/GridSetupActions2020-04-16_03-47-17PM
oracle.installer.scratchPath = /tmp/GridSetupActions2020-04-16_03-47-17PM
user.language = ko
oracle.installer.skipACLSetting = false
line.separator =

oracle.installer.enableRollingUpgrade = false
oracle.installer.deinstall = false
oracle.installer.rootshcumulative = false
oracle.installer.gridConfig = true
oracle.installer.defaultHomeName = false
oracle.installer.ignoreSharedInventory = true
java.vm.info = mixed mode
java.vm.specification.name = Java Virtual Machine Specification
oracle.installer.cleanUpOnExit = true
oracle.installer.tempLogDir = /tmp/GridSetupActions2020-04-16_03-47-17PM
oracle.installer.rootOwnedHome = true
oracle.installer.font = SansSerif
exitOnMakeFailure_helpid = S_HELP_OPTION_EXITONMAKEFAILURE@oracle.sysman.oii.oiir.OiirRuntimeRes
oracle.installer.summary_expand_nodes = Global,Langs,Space,NewInstalls,Upgrades,Reinstalls,Deinstalls,NewLangs
oracle.installer.upgradeOUI = false
oracle.install.commons.base.util.OracleServiceRegistry = oracle.install.driver.oui.OUIOracleServiceRegistry
java.awt.printerjob = sun.print.PSPrinterJob
oracle.installer.install.showproductname = true
oracle.installer.showVariables = false
oracle.installer.remoteActions = true
oracle.installer.supportBinaryInventory = false
OUI_TEMP_OB = /u01/app/oraInventory/logs/GridSetupActions2020-04-16_03-47-17PM/temp_ob
oracle.installer.console = true
oracle.installer.welcome = true
os.name = Linux
oracle.installer.exitOnVarValidationFailure = false
java.specification.vendor = Oracle Corporation
java.vm.name = Java HotSpot(TM) 64-Bit Server VM
oracle.installer.updateNodeList = true
oracle.installer.suppressPreCopyScript = false
java.library.path = /u01/app/19.0.0/grid/lib:/u01/app/19.0.0/grid/oui/lib/linux64:/u01/app/19.0.0/grid/bin:/u01/app/oracle/product/11.2.0/db_1/lib:/lib:/usr/lib:/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
SRVM_SAVE_CACHE = true
java.class.version = 52.0
oracle.install.commons.net.support.SSHSupportManager = oracle.install.commons.net.support.DefaultSSHSupportManager
oracle.installer.printdiskusage = false
oracle.installer.jre_loc = /u01/app/19.0.0/grid/jdk/jre
oracle.installer.copy = true
oracle.installer.config = true
oracle.installer.allDepHomes = false
application.commandline.currentContextId = GridSetup
oracle.installer.record = false
oracle.installer.remote = false
oracle.installer.install.showinstalledproducts = true
oracle.installer.fileActions = true
sun.boot.library.path = /u01/app/19.0.0/grid/jdk/jre/lib/amd64
example_ids = S_HELP_VARIABLE_DEFINITION,S_HELP_SESSION_VARIABLE_TITLE,S_HELP_SESSION_EX1,S_HELP_SESSION_EX2,S_HELP_SESSION_VARIABLE_LOOKUP,S_HELP_COMPONENT_VARIABLE_TITLE,S_HELP_COMPONENT_EX1,S_HELP_COMPONENT_EX2,S_HELP_COMPONENT_VARIABLE_LOOKUP
sun.management.compiler = HotSpot 64-Bit Tiered Compilers
java.awt.graphicsenv = sun.awt.X11GraphicsEnvironment
oracle.installer.install.showproductversion = true
oracle.installer.wait = true
oracle.installer.printtimeverbose = false
oracle.installer.clusterEnabled = true
oracle.install.asm.util.kfod.KFOD_ORACLE_HOME = /u01/app/19.0.0/grid
oracle.installer.depHomesOnly = false
oracle.installer.configWizard = true
oracle.installer.clone = false
oracle.installer.removeAllPatches = false
java.vm.specification.version = 1.8
oracle.installer.installUpdates = false
awt.toolkit = sun.awt.X11.XToolkit
oracle.installer.remotecopy.standalone = true
sun.cpu.isalist =
oracle.installer.entryPoint = oracle.crs_Complete_cluster_install
java.ext.dirs = /u01/app/19.0.0/grid/jdk/jre/lib/ext:/usr/java/packages/lib/ext
oracle.installer.forceClone = false
os.version = 4.1.12-112.16.4.el7uek.x86_64
oracle.installer.appendConfigCommands = false
application.commandline.toolName = gridSetup.sh
oracle.installer.backupInventory = true
user.home = /home/oracle
oracle.installer.testForAutoUpdates = false
java.vm.vendor = Oracle Corporation
oracle.installer.h = false
oracle.installer.skipLogsToHome = false
oracle.installer.exitOnStopInstall = false
oracle.installer.splash = true
oracle.installer.putTimestamp = false
oracle.installer.mandatorySetup = false
user.dir = /u01/app/19.0.0/grid
oracle.installer.setCustomNodelist = true
oracle.installer.printtime = true
oracle.installer.executeRemotePrereqs = false
oracle.installer.updateNodeListEx = false
oracle.installer.exitonback = false
oracle.installer.oh_admin_acl = false
oracle.installer.responseFile = /home/oracle/gridsetup.rsp
oracle.install.cvu.prereq_xml_loc = /u01/app/19.0.0/grid/cv/cvdata/cvu_prereq.xml
sun.cpu.endian = little
oracle.installer.sessionType = Install
oracle.sysman.prov.PathsPropertiesLoc = /u01/app/19.0.0/grid/oui/prov/resources
oracle.installer.link = true
oracle.installer.library_loc = /u01/app/19.0.0/grid/oui/lib/linux64
java.vm.version = 25.201-b09
ORACLE_HOME = /u01/app/19.0.0/grid
java.class.path = /u01/app/19.0.0/grid/install/jlib/installcommons_1.0.0b.jar:/u01/app/19.0.0/grid/install/jlib/instcommon.jar:/u01/app/19.0.0/grid/install/jlib/instcrs.jar:/u01/app/19.0.0/grid/install/jlib/pilot_1.0.0b.jar:/u01/app/19.0.0/grid/install/jlib/instdb.jar:/u01/app/19.0.0/grid/install/jlib/instclient.jar:/u01/app/19.0.0/grid/install/jlib/emCoreConsole.jar:/u01/app/19.0.0/grid/jlib/cvu.jar:/u01/app/19.0.0/grid/jlib/srvmhas.jar:/u01/app/19.0.0/grid/jlib/srvmasm.jar:/u01/app/19.0.0/grid/jlib/gns.jar:/u01/app/19.0.0/grid/jlib/srvm.jar:/u01/app/19.0.0/grid/jlib/oraclepki.jar:/u01/app/19.0.0/grid/jlib/mgmtca.jar:/u01/app/19.0.0/grid/jlib/mgmtua.jar:/u01/app/19.0.0/grid/jlib/clscred.jar:/u01/app/19.0.0/grid/jlib/oracle.dbtools-common.jar:/u01/app/19.0.0/grid/jlib/wsclient_extended.jar:/u01/app/19.0.0/grid/jlib/adf-share-ca.jar:/u01/app/19.0.0/grid/jlib/jmxspi.jar:/u01/app/19.0.0/grid/jlib/emca.jar:/u01/app/19.0.0/grid/jlib/entityManager_proxy.jar:/u01/app/19.0.0/grid/jlib/javax.security.jacc_1.0.0.0_1-1.jar:/u01/app/19.0.0/grid/jlib/orai18n-mapping.jar:/u01/app/19.0.0/grid/jlib/orai18n-utility.jar:/u01/app/19.0.0/grid/jlib/orai18n-translation.jar:/u01/app/19.0.0/grid/jlib/jwc-cred.jar:/u01/app/19.0.0/grid/jdbc/lib/ojdbc8.jar:/u01/app/19.0.0/grid/OPatch/jlib/opatchsdk.jar:/u01/app/19.0.0/grid/OPatch/jlib/opatch.jar:/u01/app/19.0.0/grid/oui/jlib/OraPrereqChecks.jar:/u01/app/19.0.0/grid/oui/jlib/prov_fixup.jar:/u01/app/19.0.0/grid/oui/jlib/ssh.jar:/u01/app/19.0.0/grid/oui/jlib/jsch.jar:/u01/app/19.0.0/grid/oui/jlib/remoteinterfaces.jar:/u01/app/19.0.0/grid/oui/jlib/OraPrereq.jar:/u01/app/19.0.0/grid/oui/jlib/com.oracle.glcm.patch.opatch-common-api-schema_13.9.3.0.jar:/u01/app/19.0.0/grid/oui/jlib/share.jar:/u01/app/19.0.0/grid/oui/jlib/OraSuiteInstaller.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_pt_BR.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_fr.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_ja.jar:/u01/app/19.0.0/grid/oui/jlib/swingaccess.jar:/u01/app/19.0.0/grid/oui/jlib/ewt3.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_es.jar:/u01/app/19.0.0/grid/oui/jlib/xml.jar:/u01/app/19.0.0/grid/oui/jlib/OraInstallerNet.jar:/u01/app/19.0.0/grid/oui/jlib/com.oracle.glcm.patch.opatch-common-api-interfaces_13.9.3.0.jar:/u01/app/19.0.0/grid/oui/jlib/jewt4.jar:/u01/app/19.0.0/grid/oui/jlib/emCfg.jar:/u01/app/19.0.0/grid/oui/jlib/oui.jar:/u01/app/19.0.0/grid/oui/jlib/filesList.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp.jar:/u01/app/19.0.0/grid/oui/jlib/orai18n-collation.jar:/u01/app/19.0.0/grid/oui/jlib/ohj.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_zh_CN.jar:/u01/app/19.0.0/grid/oui/jlib/com.oracle.glcm.patch.opatch-common-api_13.9.3.0.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_it.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_zh_TW.jar:/u01/app/19.0.0/grid/oui/jlib/classes12.jar:/u01/app/19.0.0/grid/oui/jlib/xmlparserv2.jar:/u01/app/19.0.0/grid/oui/jlib/http_client.jar:/u01/app/19.0.0/grid/oui/jlib/OraCheckPoint.jar:/u01/app/19.0.0/grid/oui/jlib/oneclick.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_de.jar:/u01/app/19.0.0/grid/oui/jlib/InstImages.jar:/u01/app/19.0.0/grid/oui/jlib/ojmisc.jar:/u01/app/19.0.0/grid/oui/jlib/oracle_ice.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_ko.jar:/u01/app/19.0.0/grid/oui/jlib/help-share.jar:/u01/app/19.0.0/grid/oui/jlib/OraInstaller.jar:/u01/app/19.0.0/grid/oui/jlib/ewt3-swingaccess.jar
oracle.installer.oneclick = false
oracle.installer.ouiApiMode = true
os.arch = amd64
oracle.installer.attachHome = false
oracle.installer.addLangs = false
oracle.installer.ignoreDiskWarning = false
oracle.installer.createLinkBackup = true
oracle.installer.compsdeinstall = true
oracle.installer.homepermissioncheck = true
oracle.installer.force = false
oracle.installer.cfs = false
oracle.installer.repeat = true
oracle.installer.doNotUpdateNodeList = true
sun.java.launcher = SUN_STANDARD
CV_HOME = /u01/app/19.0.0/grid
java.vm.specification.vendor = Oracle Corporation
oracle.installer.showLoadProgress = false
oracle.installer.defaultifyLanguages = false
file.separator = /
oracle.installer.ignorePreReq = false
CVU_OS_SETTINGS = SHELL_NOFILE_SOFT_LIMIT:1024,SHELL_STACK_SOFT_LIMIT:10240,SHELL_UMASK:0022
java.runtime.version = 1.8.0_201-b09
sun.boot.class.path = /u01/app/19.0.0/grid/jdk/jre/lib/resources.jar:/u01/app/19.0.0/grid/jdk/jre/lib/rt.jar:/u01/app/19.0.0/grid/jdk/jre/lib/sunrsasign.jar:/u01/app/19.0.0/grid/jdk/jre/lib/jsse.jar:/u01/app/19.0.0/grid/jdk/jre/lib/jce.jar:/u01/app/19.0.0/grid/jdk/jre/lib/charsets.jar:/u01/app/19.0.0/grid/jdk/jre/lib/jfr.jar:/u01/app/19.0.0/grid/jdk/jre/classes
oracle.installer.inventory_location = /u01/app/oraInventory
java.security.policy = jar:file:/u01/app/19.0.0/grid/install/jlib/installcommons_1.0.0b.jar!/oracle/install/commons/base/driver/common/installer.policy
oracle.installer.ignoreExitCode = true
oracle.installer.relink = false
user.country = KR
oracle.installer.ignoreSysPrereqs = false
oracle.installer.debug = false
oracle.installer.remoteInvocation = false
oracle.installer.local = false
oracle.installer.useExistingInventory = true
oracle.installer.clusterSwitch = false
oracle.installer.background = true
java.vendor = Oracle Corporation
oracle.installer.logCopyRequired = false
java.specification.version = 1.8
oracle.installer.logPrefix = gridSetupActions
sun.arch.data.model = 64
==========================================================================================================================================
정보: Ending the inventory Session
정보: Initializing Logs dir to - /u01/app/oraInventory/logs
정보: Done processing command line arguments
정보: ''ORACLE_HOME'' 변수를 ''/u01/app/19.0.0/grid''(으)로 설정하는 중입니다. 명령행에서 값을 받았습니다.
정보: ''CLUSTER_NEW_NODES'' 변수를 ''''(으)로 설정하는 중입니다. 명령행에서 값을 받았습니다.
정보: ''NODES_TO_SET'' 변수를 ''rac1,rac2''(으)로 설정하는 중입니다. 명령행에서 값을 받았습니다.
정보: ''CRS'' 변수를 ''true''(으)로 설정하는 중입니다. 명령행에서 값을 받았습니다.
정보: Done creating session context and setting session variables as per command line
정보: Creating a new Install area Control for this inventory session with new  access level  1
정보: Install area Control created with access level  1****************************************************************************
정보: Oracle Universal Installer 버전: 12.2.0.7.0

정보: 환경 변수:

정보:   ORACLE_HOME = /u01/app/19.0.0/grid

정보:   PATH = /u01/app/19.0.0/grid/bin:/u01/app/19.0.0/grid/OPatch:/usr/sbin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/oracle/.local/bin:/home/oracle/bin

정보:   CLASSPATH = /u01/app/oracle/product/11.2.0/db_1/JRE:/u01/app/oracle/product/11.2.0/db_1/jlib:/u01/app/oracle/product/11.2.0/db_1/rdbms/jlib

정보: 사용자 이름:oracle
정보:
=================================================================JVM PROPERTIES===========================================================
oracle.installer.warningonremovefiles = true
oracle.installer.removeHome = false
file.encoding.pkg = sun.io
oracle.installer.ignoreDiskLabel = false
java.home = /u01/app/19.0.0/grid/jdk/jre
HOME_LOCATION_API = /u01/app/19.0.0/grid
actionable.validation.advisor.severity = FATAL
autoConfigureVIP_helpid = S_HELP_AUTOCONFIGURE_VIP@oracle.sysman.oii.oiir.OiirRuntimeRes
sun.font.fontmanager = sun.awt.X11FontManager
oracle.installer.waitforcompletion = false
java.endorsed.dirs = /u01/app/19.0.0/grid/jdk/jre/lib/endorsed
oracle.installer.silent = true
oracle.install.asm.util.asmtoolg.ASMTOOL_HOME = /u01/app/19.0.0/grid/bin
oracle.installer.suppressedSource = false
oracle.installer.rootshbackup = true
oracle.installer.fastcopy = true
sun.os.patch.level = unknown
java.vendor.url = http://java.oracle.com/
oracle.installer.acceptUntrustedCertificates = false
java.version = 1.8.0_201
oracle.installer.cleanup = false
oracle.installer.suppressPostCopyScript = false
oracle.installer.installAddOns = false
oracle.installer.generateGUID = true
oracle.installer.help = false
oracle.srvm.formCluster = false
oracle.install.commons.base.driver.common.SetupDriver = oracle.install.ivw.crs.driver.CRSImageSetupDriver
oracle.installer.silentVariableValidation = false
java.vendor.url.bug = http://bugreport.sun.com/bugreport/
oracle.installer.oui_loc = /u01/app/19.0.0/grid/oui
java.protocol.handler.pkgs = |oracle.sysman.oii
oracle.install.library.partition.diskmanager.ORAREMOTESERVICE_PATH = /u01/app/19.0.0/grid/bin
oracle.installer.addNode = false
user.name = oracle
sun.io.unicode.encoding = UnicodeLittle
sun.jnu.encoding = UTF-8
oracle.install.asm.util.kfod.PATH = /u01/app/19.0.0/grid/bin
java.runtime.name = Java(TM) SE Runtime Environment
oracle.installer.printmemory = false
oracle.installer.performRemoteCopyInAPIMode = false
DO_NOT_UPDATE_LOCAL_NODE_LIST = false
oracle.installer.nobootStrap = false
oracle.installer.dynamicLoadOnPrereqRetry = true
oracle.installer.ntw32FoldersActions = true
oracle.installer.preCloneSetup = false
oracle.installer.removeallfiles = false
java.specification.name = Java Platform API Specification
oracle.installer.exitOnPrereqFailure = false
user.timezone = Asia/Seoul
path.separator = :
file.encoding = UTF-8
application.commandline.validateForMandatoryDependentArgs = true
oracle.installer.ignorePatchConflicts = false
sun.java.command = oracle.install.ivw.crs.driver.CRSConfigWizard -printtime ORACLE_HOME=/u01/app/19.0.0/grid -executeConfigTools -responseFile /home/oracle/gridsetup.rsp -silent
oracle.installer.continueOnAllChecksPass = false
oracle.installer.executeSysPrereqs = false
oracle.installer.forceDeinstall = false
oracle.installer.timestamp = 2020-04-16_03-47-17PM
oracle.installer.detachHome = false
java.io.tmpdir = /tmp/GridSetupActions2020-04-16_03-47-17PM
oracle.installer.scratchPath = /tmp/GridSetupActions2020-04-16_03-47-17PM
user.language = ko
oracle.installer.skipACLSetting = false
line.separator =

oracle.installer.enableRollingUpgrade = false
oracle.installer.deinstall = false
oracle.installer.rootshcumulative = false
oracle.installer.gridConfig = true
oracle.installer.defaultHomeName = false
oracle.installer.ignoreSharedInventory = true
java.vm.info = mixed mode
java.vm.specification.name = Java Virtual Machine Specification
oracle.installer.cleanUpOnExit = true
oracle.installer.tempLogDir = /tmp/GridSetupActions2020-04-16_03-47-17PM
oracle.installer.rootOwnedHome =
oracle.installer.font = SansSerif
exitOnMakeFailure_helpid = S_HELP_OPTION_EXITONMAKEFAILURE@oracle.sysman.oii.oiir.OiirRuntimeRes
oracle.installer.summary_expand_nodes = Global,Langs,Space,NewInstalls,Upgrades,Reinstalls,Deinstalls,NewLangs
oracle.installer.upgradeOUI = false
oracle.install.commons.base.util.OracleServiceRegistry = oracle.install.driver.oui.OUIOracleServiceRegistry
java.awt.printerjob = sun.print.PSPrinterJob
oracle.installer.install.showproductname = true
oracle.installer.showVariables = false
oracle.installer.remoteActions = true
oracle.installer.supportBinaryInventory = false
OUI_TEMP_OB = /u01/app/oraInventory/logs/GridSetupActions2020-04-16_03-47-17PM/temp_ob
oracle.installer.console = true
oracle.installer.welcome = true
os.name = Linux
oracle.installer.exitOnVarValidationFailure = false
java.specification.vendor = Oracle Corporation
java.vm.name = Java HotSpot(TM) 64-Bit Server VM
oracle.installer.updateNodeList = true
oracle.installer.suppressPreCopyScript = false
java.library.path = /u01/app/19.0.0/grid/lib:/u01/app/19.0.0/grid/oui/lib/linux64:/u01/app/19.0.0/grid/bin:/u01/app/oracle/product/11.2.0/db_1/lib:/lib:/usr/lib:/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
SRVM_SAVE_CACHE = true
java.class.version = 52.0
oracle.install.commons.net.support.SSHSupportManager = oracle.install.commons.net.support.DefaultSSHSupportManager
oracle.installer.printdiskusage = false
oracle.installer.jre_loc = /u01/app/19.0.0/grid/jdk/jre
oracle.installer.copy = true
oracle.installer.config = true
oracle.installer.allDepHomes = false
application.commandline.currentContextId = GridSetup
oracle.installer.record = false
oracle.installer.remote = false
oracle.installer.install.showinstalledproducts = true
oracle.installer.fileActions = true
sun.boot.library.path = /u01/app/19.0.0/grid/jdk/jre/lib/amd64
example_ids = S_HELP_VARIABLE_DEFINITION,S_HELP_SESSION_VARIABLE_TITLE,S_HELP_SESSION_EX1,S_HELP_SESSION_EX2,S_HELP_SESSION_VARIABLE_LOOKUP,S_HELP_COMPONENT_VARIABLE_TITLE,S_HELP_COMPONENT_EX1,S_HELP_COMPONENT_EX2,S_HELP_COMPONENT_VARIABLE_LOOKUP
sun.management.compiler = HotSpot 64-Bit Tiered Compilers
java.awt.graphicsenv = sun.awt.X11GraphicsEnvironment
oracle.installer.install.showproductversion = true
oracle.installer.wait = true
oracle.installer.printtimeverbose = false
oracle.installer.clusterEnabled = true
oracle.install.asm.util.kfod.KFOD_ORACLE_HOME = /u01/app/19.0.0/grid
oracle.installer.depHomesOnly = false
oracle.installer.configWizard = true
oracle.installer.clone = false
oracle.installer.removeAllPatches = false
java.vm.specification.version = 1.8
oracle.installer.installUpdates = false
awt.toolkit = sun.awt.X11.XToolkit
oracle.installer.remotecopy.standalone = true
sun.cpu.isalist =
oracle.installer.entryPoint = oracle.crs_Complete_cluster_install
java.ext.dirs = /u01/app/19.0.0/grid/jdk/jre/lib/ext:/usr/java/packages/lib/ext
oracle.installer.forceClone = false
os.version = 4.1.12-112.16.4.el7uek.x86_64
oracle.installer.appendConfigCommands = false
application.commandline.toolName = gridSetup.sh
oracle.installer.backupInventory = true
user.home = /home/oracle
oracle.installer.testForAutoUpdates = false
java.vm.vendor = Oracle Corporation
oracle.installer.h = false
oracle.installer.skipLogsToHome = false
oracle.installer.exitOnStopInstall = false
oracle.installer.splash = true
oracle.installer.putTimestamp = false
oracle.installer.mandatorySetup = false
user.dir = /u01/app/19.0.0/grid
oracle.installer.setCustomNodelist = true
oracle.installer.printtime = true
oracle.installer.executeRemotePrereqs = false
oracle.installer.updateNodeListEx = false
oracle.installer.exitonback = false
oracle.installer.oh_admin_acl = false
oracle.installer.responseFile = /home/oracle/gridsetup.rsp
oracle.install.cvu.prereq_xml_loc = /u01/app/19.0.0/grid/cv/cvdata/cvu_prereq.xml
sun.cpu.endian = little
oracle.installer.sessionType = Install
oracle.sysman.prov.PathsPropertiesLoc = /u01/app/19.0.0/grid/oui/prov/resources
oracle.installer.link = true
oracle.installer.library_loc = /u01/app/19.0.0/grid/oui/lib/linux64
java.vm.version = 25.201-b09
ORACLE_HOME = /u01/app/19.0.0/grid
java.class.path = /u01/app/19.0.0/grid/install/jlib/installcommons_1.0.0b.jar:/u01/app/19.0.0/grid/install/jlib/instcommon.jar:/u01/app/19.0.0/grid/install/jlib/instcrs.jar:/u01/app/19.0.0/grid/install/jlib/pilot_1.0.0b.jar:/u01/app/19.0.0/grid/install/jlib/instdb.jar:/u01/app/19.0.0/grid/install/jlib/instclient.jar:/u01/app/19.0.0/grid/install/jlib/emCoreConsole.jar:/u01/app/19.0.0/grid/jlib/cvu.jar:/u01/app/19.0.0/grid/jlib/srvmhas.jar:/u01/app/19.0.0/grid/jlib/srvmasm.jar:/u01/app/19.0.0/grid/jlib/gns.jar:/u01/app/19.0.0/grid/jlib/srvm.jar:/u01/app/19.0.0/grid/jlib/oraclepki.jar:/u01/app/19.0.0/grid/jlib/mgmtca.jar:/u01/app/19.0.0/grid/jlib/mgmtua.jar:/u01/app/19.0.0/grid/jlib/clscred.jar:/u01/app/19.0.0/grid/jlib/oracle.dbtools-common.jar:/u01/app/19.0.0/grid/jlib/wsclient_extended.jar:/u01/app/19.0.0/grid/jlib/adf-share-ca.jar:/u01/app/19.0.0/grid/jlib/jmxspi.jar:/u01/app/19.0.0/grid/jlib/emca.jar:/u01/app/19.0.0/grid/jlib/entityManager_proxy.jar:/u01/app/19.0.0/grid/jlib/javax.security.jacc_1.0.0.0_1-1.jar:/u01/app/19.0.0/grid/jlib/orai18n-mapping.jar:/u01/app/19.0.0/grid/jlib/orai18n-utility.jar:/u01/app/19.0.0/grid/jlib/orai18n-translation.jar:/u01/app/19.0.0/grid/jlib/jwc-cred.jar:/u01/app/19.0.0/grid/jdbc/lib/ojdbc8.jar:/u01/app/19.0.0/grid/OPatch/jlib/opatchsdk.jar:/u01/app/19.0.0/grid/OPatch/jlib/opatch.jar:/u01/app/19.0.0/grid/oui/jlib/OraPrereqChecks.jar:/u01/app/19.0.0/grid/oui/jlib/prov_fixup.jar:/u01/app/19.0.0/grid/oui/jlib/ssh.jar:/u01/app/19.0.0/grid/oui/jlib/jsch.jar:/u01/app/19.0.0/grid/oui/jlib/remoteinterfaces.jar:/u01/app/19.0.0/grid/oui/jlib/OraPrereq.jar:/u01/app/19.0.0/grid/oui/jlib/com.oracle.glcm.patch.opatch-common-api-schema_13.9.3.0.jar:/u01/app/19.0.0/grid/oui/jlib/share.jar:/u01/app/19.0.0/grid/oui/jlib/OraSuiteInstaller.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_pt_BR.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_fr.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_ja.jar:/u01/app/19.0.0/grid/oui/jlib/swingaccess.jar:/u01/app/19.0.0/grid/oui/jlib/ewt3.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_es.jar:/u01/app/19.0.0/grid/oui/jlib/xml.jar:/u01/app/19.0.0/grid/oui/jlib/OraInstallerNet.jar:/u01/app/19.0.0/grid/oui/jlib/com.oracle.glcm.patch.opatch-common-api-interfaces_13.9.3.0.jar:/u01/app/19.0.0/grid/oui/jlib/jewt4.jar:/u01/app/19.0.0/grid/oui/jlib/emCfg.jar:/u01/app/19.0.0/grid/oui/jlib/oui.jar:/u01/app/19.0.0/grid/oui/jlib/filesList.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp.jar:/u01/app/19.0.0/grid/oui/jlib/orai18n-collation.jar:/u01/app/19.0.0/grid/oui/jlib/ohj.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_zh_CN.jar:/u01/app/19.0.0/grid/oui/jlib/com.oracle.glcm.patch.opatch-common-api_13.9.3.0.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_it.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_zh_TW.jar:/u01/app/19.0.0/grid/oui/jlib/classes12.jar:/u01/app/19.0.0/grid/oui/jlib/xmlparserv2.jar:/u01/app/19.0.0/grid/oui/jlib/http_client.jar:/u01/app/19.0.0/grid/oui/jlib/OraCheckPoint.jar:/u01/app/19.0.0/grid/oui/jlib/oneclick.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_de.jar:/u01/app/19.0.0/grid/oui/jlib/InstImages.jar:/u01/app/19.0.0/grid/oui/jlib/ojmisc.jar:/u01/app/19.0.0/grid/oui/jlib/oracle_ice.jar:/u01/app/19.0.0/grid/oui/jlib/InstHelp_ko.jar:/u01/app/19.0.0/grid/oui/jlib/help-share.jar:/u01/app/19.0.0/grid/oui/jlib/OraInstaller.jar:/u01/app/19.0.0/grid/oui/jlib/ewt3-swingaccess.jar
oracle.installer.oneclick = false
oracle.installer.ouiApiMode = true
os.arch = amd64
oracle.installer.attachHome = false
oracle.installer.addLangs = false
oracle.installer.ignoreDiskWarning = false
oracle.installer.createLinkBackup = true
oracle.installer.compsdeinstall = true
oracle.installer.homepermissioncheck = true
oracle.installer.force = false
oracle.installer.cfs = false
oracle.installer.repeat = true
oracle.installer.doNotUpdateNodeList = true
sun.java.launcher = SUN_STANDARD
CV_HOME = /u01/app/19.0.0/grid
java.vm.specification.vendor = Oracle Corporation
oracle.installer.showLoadProgress = false
oracle.installer.defaultifyLanguages = false
file.separator = /
oracle.installer.ignorePreReq = false
CVU_OS_SETTINGS = SHELL_NOFILE_SOFT_LIMIT:1024,SHELL_STACK_SOFT_LIMIT:10240,SHELL_UMASK:0022
java.runtime.version = 1.8.0_201-b09
sun.boot.class.path = /u01/app/19.0.0/grid/jdk/jre/lib/resources.jar:/u01/app/19.0.0/grid/jdk/jre/lib/rt.jar:/u01/app/19.0.0/grid/jdk/jre/lib/sunrsasign.jar:/u01/app/19.0.0/grid/jdk/jre/lib/jsse.jar:/u01/app/19.0.0/grid/jdk/jre/lib/jce.jar:/u01/app/19.0.0/grid/jdk/jre/lib/charsets.jar:/u01/app/19.0.0/grid/jdk/jre/lib/jfr.jar:/u01/app/19.0.0/grid/jdk/jre/classes
oracle.installer.inventory_location = /u01/app/oraInventory
java.security.policy = jar:file:/u01/app/19.0.0/grid/install/jlib/installcommons_1.0.0b.jar!/oracle/install/commons/base/driver/common/installer.policy
oracle.installer.ignoreExitCode = true
oracle.installer.relink = false
user.country = KR
oracle.installer.ignoreSysPrereqs = false
oracle.installer.debug = false
oracle.installer.remoteInvocation = false
oracle.installer.local = false
oracle.installer.useExistingInventory = true
oracle.installer.clusterSwitch = false
oracle.installer.background = true
java.vendor = Oracle Corporation
oracle.installer.logCopyRequired = false
java.specification.version = 1.8
oracle.installer.logPrefix = gridSetupActions
sun.arch.data.model = 64
==========================================================================================================================================
정보: Initializing Logs dir to - /u01/app/oraInventory/logs
정보: ''INVENTORY_LOCATION'' 변수를 ''/u01/app/oraInventory''(으)로 설정하는 중입니다. 코드 블록에서 값을 받았습니다.
정보: Created OiicStandardInventorySession.
정보: Checkpoint:getting indexSession from checkpoint factory
정보: Checkpoint:Initializing checkpoint session in oiicUpdateNodeList.
정보: Checkpoint:Location is- /u01/app/19.0.0/grid/install
정보: Checkpoint:Initializing checkpoint session in oiicUpdateNodeList.
정보: Checkpoint:Index session object added to oiicexitops.
정보: Checkpoint:Initializing checkpoint session for UpdateNodeList.
정보: Checkpoint:checkpointfile :/u01/app/19.0.0/grid/install/checkpoints/oui/checkpoint_null.xml not found,creating one for this session
정보: Checkpoint:constructing checkpoint with name:oracle.installer.updateNodeList in checkpoint factory
정보: ''CLUSTER_NODES'' 변수를 ''rac1,rac2''(으)로 설정하는 중입니다. 코드 블록에서 값을 받았습니다.
정보: CRS 클러스터웨어를 찾을 수 없습니다. 기본값은 지원되는 클러스터웨어입니다.
정보: 지원되는 클러스터웨어가 감지되지 않았습니다.
정보: 로컬 노드 'rac1'은(는) 클러스터 노드 목록에서 파생되었습니다.
정보: ''LOCAL_NODE'' 변수를 ''rac1''(으)로 설정하는 중입니다. 코드 블록에서 값을 받았습니다.
정보: ''REMOTE_NODES'' 변수를 ''rac2''(으)로 설정하는 중입니다. 코드 블록에서 값을 받았습니다.
정보: Saving the install inventory which has the access of 1
정보: Saving a backup of central inventory.
정보: The flags set for this home (/u01/app/11.2.0/grid) are:clean
정보: Home:/u01/app/11.2.0/grid oraclehomeproperties.xml is not saved because the flags indicate no changes to this file.
정보: The flags set for this home (/u01/app/oracle/product/11.2.0/db_1) are:clean
정보: Home:/u01/app/oracle/product/11.2.0/db_1 oraclehomeproperties.xml is not saved because the flags indicate no changes to this file.
정보: The flags set for this home (/u01/app/19.0.0/grid) are:localnode|crs
정보: Updating XML inventory.
정보: Saving a backup of inventory for home:/u01/app/19.0.0/grid
정보: Setting permission on dir : /u01/app/19.0.0/grid/inventory/backup
정보: Executing command find /u01/app/19.0.0/grid/inventory/backup -type d -exec chmod  -f 0750 {} ";"
정보: Executing command find /u01/app/19.0.0/grid/inventory/backup -type f -exec chmod  -f 0640 {} ";"
정보: Saving comps.xml for /u01/app/19.0.0/grid
정보: Setting permission on dir : /u01/app/19.0.0/grid/inventory/ContentsXML
정보: Executing command find /u01/app/19.0.0/grid/inventory/ContentsXML -type d -exec chmod  -f 0750 {} ";"
정보: Executing command find /u01/app/19.0.0/grid/inventory/ContentsXML -type f -exec chmod  -f 0640 {} ";"
정보: Setting permission on dir : /u01/app/oraInventory/ContentsXML /u01/app/oraInventory/logs /u01/app/oraInventory/backup /u01/app/oraInventory/oui /u01/app/oraInventory/oraInst.loc
정보: Executing command find /u01/app/oraInventory/ContentsXML /u01/app/oraInventory/logs /u01/app/oraInventory/backup /u01/app/oraInventory/oui /u01/app/oraInventory/oraInst.loc -type d -exec chmod  -f 0770 {} ";"
정보: Executing command find /u01/app/oraInventory/ContentsXML /u01/app/oraInventory/logs /u01/app/oraInventory/backup /u01/app/oraInventory/oui /u01/app/oraInventory/oraInst.loc -type f -exec chmod  -f 0660 {} ";"
정보: Executing command find /u01/app/oraInventory/logs -type f -exec chmod  -f 0640 {} ";"
정보: 현재 인벤토리:
        Oracle 홈: Ora11g_gridinfrahome1
                이 Oracle 홈은 이 세션에서 변경되지 않았습니다.
        Oracle 홈: OraDb11g_home1
                이 Oracle 홈은 이 세션에서 변경되지 않았습니다.
        Oracle 홈: OraGI19Home1
                Oracle Grid Infrastructure 19c 19.0.0.0.0
                Java Development Kit 1.8.0.201.0
                oracle.swd.oui.core.min 12.2.0.7.0
                Installer SDK Component 12.2.0.7.0
                Oracle One-Off Patch Installer 12.2.0.1.15
                Oracle Universal Installer 12.2.0.7.0
                Tomcat Container 19.0.0.0.0
                Oracle Grid Infrastructure Bundled Agents 19.0.0.0.0
                Oracle Core Required Support Files for Core DB 19.0.0.0.0
                Oracle Grid Management Database 19.0.0.0.0
                Oracle USM Deconfiguration 19.0.0.0.0
                Oracle DBCA Deconfiguration 19.0.0.0.0
                Oracle Quality of Service Management (Server) 19.0.0.0.0
                Universal Storage Manager Files 19.0.0.0.0
                Oracle Text Required Support Files 19.0.0.0.0
                Oracle JDBC Server Support Package 19.0.0.0.0
                Database Workspace Manager 19.0.0.0.0
                Hadoopcore Component 19.0.0.0.0
                Automatic Storage Management Assistant 19.0.0.0.0
                Oracle Database 19c Multimedia Files 19.0.0.0.0
                Oracle Multimedia Java Advanced Imaging 19.0.0.0.0
                Oracle Globalization Support 19.0.0.0.0
                Oracle Multimedia Locator Java Required Support Files 19.0.0.0.0
                Oracle Multimedia Locator RDBMS Files 19.0.0.0.0
                Oracle Bali Share 11.1.1.6.0
                Oracle Globalization Support For Core 19.0.0.0.0
                Expat libraries 2.0.1.0.4
                BLASLAPACK Component 19.0.0.0.0
                DB TOOLS Listener 19.0.0.0.0
                Oracle Database Deconfiguration 19.0.0.0.0
                RHP Files for Common 19.0.0.0.0
                RHP Files for DB 19.0.0.0.0
                Perl Modules 5.28.1.0.0
                Oracle JVM For Core 19.0.0.0.0
                Perl Interpreter 5.28.1.0.0
                Secure Socket Layer 19.0.0.0.0
                Oracle Universal Connection Pool 19.0.0.0.0
                Oracle JDBC/OCI Instant Client 19.0.0.0.0
                Oracle Multimedia Client Option 19.0.0.0.0
                Oracle Java Client 19.0.0.0.0
                Database Migration Assistant for Unicode 19.0.0.0.0
                Oracle JFC Extended Windowing Toolkit 11.1.1.6.0
                OLAP SQL Scripts 19.0.0.0.0
                PL/SQL Embedded Gateway 19.0.0.0.0
                Database SQL Scripts 19.0.0.0.0
                SSL Required Support Files for InstantClient 19.0.0.0.0
                LDAP Required Support Files 19.0.0.0.0
                SQL*Plus Files for Instant Client 19.0.0.0.0
                Oracle Net Required Support Files 19.0.0.0.0
                Oracle Notification Service for Instant Client 19.0.0.0.0
                Deinstallation Tool 19.0.0.0.0
                Oracle Locale Builder 19.0.0.0.0
                XML Parser for Java 19.0.0.0.0
                Oracle Security Developer Tools 19.0.0.0.0
                Oracle Wallet Manager 19.0.0.0.0
                Installation Plugin Files 19.0.0.0.0
                Platform Required Support Files 19.0.0.0.0
                Oracle Help Share Library 11.1.1.7.0
                Oracle Help for Java 11.1.1.7.0
                RDBMS Required Support Files for Instant Client 19.0.0.0.0
                Oracle Extended Windowing Toolkit 11.1.1.6.0
                oracle.swd.commonlogging 13.3.0.0.0
                Tracle File Analyzer 19.0.0.0.0
                oracle.swd.opatchautodb 12.2.0.1.5
                Oracle LDAP administration 19.0.0.0.0
                RHP Files for CRS 19.0.0.0.0
                Cluster Verification Utility Files 19.0.0.0.0
                RDBMS Required Support Files 19.0.0.0.0
                Cluster Verification Utility CRS Files 19.0.0.0.0
                Cluster Verification Utility Common Files 19.0.0.0.0
                Oracle Clusterware RDBMS Files 19.0.0.0.0
                Oracle Ice Browser 11.1.1.7.0
                Oracle Globalization Support 19.0.0.0.0
                Buildtools Common Files 19.0.0.0.0
                Oracle RAC Required Support Files-HAS 19.0.0.0.0
                SQL*Plus Required Support Files 19.0.0.0.0
                XDK Required Support Files 19.0.0.0.0
                Parser Generator Required Support Files 19.0.0.0.0
                Precompiler Required Support Files 19.0.0.0.0
                Installation Common Files 19.0.0.0.0
                Oracle Core Required Support Files 19.0.0.0.0
                HAS Common Files 19.0.0.0.0
                Required Support Files 19.0.0.0.0
                Oracle JDBC/THIN Interfaces 19.0.0.0.0
                Oracle Multimedia Locator 19.0.0.0.0
                Assistant Common Files 19.0.0.0.0
                Oracle Multimedia 19.0.0.0.0
                Oracle Netca Client 19.0.0.0.0
                Oracle Net 19.0.0.0.0
                HAS Files for DB 19.0.0.0.0
                PL/SQL 19.0.0.0.0
                Oracle Recovery Manager 19.0.0.0.0
                Oracle Database Utilities 19.0.0.0.0
                Oracle Notification Service 19.0.0.0.0
                SQL*Plus 19.0.0.0.0
                Oracle Advanced Security 19.0.0.0.0
                Cluster Ready Services Files 19.0.0.0.0
                Database Configuration and Upgrade Assistants 19.0.0.0.0
                Oracle JVM 19.0.0.0.0
                Oracle Internet Directory Client 19.0.0.0.0
                Oracle Net Listener 19.0.0.0.0
                Oracle Database 19c 19.0.0.0.0
                Interim 패치 번호 29401763
                Interim 패치 번호 29517242
                Interim 패치 번호 29517247
                Interim 패치 번호 29585399

정보: Starting remote cmd threads...............
정보: All remote cmd threads started...............
정보: New thread started for node : rac2
정보: 'rac2' 노드에서 '/u01/app/19.0.0/grid/oui/bin/runInstaller  -paramFile /u01/app/19.0.0/grid/oui/clusterparam.ini  -silent -ignoreSysPrereqs -updateNodeList -setCustomNodelist -noClusterEnabled ORACLE_HOME=/u01/app/19.0.0/grid "CLUSTER_NODES={rac1,rac2}" "NODES_TO_SET={rac1,rac2}" CRS=true  LOCAL_NODE=rac2 -remoteInvocation -invokingNodeName rac1 -logFilePath "/u01/app/oraInventory/logs" -timestamp 2020-04-16_03-47-17PM -doNotUpdateNodeList ' 명령을 실행하는 중입니다.
정보: 클러스터 노드 rac2에서 OUI 호출 중
정보: /u01/app/19.0.0/grid/oui/bin/runInstaller  -paramFile /u01/app/19.0.0/grid/oui/clusterparam.ini  -silent -ignoreSysPrereqs -updateNodeList -setCustomNodelist -noClusterEnabled ORACLE_HOME=/u01/app/19.0.0/grid "CLUSTER_NODES={rac1,rac2}" "NODES_TO_SET={rac1,rac2}" CRS=true  LOCAL_NODE=rac2 -remoteInvocation -invokingNodeName rac1 -logFilePath "/u01/app/oraInventory/logs" -timestamp 2020-04-16_03-47-17PM -doNotUpdateNodeList
정보: Command execution completes for node : rac2
정보: Command execution sucess for node : rac2
정보: All threads completed its operations
정보: Checkpoint:Index file written and updated
정보: Done calling doOperation.
정보: 'UpdateNodeList'을(를) 성공했습니다.


클러스터 업그레이드 확인
crsctl stat res -t
[root@rac1 ~]# crsctl stat res -t
--------------------------------------------------------------------------------
NAME           TARGET  STATE        SERVER                   STATE_DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.LISTENER.lsnr
               ONLINE  ONLINE       rac1
               ONLINE  ONLINE       rac2
ora.chad
               ONLINE  ONLINE       rac1
               ONLINE  ONLINE       rac2
ora.net1.network
               ONLINE  ONLINE       rac1
               ONLINE  ONLINE       rac2
ora.ons
               ONLINE  ONLINE       rac1
               ONLINE  ONLINE       rac2
ora.proxy_advm
               OFFLINE OFFLINE      rac1
               OFFLINE OFFLINE      rac2
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.ASMNET1LSNR_ASM.lsnr
      1        ONLINE  ONLINE       rac1
      2        ONLINE  ONLINE       rac2
ora.CRS.dg
      1        ONLINE  ONLINE       rac1
      2        ONLINE  ONLINE       rac2
ora.DATA.dg
      1        ONLINE  ONLINE       rac1
      2        ONLINE  ONLINE       rac2
ora.FRA.dg
      1        ONLINE  ONLINE       rac1
      2        ONLINE  ONLINE       rac2
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       rac2
ora.LISTENER_SCAN2.lsnr
      1        ONLINE  ONLINE       rac1
ora.LISTENER_SCAN3.lsnr
      1        ONLINE  ONLINE       rac1
ora.asm
      1        ONLINE  ONLINE       rac1
      2        ONLINE  ONLINE       rac2
ora.asmnet1.asmnetwork
      1        ONLINE  ONLINE       rac1
      2        ONLINE  ONLINE       rac2
ora.cvu
      1        ONLINE  ONLINE       rac2
ora.qosmserver
      1        ONLINE  ONLINE       rac2
ora.rac1.vip
      1        ONLINE  ONLINE       rac1
ora.rac2.vip
      1        ONLINE  ONLINE       rac2
ora.racdb.db
      1        ONLINE  ONLINE       rac1                     Open,HOME=/u01/app/
                                                             oracle/product/11.2.
                                                             0/db_1
      2        ONLINE  ONLINE       rac2                     Open,HOME=/u01/app/
                                                             oracle/product/11.2.
                                                             0/db_1
ora.scan1.vip
      1        ONLINE  ONLINE       rac2
ora.scan2.vip
      1        ONLINE  ONLINE       rac1
ora.scan3.vip
      1        ONLINE  ONLINE       rac1


X. 19c Database 설치

1. Database 19c 설치

A) 사전 준비

$DB_HOME 경로 생성 및 설치 파일 압축 해제
export DB_HOME=/u01/app/oracle/product/19.0.0/db_1
mkdir -p $DB_HOME
unzip <설치 파일 다운로드 경로>/LINUX.X64_193000_db_home.zip -d $DB_HOME
[racdb1:/home/oracle]> export DB_HOME=/u01/app/oracle/product/19.0.0/db_1

[racdb1:/home/oracle]> db_env

[racdb1:/home/oracle]> echo $ORACLE_HOME
/u01/app/oracle/product/19.0.0/db_1

[racdb1:/home/oracle]> mkdir -p $DB_HOME

[racdb1:/home/oracle]> unzip /media/sf_oracle/19.3/LINUX.X64_193000_db_home.zip -d $DB_HOME
Archive:  /media/sf_oracle/19.3/LINUX.X64_193000_db_home.zip
   creating: /u01/app/oracle/product/19.0.0/db_1/drdaas/
... << 중략 >> ...
 extracting: /u01/app/oracle/product/19.0.0/db_1/install/.img.bin
finishing deferred symbolic links:
  /u01/app/oracle/product/19.0.0/db_1/bin/lbuilder -> ../nls/lbuilder/lbuilder
  /u01/app/oracle/product/19.0.0/db_1/lib/libocci.so -> libocci.so.19.1
  /u01/app/oracle/product/19.0.0/db_1/lib/libagtsh.so -> libagtsh.so.1.0
  /u01/app/oracle/product/19.0.0/db_1/lib/libodm19.so -> libodmd19.so
  /u01/app/oracle/product/19.0.0/db_1/lib/libclntsh.so -> libclntsh.so.19.1
  /u01/app/oracle/product/19.0.0/db_1/lib/libjavavm19.a -> ../javavm/jdk/jdk8/lib/libjavavm19.a
  /u01/app/oracle/product/19.0.0/db_1/javavm/lib/jce.jar -> ../../javavm/jdk/jdk8/lib/jce.jar
  /u01/app/oracle/product/19.0.0/db_1/lib/libocci.so.18.1 -> libocci.so
  /u01/app/oracle/product/19.0.0/db_1/lib/libclntshcore.so -> libclntshcore.so.19.1
  /u01/app/oracle/product/19.0.0/db_1/jdk/bin/ControlPanel -> jcontrol
  /u01/app/oracle/product/19.0.0/db_1/javavm/admin/cbp.jar -> ../../javavm/jdk/jdk8/admin/cbp.jar
  /u01/app/oracle/product/19.0.0/db_1/lib/libclntsh.so.10.1 -> libclntsh.so
  /u01/app/oracle/product/19.0.0/db_1/lib/libclntsh.so.11.1 -> libclntsh.so
  /u01/app/oracle/product/19.0.0/db_1/lib/libclntsh.so.12.1 -> libclntsh.so
  /u01/app/oracle/product/19.0.0/db_1/lib/libclntsh.so.18.1 -> libclntsh.so
  /u01/app/oracle/product/19.0.0/db_1/precomp/public/SQLCA.H -> sqlca.h
  /u01/app/oracle/product/19.0.0/db_1/precomp/public/SQLDA.H -> sqlda.h
  /u01/app/oracle/product/19.0.0/db_1/precomp/public/ORACA.H -> oraca.h
  /u01/app/oracle/product/19.0.0/db_1/precomp/public/SQLCA.COB -> sqlca.cob
  /u01/app/oracle/product/19.0.0/db_1/precomp/public/ORACA.COB -> oraca.cob
  /u01/app/oracle/product/19.0.0/db_1/javavm/admin/classes.bin -> ../../javavm/jdk/jdk8/admin/classes.bin
  /u01/app/oracle/product/19.0.0/db_1/javavm/admin/libjtcjt.so -> ../../javavm/jdk/jdk8/admin/libjtcjt.so
  /u01/app/oracle/product/19.0.0/db_1/jdk/jre/bin/ControlPanel -> jcontrol
  /u01/app/oracle/product/19.0.0/db_1/javavm/admin/lfclasses.bin -> ../../javavm/jdk/jdk8/admin/lfclasses.bin
  /u01/app/oracle/product/19.0.0/db_1/javavm/lib/security/cacerts -> ../../../javavm/jdk/jdk8/lib/security/cacerts
  /u01/app/oracle/product/19.0.0/db_1/javavm/lib/sunjce_provider.jar -> ../../javavm/jdk/jdk8/lib/sunjce_provider.jar
  /u01/app/oracle/product/19.0.0/db_1/javavm/lib/security/README.txt -> ../../../javavm/jdk/jdk8/lib/security/README.txt
  /u01/app/oracle/product/19.0.0/db_1/javavm/lib/security/java.security -> ../../../javavm/jdk/jdk8/lib/security/java.security
  /u01/app/oracle/product/19.0.0/db_1/jdk/jre/lib/amd64/server/libjsig.so -> ../libjsig.so


B) Response 파일 생성

db19_install.rsp 파일 생성 (주요 파라미터 요약)
oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v19.0.0
oracle.install.option=INSTALL_DB_SWONLY
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/u01/app/oraInventory
ORACLE_HOME=/u01/app/oracle/product/19.0.0/db_1
ORACLE_BASE=/u01/app/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.OSDBA_GROUP=dba
oracle.install.db.OSOPER_GROUP=oper
oracle.install.db.OSBACKUPDBA_GROUP=backupdba
oracle.install.db.OSDGDBA_GROUP=dgdba
oracle.install.db.OSKMDBA_GROUP=kmdba
oracle.install.db.OSRACDBA_GROUP=racdba
oracle.install.db.rootconfig.executeRootScript=false
oracle.install.db.CLUSTER_NODES=rac1,rac2

####################################################################
## Copyright(c) Oracle Corporation 1998,2019. All rights reserved.##
##                                                                ##
## Specify values for the variables listed below to customize     ##
## your installation.                                             ##
##                                                                ##
## Each variable is associated with a comment. The comment        ##
## can help to populate the variables with the appropriate        ##
## values.                                                        ##
##                                                                ##
## IMPORTANT NOTE: This file contains plain text passwords and    ##
## should be secured to have read permission only by oracle user  ##
## or db administrator who owns this installation.                ##
##                                                                ##
####################################################################


#------------------------------------------------------------------------------
# Do not change the following system generated value. 
#------------------------------------------------------------------------------
oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v19.0.0

#-------------------------------------------------------------------------------
# Specify the installation option.
# It can be one of the following:
#   - INSTALL_DB_SWONLY
#   - INSTALL_DB_AND_CONFIG
#-------------------------------------------------------------------------------
oracle.install.option=INSTALL_DB_SWONLY

#-------------------------------------------------------------------------------
# Specify the Unix group to be set for the inventory directory.  
#-------------------------------------------------------------------------------
UNIX_GROUP_NAME=oinstall

#-------------------------------------------------------------------------------
# Specify the location which holds the inventory files.
# This is an optional parameter if installing on
# Windows based Operating System.
#-------------------------------------------------------------------------------
INVENTORY_LOCATION=/u01/app/oraInventory
#-------------------------------------------------------------------------------
# Specify the complete path of the Oracle Home. 
#-------------------------------------------------------------------------------
ORACLE_HOME=/u01/app/oracle/product/19.0.0/db_1

#-------------------------------------------------------------------------------
# Specify the complete path of the Oracle Base. 
#-------------------------------------------------------------------------------
ORACLE_BASE=/u01/app/oracle

#-------------------------------------------------------------------------------
# Specify the installation edition of the component.                     
#                                                             
# The value should contain only one of these choices.  
#   - EE     : Enterprise Edition 
#   - SE2     : Standard Edition 2
#-------------------------------------------------------------------------------
oracle.install.db.InstallEdition=EE

###############################################################################
#                                                                             #
# PRIVILEGED OPERATING SYSTEM GROUPS                                          #
# ------------------------------------------                                  #
# Provide values for the OS groups to which SYSDBA and SYSOPER privileges     #
# needs to be granted. If the install is being performed as a member of the   #
# group "dba", then that will be used unless specified otherwise below.       #
#                                                                             #
# The value to be specified for OSDBA and OSOPER group is only for UNIX based #
# Operating System.                                                           #
#                                                                             #
###############################################################################

#------------------------------------------------------------------------------
# The OSDBA_GROUP is the OS group which is to be granted SYSDBA privileges.
#-------------------------------------------------------------------------------
oracle.install.db.OSDBA_GROUP=dba

#------------------------------------------------------------------------------
# The OSOPER_GROUP is the OS group which is to be granted SYSOPER privileges.
# The value to be specified for OSOPER group is optional.
#------------------------------------------------------------------------------
oracle.install.db.OSOPER_GROUP=oper

#------------------------------------------------------------------------------
# The OSBACKUPDBA_GROUP is the OS group which is to be granted SYSBACKUP privileges.
#------------------------------------------------------------------------------
oracle.install.db.OSBACKUPDBA_GROUP=backupdba

#------------------------------------------------------------------------------
# The OSDGDBA_GROUP is the OS group which is to be granted SYSDG privileges.
#------------------------------------------------------------------------------
oracle.install.db.OSDGDBA_GROUP=dgdba

#------------------------------------------------------------------------------
# The OSKMDBA_GROUP is the OS group which is to be granted SYSKM privileges.
#------------------------------------------------------------------------------
oracle.install.db.OSKMDBA_GROUP=kmdba

#------------------------------------------------------------------------------
# The OSRACDBA_GROUP is the OS group which is to be granted SYSRAC privileges.
#------------------------------------------------------------------------------
oracle.install.db.OSRACDBA_GROUP=racdba
################################################################################
#                                                                              #
#                      Root script execution configuration                     #
#                                                                              #
################################################################################

#-------------------------------------------------------------------------------------------------------
# Specify the root script execution mode.
#
#   - true  : To execute the root script automatically by using the appropriate configuration methods.
#   - false : To execute the root script manually.
#
# If this option is selected, password should be specified on the console.
#-------------------------------------------------------------------------------------------------------
oracle.install.db.rootconfig.executeRootScript=false

#--------------------------------------------------------------------------------------
# Specify the configuration method to be used for automatic root script execution.
#
# Following are the possible choices:
#   - ROOT
#   - SUDO
#--------------------------------------------------------------------------------------
oracle.install.db.rootconfig.configMethod=
#--------------------------------------------------------------------------------------
# Specify the absolute path of the sudo program.
#
# Applicable only when SUDO configuration method was chosen.
#--------------------------------------------------------------------------------------
oracle.install.db.rootconfig.sudoPath=

#--------------------------------------------------------------------------------------
# Specify the name of the user who is in the sudoers list. 
# Applicable only when SUDO configuration method was chosen.
# Note:For Single Instance database installations,the sudo user name must be the username of the user installing the database.
#--------------------------------------------------------------------------------------
oracle.install.db.rootconfig.sudoUserName=

###############################################################################
#                                                                             #
#                               Grid Options                                  #
#                                                                             #
###############################################################################

#------------------------------------------------------------------------------
# Value is required only if the specified install option is INSTALL_DB_SWONLY
# 
# Specify the cluster node names selected during the installation.
# 
# Example : oracle.install.db.CLUSTER_NODES=node1,node2
#------------------------------------------------------------------------------
oracle.install.db.CLUSTER_NODES=rac1,rac2

###############################################################################
#                                                                             #
#                        Database Configuration Options                       #
#                                                                             #
###############################################################################

#-------------------------------------------------------------------------------
# Specify the type of database to create.
# It can be one of the following:
#   - GENERAL_PURPOSE                       
#   - DATA_WAREHOUSE 
# GENERAL_PURPOSE: A starter database designed for general purpose use or transaction-heavy applications.
# DATA_WAREHOUSE : A starter database optimized for data warehousing applications.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.type=

#-------------------------------------------------------------------------------
# Specify the Starter Database Global Database Name. 
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.globalDBName=

#-------------------------------------------------------------------------------
# Specify the Starter Database SID.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.SID=

#-------------------------------------------------------------------------------
# Specify whether the database should be configured as a Container database.
# The value can be either "true" or "false". If left blank it will be assumed
# to be "false".
#-------------------------------------------------------------------------------
oracle.install.db.ConfigureAsContainerDB=

#-------------------------------------------------------------------------------
# Specify the  Pluggable Database name for the pluggable database in Container Database.
#-------------------------------------------------------------------------------
oracle.install.db.config.PDBName=

#-------------------------------------------------------------------------------
# Specify the Starter Database character set.
#                                               
#  One of the following
#  AL32UTF8, WE8ISO8859P15, WE8MSWIN1252, EE8ISO8859P2,
#  EE8MSWIN1250, NE8ISO8859P10, NEE8ISO8859P4, BLT8MSWIN1257,
#  BLT8ISO8859P13, CL8ISO8859P5, CL8MSWIN1251, AR8ISO8859P6,
#  AR8MSWIN1256, EL8ISO8859P7, EL8MSWIN1253, IW8ISO8859P8,
#  IW8MSWIN1255, JA16EUC, JA16EUCTILDE, JA16SJIS, JA16SJISTILDE,
#  KO16MSWIN949, ZHS16GBK, TH8TISASCII, ZHT32EUC, ZHT16MSWIN950,
#  ZHT16HKSCS, WE8ISO8859P9, TR8MSWIN1254, VN8MSWIN1258
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.characterSet=

#------------------------------------------------------------------------------
# This variable should be set to true if Automatic Memory Management 
# in Database is desired.
# If Automatic Memory Management is not desired, and memory allocation
# is to be done manually, then set it to false.
#------------------------------------------------------------------------------
oracle.install.db.config.starterdb.memoryOption=

#-------------------------------------------------------------------------------
# Specify the total memory allocation for the database. Value(in MB) should be
# at least 256 MB, and should not exceed the total physical memory available 
# on the system.
# Example: oracle.install.db.config.starterdb.memoryLimit=512
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.memoryLimit=

#-------------------------------------------------------------------------------
# This variable controls whether to load Example Schemas onto
# the starter database or not.
# The value can be either "true" or "false". If left blank it will be assumed
# to be "false".
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.installExampleSchemas=

###############################################################################
#                                                                             #
# Passwords can be supplied for the following four schemas in the	      #
# starter database:      						      #
#   SYS                                                                       #
#   SYSTEM                                                                    #
#   DBSNMP (used by Enterprise Manager)                                       #
#                                                                             #
# Same password can be used for all accounts (not recommended) 		      #
# or different passwords for each account can be provided (recommended)       #
#                                                                             #
###############################################################################

#------------------------------------------------------------------------------
# This variable holds the password that is to be used for all schemas in the
# starter database.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.password.ALL=

#-------------------------------------------------------------------------------
# Specify the SYS password for the starter database.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.password.SYS=

#-------------------------------------------------------------------------------
# Specify the SYSTEM password for the starter database.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.password.SYSTEM=

#-------------------------------------------------------------------------------
# Specify the DBSNMP password for the starter database.
# Applicable only when oracle.install.db.config.starterdb.managementOption=CLOUD_CONTROL
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.password.DBSNMP=

#-------------------------------------------------------------------------------
# Specify the PDBADMIN password required for creation of Pluggable Database in the Container Database.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.password.PDBADMIN=

#-------------------------------------------------------------------------------
# Specify the management option to use for managing the database.
# Options are:
# 1. CLOUD_CONTROL - If you want to manage your database with Enterprise Manager Cloud Control along with Database Express.
# 2. DEFAULT   -If you want to manage your database using the default Database Express option.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.managementOption=

#-------------------------------------------------------------------------------
# Specify the OMS host to connect to Cloud Control.
# Applicable only when oracle.install.db.config.starterdb.managementOption=CLOUD_CONTROL
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.omsHost=

#-------------------------------------------------------------------------------
# Specify the OMS port to connect to Cloud Control.
# Applicable only when oracle.install.db.config.starterdb.managementOption=CLOUD_CONTROL
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.omsPort=

#-------------------------------------------------------------------------------
# Specify the EM Admin user name to use to connect to Cloud Control.
# Applicable only when oracle.install.db.config.starterdb.managementOption=CLOUD_CONTROL
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.emAdminUser=

#-------------------------------------------------------------------------------
# Specify the EM Admin password to use to connect to Cloud Control.
# Applicable only when oracle.install.db.config.starterdb.managementOption=CLOUD_CONTROL
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.emAdminPassword=

###############################################################################
#                                                                             #
# SPECIFY RECOVERY OPTIONS                                 	              #
# ------------------------------------		                              #
# Recovery options for the database can be mentioned using the entries below  #
#                                                                             #
###############################################################################

#------------------------------------------------------------------------------
# This variable is to be set to false if database recovery is not required. Else 
# this can be set to true.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.enableRecovery=

#-------------------------------------------------------------------------------
# Specify the type of storage to use for the database.
# It can be one of the following:
#   - FILE_SYSTEM_STORAGE
#   - ASM_STORAGE
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.storageType=

#-------------------------------------------------------------------------------
# Specify the database file location which is a directory for datafiles, control
# files, redo logs.         
#
# Applicable only when oracle.install.db.config.starterdb.storage=FILE_SYSTEM_STORAGE 
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=

#-------------------------------------------------------------------------------
# Specify the recovery location.
#
# Applicable only when oracle.install.db.config.starterdb.storage=FILE_SYSTEM_STORAGE 
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation=

#-------------------------------------------------------------------------------
# Specify the existing ASM disk groups to be used for storage.
#
# Applicable only when oracle.install.db.config.starterdb.storageType=ASM_STORAGE
#-------------------------------------------------------------------------------
oracle.install.db.config.asm.diskGroup=

#-------------------------------------------------------------------------------
# Specify the password for ASMSNMP user of the ASM instance.                 
#
# Applicable only when oracle.install.db.config.starterdb.storage=ASM_STORAGE 
#-------------------------------------------------------------------------------
oracle.install.db.config.asm.ASMSNMPPassword=


C) 사전 검증

필요 조건 검사
$DB_HOME/runInstaller -silent -responseFile ~/db19_install.rsp -executePrereqs
[racdb1:/home/oracle]> $DB_HOME/runInstaller -silent -responseFile ~/db19_install.rsp -executePrereqs
Oracle Database 설정 마법사 실행 중...

필요 조건 검사가 성공적으로 실행되었습니다.


D) 설치

설치 스크립트 실행
$DB_HOME/runInstaller -silent -responseFile ~/db19_install.rsp -waitForCompletion
# $DB_HOME/runInstaller -silent -responseFile ~/db19_install.rsp -waitForCompletion -applyRU <RU 압축 해제 경로>
[racdb1:/home/oracle]> $DB_HOME/runInstaller -silent -responseFile ~/db19_install.rsp -waitForCompletion
Oracle Database 설정 마법사 실행 중...

이 세션에 대한 응답 파일을 다음에서 찾을 수 있습니다.
 /u01/app/oracle/product/19.0.0/db_1/install/response/db_2020-04-16_04-38-56PM.rsp

다음 위치에서 이 설치 세션의 로그를 찾을 수 있습니다.
 /u01/app/oraInventory/logs/InstallActions2020-04-16_04-38-56PM/installActions2020-04-16_04-38-56PM.log

루트 사용자로 다음 스크립트를 실행합니다.
        1. /u01/app/oracle/product/19.0.0/db_1/root.sh

다음 노드에서 /u01/app/oracle/product/19.0.0/db_1/root.sh을(를) 실행하십시오.
[rac1, rac2]


Successfully Setup Software.


E) root.sh 수행

모든 노드에서 root.sh 스크립트 실행
/u01/app/oracle/product/19.0.0/db_1/root.sh
[root@rac1 ~]# /u01/app/oracle/product/19.0.0/db_1/root.sh
Check /u01/app/oracle/product/19.0.0/db_1/install/root_rac1_2020-04-16_16-48-26-139795997.log for the output of root script
[root@rac1 ~]# cat /u01/app/oracle/product/19.0.0/db_1/install/root_rac1_2020-04-16_16-48-26-139795997.log
Performing root user operation.

The following environment variables are set as:
    ORACLE_OWNER= oracle
    ORACLE_HOME=  /u01/app/oracle/product/19.0.0/db_1
   Copying dbhome to /usr/local/bin ...
   Copying oraenv to /usr/local/bin ...
   Copying coraenv to /usr/local/bin ...

Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
[root@rac2 ~]# /u01/app/oracle/product/19.0.0/db_1/root.sh
Check /u01/app/oracle/product/19.0.0/db_1/install/root_rac2_2020-04-16_16-48-41-195355083.log for the output of root script
[root@rac2 ~]# cat /u01/app/oracle/product/19.0.0/db_1/install/root_rac2_2020-04-16_16-48-41-195355083.log
Performing root user operation.

The following environment variables are set as:
    ORACLE_OWNER= oracle
    ORACLE_HOME=  /u01/app/oracle/product/19.0.0/db_1
   Copying dbhome to /usr/local/bin ...
   Copying oraenv to /usr/local/bin ...
   Copying coraenv to /usr/local/bin ...

Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.


XI. 19c Release Update 패치

1. 사전 준비

$GRID_HOME의 Opatch 업그레이드
$GRID_HOME/OPatch/opatch version
mv $GRID_HOME/OPatch $GRID_HOME/OPatch.old
unzip <Opatch 다운로드 경로>/p6880880_190000_Linux-x86-64.zip -d $GRID_HOME
chown -R oracle:oinstall $GRID_HOME/OPatch
$GRID_HOME/OPatch/opatch version
[root@rac1 ~]# export GRID_HOME=/u01/app/19.0.0/grid

[root@rac1 ~]# $GRID_HOME/OPatch/opatch version
OPatch Version: 12.2.0.1.17

OPatch succeeded.

[root@rac1 ~]# mv $GRID_HOME/OPatch $GRID_HOME/OPatch.old

[root@rac1 ~]# unzip /media/sf_oracle/19.7/p6880880_190000_Linux-x86-64.zip -d $GRID_HOME
Archive:  /media/sf_oracle/19.7/p6880880_190000_Linux-x86-64.zip
   creating: /u01/app/19.0.0/grid/OPatch/
... << 중략 >> ...
  inflating: /u01/app/19.0.0/grid/OPatch/opatch_env.sh
  inflating: /u01/app/19.0.0/grid/OPatch/opatchauto
  inflating: /u01/app/19.0.0/grid/OPatch/operr
  inflating: /u01/app/19.0.0/grid/OPatch/opatchauto.cmd

[root@rac1 ~]# chown -R oracle:oinstall $GRID_HOME/OPatch

[root@rac1 ~]# $GRID_HOME/OPatch/opatch version
OPatch Version: 12.2.0.1.19

OPatch succeeded.
[root@rac2 ~]# export GRID_HOME=/u01/app/19.0.0/grid

[root@rac2 ~]# $GRID_HOME/OPatch/opatch version
OPatch Version: 12.2.0.1.17

OPatch succeeded.

[root@rac2 ~]# mv $GRID_HOME/OPatch $GRID_HOME/OPatch.old

[root@rac2 ~]# unzip /media/sf_oracle/19.7/p6880880_190000_Linux-x86-64.zip -d $GRID_HOME
Archive:  /media/sf_oracle/19.7/p6880880_190000_Linux-x86-64.zip
   creating: /u01/app/19.0.0/grid/OPatch/
... << 중략 >> ...
  inflating: /u01/app/19.0.0/grid/OPatch/opatch_env.sh
  inflating: /u01/app/19.0.0/grid/OPatch/opatchauto
  inflating: /u01/app/19.0.0/grid/OPatch/operr
  inflating: /u01/app/19.0.0/grid/OPatch/opatchauto.cmd

[root@rac2 ~]# chown -R oracle:oinstall $GRID_HOME/OPatch

[root@rac2 ~]# $GRID_HOME/OPatch/opatch version
OPatch Version: 12.2.0.1.19

OPatch succeeded.


$DB_HOME의 Opatch 업그레이드
$DB_HOME/OPatch/opatch version
mv $DB_HOME/OPatch $DB_HOME/OPatch.old
cp -r $GRID_HOME/OPatch $DB_HOME/
chown -R oracle:oinstall $DB_HOME/OPatch
$DB_HOME/OPatch/opatch version
[root@rac1 ~]# export DB_HOME=$ORACLE_BASE/product/19.0.0/db_1

[root@rac1 ~]# $DB_HOME/OPatch/opatch version
OPatch Version: 12.2.0.1.17

OPatch succeeded.

[root@rac1 ~]# mv $DB_HOME/OPatch $DB_HOME/OPatch.old

[root@rac1 ~]# cp -r $GRID_HOME/OPatch $DB_HOME/

[root@rac1 ~]# chown -R oracle:oinstall $DB_HOME/OPatch

[root@rac1 ~]# $DB_HOME/OPatch/opatch version
OPatch Version: 12.2.0.1.19

OPatch succeeded.
[root@rac2 ~]# export DB_HOME=$ORACLE_BASE/product/19.0.0/db_1

[root@rac2 ~]# $DB_HOME/OPatch/opatch version
OPatch Version: 12.2.0.1.17

OPatch succeeded.

[root@rac2 ~]# mv $DB_HOME/OPatch $DB_HOME/OPatch.old

[root@rac2 ~]# cp -r $GRID_HOME/OPatch $DB_HOME/

[root@rac2 ~]# chown -R oracle:oinstall $DB_HOME/OPatch

[root@rac2 ~]# $DB_HOME/OPatch/opatch version
OPatch Version: 12.2.0.1.19

OPatch succeeded.


패치 현황 조회
grid_env
opatch lspatches
db_env
opatch lspatches
[racdb1:/home/oracle]> grid_env

[+ASM1:/home/oracle]> opatch lspatches
29585399;OCW RELEASE UPDATE 19.3.0.0.0 (29585399)
29517247;ACFS RELEASE UPDATE 19.3.0.0.0 (29517247)
29517242;Database Release Update : 19.3.0.0.190416 (29517242)
29401763;TOMCAT RELEASE UPDATE 19.0.0.0.0 (29401763)

OPatch succeeded.

[racdb1:/home/oracle]> export DB_HOME=$ORACLE_BASE/product/19.0.0/db_1

[+ASM1:/home/oracle]> db_env

[racdb1:/home/oracle]> opatch lspatches
29585399;OCW RELEASE UPDATE 19.3.0.0.0 (29585399)
29517242;Database Release Update : 19.3.0.0.190416 (29517242)

OPatch succeeded.
[racdb2:/home/oracle]> grid_env

[+ASM2:/home/oracle]> opatch lspatches
29585399;OCW RELEASE UPDATE 19.3.0.0.0 (29585399)
29517247;ACFS RELEASE UPDATE 19.3.0.0.0 (29517247)
29517242;Database Release Update : 19.3.0.0.190416 (29517242)
29401763;TOMCAT RELEASE UPDATE 19.0.0.0.0 (29401763)

OPatch succeeded.

[racdb2:/home/oracle]> export DB_HOME=$ORACLE_BASE/product/19.0.0/db_1

[+ASM2:/home/oracle]> db_env

[racdb2:/home/oracle]> opatch lspatches
29585399;OCW RELEASE UPDATE 19.3.0.0.0 (29585399)
29517242;Database Release Update : 19.3.0.0.190416 (29517242)

OPatch succeeded.


Grid 패치 충돌 여부 조사
grid_env
$GRID_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -oh $GRID_HOME -phBaseDir <RU 압축 해제 디렉토리>/<Grid RU 번호>/<OCW RU 번호>
$GRID_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -oh $GRID_HOME -phBaseDir <RU 압축 해제 디렉토리>/<Grid RU 번호>/<ACFS RU 번호>
$GRID_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -oh $GRID_HOME -phBaseDir <RU 압축 해제 디렉토리>/<Grid RU 번호>/<DB RU 번호>
$GRID_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -oh $GRID_HOME -phBaseDir <RU 압축 해제 디렉토리>/<Grid RU 번호>/<DBWLM RU 번호>
$GRID_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -oh $GRID_HOME -phBaseDir <RU 압축 해제 디렉토리>/<Grid RU 번호>/<Tomcat RU 번호>


[racdb1:/home/oracle]> grid_env

[+ASM1:/home/oracle]> $GRID_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -oh $GRID_HOME -phBaseDir /media/sf_oracle/19.7/30899722/30894985
Oracle Interim 패치 설치 프로그램 버전 12.2.0.1.19
Copyright (c) 2020, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle 홈: /u01/app/19.0.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/19.0.0/grid/oraInst.loc
OPatch 버전: 12.2.0.1.19
OUI 버전: 12.2.0.7.0
로그 파일 위치: /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2020-04-22_10-29-24오전_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.

[+ASM1:/home/oracle]> $GRID_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -oh $GRID_HOME -phBaseDir /media/sf_oracle/19.7/30899722/30869304
Oracle Interim 패치 설치 프로그램 버전 12.2.0.1.19
Copyright (c) 2020, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle 홈: /u01/app/19.0.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/19.0.0/grid/oraInst.loc
OPatch 버전: 12.2.0.1.19
OUI 버전: 12.2.0.7.0
로그 파일 위치: /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2020-04-22_10-29-39오전_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.

[+ASM1:/home/oracle]> $GRID_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -oh $GRID_HOME -phBaseDir /media/sf_oracle/19.7/30899722/30869156
Oracle Interim 패치 설치 프로그램 버전 12.2.0.1.19
Copyright (c) 2020, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle 홈: /u01/app/19.0.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/19.0.0/grid/oraInst.loc
OPatch 버전: 12.2.0.1.19
OUI 버전: 12.2.0.7.0
로그 파일 위치: /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2020-04-22_10-29-52오전_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.

[+ASM1:/home/oracle]> $GRID_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -oh $GRID_HOME -phBaseDir /media/sf_oracle/19.7/30899722/30898856
Oracle Interim 패치 설치 프로그램 버전 12.2.0.1.19
Copyright (c) 2020, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle 홈: /u01/app/19.0.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/19.0.0/grid/oraInst.loc
OPatch 버전: 12.2.0.1.19
OUI 버전: 12.2.0.7.0
로그 파일 위치: /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2020-04-22_10-30-18오전_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.
[racdb2:/home/oracle]> grid_env

[+ASM2:/home/oracle]> $GRID_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -oh $GRID_HOME -phBaseDir /media/sf_oracle/19.7/30899722/30894985
Oracle Interim 패치 설치 프로그램 버전 12.2.0.1.19
Copyright (c) 2020, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle 홈: /u01/app/19.0.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/19.0.0/grid/oraInst.loc
OPatch 버전: 12.2.0.1.19
OUI 버전: 12.2.0.7.0
로그 파일 위치: /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2020-04-22_10-29-28오전_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.

[+ASM2:/home/oracle]> $GRID_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -oh $GRID_HOME -phBaseDir /media/sf_oracle/19.7/30899722/30869304
Oracle Interim 패치 설치 프로그램 버전 12.2.0.1.19
Copyright (c) 2020, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle 홈: /u01/app/19.0.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/19.0.0/grid/oraInst.loc
OPatch 버전: 12.2.0.1.19
OUI 버전: 12.2.0.7.0
로그 파일 위치: /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2020-04-22_10-29-42오전_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.

[+ASM2:/home/oracle]> $GRID_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -oh $GRID_HOME -phBaseDir /media/sf_oracle/19.7/30899722/30869156
Oracle Interim 패치 설치 프로그램 버전 12.2.0.1.19
Copyright (c) 2020, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle 홈: /u01/app/19.0.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/19.0.0/grid/oraInst.loc
OPatch 버전: 12.2.0.1.19
OUI 버전: 12.2.0.7.0
로그 파일 위치: /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2020-04-22_10-29-52오전_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.

[+ASM2:/home/oracle]> $GRID_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -oh $GRID_HOME -phBaseDir /media/sf_oracle/19.7/30899722/30898856
Oracle Interim 패치 설치 프로그램 버전 12.2.0.1.19
Copyright (c) 2020, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle 홈: /u01/app/19.0.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/19.0.0/grid/oraInst.loc
OPatch 버전: 12.2.0.1.19
OUI 버전: 12.2.0.7.0
로그 파일 위치: /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2020-04-22_10-30-10오전_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.


Database 패치 충돌 여부 조사
db_env
$DB_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -oh $DB_HOME -phBaseDir <RU 압축 해제 디렉토리>/<Grid RU 번호>/<OCW RU 번호>
$DB_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -oh $DB_HOME -phBaseDir <RU 압축 해제 디렉토리>/<Grid RU 번호>/<DB RU 번호>
[+ASM1:/home/oracle]> db_env

[racdb1:/home/oracle]> $DB_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -oh $DB_HOME -phBaseDir /media/sf_oracle/19.7/30899722/30894985
Oracle Interim 패치 설치 프로그램 버전 12.2.0.1.19
Copyright (c) 2020, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle 홈: /u01/app/oracle/product/19.0.0/db_1
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/oracle/product/19.0.0/db_1/oraInst.loc
OPatch 버전: 12.2.0.1.19
OUI 버전: 12.2.0.7.0
로그 파일 위치: /u01/app/oracle/product/19.0.0/db_1/cfgtoollogs/opatch/opatch2020-04-22_10-30-33오전_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.

[racdb1:/home/oracle]> $DB_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -oh $DB_HOME -phBaseDir /media/sf_oracle/19.7/30899722/30869156
Oracle Interim 패치 설치 프로그램 버전 12.2.0.1.19
Copyright (c) 2020, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle 홈: /u01/app/oracle/product/19.0.0/db_1
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/oracle/product/19.0.0/db_1/oraInst.loc
OPatch 버전: 12.2.0.1.19
OUI 버전: 12.2.0.7.0
로그 파일 위치: /u01/app/oracle/product/19.0.0/db_1/cfgtoollogs/opatch/opatch2020-04-22_10-30-40오전_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.
[+ASM2:/home/oracle]> db_env

[racdb2:/home/oracle]> $DB_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -oh $DB_HOME -phBaseDir /media/sf_oracle/19.7/30899722/30894985
Oracle Interim 패치 설치 프로그램 버전 12.2.0.1.19
Copyright (c) 2020, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle 홈: /u01/app/oracle/product/19.0.0/db_1
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/oracle/product/19.0.0/db_1/oraInst.loc
OPatch 버전: 12.2.0.1.19
OUI 버전: 12.2.0.7.0
로그 파일 위치: /u01/app/oracle/product/19.0.0/db_1/cfgtoollogs/opatch/opatch2020-04-22_10-30-43오전_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.

[racdb2:/home/oracle]> $DB_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -oh $DB_HOME -phBaseDir /media/sf_oracle/19.7/30899722/30869156
Oracle Interim 패치 설치 프로그램 버전 12.2.0.1.19
Copyright (c) 2020, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle 홈: /u01/app/oracle/product/19.0.0/db_1
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/oracle/product/19.0.0/db_1/oraInst.loc
OPatch 버전: 12.2.0.1.19
OUI 버전: 12.2.0.7.0
로그 파일 위치: /u01/app/oracle/product/19.0.0/db_1/cfgtoollogs/opatch/opatch2020-04-22_10-30-50오전_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.


용량 산정을 위한 vi /tmp/patch_list_gihome.txt 작성
<RU 압축 해제 디렉토리>/<Grid RU 번호>/<OCW RU 번호>
<RU 압축 해제 디렉토리>/<Grid RU 번호>/<ACFS RU 번호>
<RU 압축 해제 디렉토리>/<Grid RU 번호>/<DB RU 번호>
<RU 압축 해제 디렉토리>/<Grid RU 번호>/<DBWLM RU 번호>
<RU 압축 해제 디렉토리>/<Grid RU 번호>/<Tomcat RU 번호>
[racdb1:/home/oracle]> grid_env

[+ASM1:/home/oracle]> cat > /tmp/patch_list_gihome.txt
/media/sf_oracle/19.7/30899722/30894985
/media/sf_oracle/19.7/30899722/30869304
/media/sf_oracle/19.7/30899722/30869156
/media/sf_oracle/19.7/30899722/30898856
^C
[racdb2:/home/oracle]> grid_env

[+ASM2:/home/oracle]> cat > /tmp/patch_list_gihome.txt
/media/sf_oracle/19.7/30899722/30894985
/media/sf_oracle/19.7/30899722/30869304
/media/sf_oracle/19.7/30899722/30869156
/media/sf_oracle/19.7/30899722/30898856
^C


Grid 패치 필요 용량 확인
$GRID_HOME/OPatch/opatch prereq CheckSystemSpace -oh $GRID_HOME -phBaseFile /tmp/patch_list_gihome.txt
[+ASM1:/home/oracle]> $GRID_HOME/OPatch/opatch prereq CheckSystemSpace -oh $GRID_HOME -phBaseFile /tmp/patch_list_gihome.txt
Oracle Interim 패치 설치 프로그램 버전 12.2.0.1.19
Copyright (c) 2020, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle 홈: /u01/app/19.0.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/19.0.0/grid/oraInst.loc
OPatch 버전: 12.2.0.1.19
OUI 버전: 12.2.0.7.0
로그 파일 위치: /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2020-04-22_10-32-38오전_1.log

Invoking prereq "checksystemspace"

Prereq "checkSystemSpace" passed.

OPatch succeeded.
[+ASM2:/home/oracle]> $GRID_HOME/OPatch/opatch prereq CheckSystemSpace -oh $GRID_HOME -phBaseFile /tmp/patch_list_gihome.txt
Oracle Interim 패치 설치 프로그램 버전 12.2.0.1.19
Copyright (c) 2020, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle 홈: /u01/app/19.0.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/19.0.0/grid/oraInst.loc
OPatch 버전: 12.2.0.1.19
OUI 버전: 12.2.0.7.0
로그 파일 위치: /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2020-04-22_10-32-41오전_1.log

Invoking prereq "checksystemspace"

Prereq "checkSystemSpace" passed.

OPatch succeeded.


용량 산정을 위한 vi /tmp/patch_list_dbhome.txt 작성
<RU 압축 해제 디렉토리>/<Grid RU 번호>/<OCW RU 번호>
<RU 압축 해제 디렉토리>/<Grid RU 번호>/<DB RU 번호>
[+ASM1:/home/oracle]> db_env

[racdb1:/home/oracle]> cat > /tmp/patch_list_dbhome.txt
/media/sf_oracle/19.7/30899722/30894985
/media/sf_oracle/19.7/30899722/30869156
^C
[+ASM2:/home/oracle]> db_env

[racdb2:/home/oracle]> cat > /tmp/patch_list_dbhome.txt
/media/sf_oracle/19.7/30899722/30894985
/media/sf_oracle/19.7/30899722/30869156
^C


Database 패치 필요 용량 확인
$DB_HOME/OPatch/opatch prereq CheckSystemSpace -oh $DB_HOME -phBaseFile /tmp/patch_list_dbhome.txt
[racdb1:/home/oracle]> $DB_HOME/OPatch/opatch prereq CheckSystemSpace -oh $DB_HOME -phBaseFile /tmp/patch_list_dbhome.txt
Oracle Interim 패치 설치 프로그램 버전 12.2.0.1.19
Copyright (c) 2020, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle 홈: /u01/app/oracle/product/19.0.0/db_1
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/oracle/product/19.0.0/db_1/oraInst.loc
OPatch 버전: 12.2.0.1.19
OUI 버전: 12.2.0.7.0
로그 파일 위치: /u01/app/oracle/product/19.0.0/db_1/cfgtoollogs/opatch/opatch2020-04-22_10-33-01오전_1.log

Invoking prereq "checksystemspace"

Prereq "checkSystemSpace" passed.

OPatch succeeded.
[racdb2:/home/oracle]> $DB_HOME/OPatch/opatch prereq CheckSystemSpace -oh $DB_HOME -phBaseFile /tmp/patch_list_dbhome.txt
Oracle Interim 패치 설치 프로그램 버전 12.2.0.1.19
Copyright (c) 2020, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle 홈: /u01/app/oracle/product/19.0.0/db_1
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/oracle/product/19.0.0/db_1/oraInst.loc
OPatch 버전: 12.2.0.1.19
OUI 버전: 12.2.0.7.0
로그 파일 위치: /u01/app/oracle/product/19.0.0/db_1/cfgtoollogs/opatch/opatch2020-04-22_10-33-04오전_1.log

Invoking prereq "checksystemspace"

Prereq "checkSystemSpace" passed.

OPatch succeeded.


2. 1번 노드 패치

root 유저로 1번 노드 prepatch 작업 수행
$GRID_HOME/crs/install/rootcrs.sh -prepatch [-nonrolling]
[root@rac1 ~]# echo $GRID_HOME
/u01/app/19.0.0/grid

[root@rac1 ~]# $GRID_HOME/crs/install/rootcrs.sh -prepatch
Using configuration parameter file: /u01/app/19.0.0/grid/crs/install/crsconfig_params
The log of current session can be found at:
  /u01/app/oracle/crsdata/rac1/crsconfig/crs_prepatch_rac1_2020-04-22_10-34-19AM.log
Oracle Clusterware active version on the cluster is [19.0.0.0.0]. The cluster upgrade state is [NORMAL]. The cluster active patch level is [724960844].
2020/04/22 10:36:23 CLSRSC-4012: Shutting down Oracle Trace File Analyzer (TFA) Collector.
2020/04/22 10:38:04 CLSRSC-4013: Successfully shut down Oracle Trace File Analyzer (TFA) Collector.
2020/04/22 10:38:10 CLSRSC-347: Successfully unlock /u01/app/19.0.0/grid
2020/04/22 10:38:16 CLSRSC-671: Pre-patch steps for patching GI home successfully completed.


1번 노드 Grid 패치 수행
grid_env
$GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local <RU 압축 해제 디렉토리>/<Grid RU 번호>/<OCW RU 번호>
$GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local <RU 압축 해제 디렉토리>/<Grid RU 번호>/<ACFS RU 번호>
$GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local <RU 압축 해제 디렉토리>/<Grid RU 번호>/<DB RU 번호>
$GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local <RU 압축 해제 디렉토리>/<Grid RU 번호>/<DBWLM RU 번호>
$GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local <RU 압축 해제 디렉토리>/<Grid RU 번호>/<Tomcat RU 번호>
[racdb1:/home/oracle]> grid_env

[+ASM1:/home/oracle]> $GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local /media/sf_oracle/19.7/30899722/30894985
Oracle Interim 패치 설치 프로그램 버전 12.2.0.1.19
Copyright (c) 2020, Oracle Corporation.  All rights reserved.


Oracle 홈: /u01/app/19.0.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/19.0.0/grid/oraInst.loc
OPatch 버전: 12.2.0.1.19
OUI 버전: 12.2.0.7.0
로그 파일 위치: /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2020-04-22_10-38-49오전_1.log

Verifying environment and performing prerequisite checks...
OPatch continues with these patches:   30894985

계속하겠습니까? [y|n]
y
User Responded with: Y
All checks passed.

로컬 시스템의 이 ORACLE_HOME에서 실행 중인 Oracle 인스턴스를 종료하십시오.
(Oracle 홈 = '/u01/app/19.0.0/grid')


로컬 시스템이 패치할 준비가 되었습니까? [y|n]
y
User Responded with: Y
Backing up files...
OH '/u01/app/19.0.0/grid'에 Interim 패치 '30894985'을(를) 적용하는 중
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.has.db.cvu, 19.0.0.0.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.has.crs, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.has.cvu, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.has.crs.cvu, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.has.db, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.has.common.cvu, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rhp.crs, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rhp.db, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rhp.common, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.has.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.xag, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.has.common, 19.0.0.0.0 구성요소를 패치하는 중...
Patch 30894985 successfully applied.
Sub-set patch [29585399] has become inactive due to the application of a super-set patch [30894985].
Please refer to Doc ID 2161861.1 for any possible further required actions.
Log file location: /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2020-04-22_10-38-49오전_1.log

OPatch succeeded.

[+ASM1:/home/oracle]> $GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local /media/sf_oracle/19.7/30899722/30869304
Oracle Interim 패치 설치 프로그램 버전 12.2.0.1.19
Copyright (c) 2020, Oracle Corporation.  All rights reserved.


Oracle 홈: /u01/app/19.0.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/19.0.0/grid/oraInst.loc
OPatch 버전: 12.2.0.1.19
OUI 버전: 12.2.0.7.0
로그 파일 위치: /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2020-04-22_10-40-33오전_1.log

Verifying environment and performing prerequisite checks...
OPatch continues with these patches:   30869304

계속하겠습니까? [y|n]
y
User Responded with: Y
All checks passed.

로컬 시스템의 이 ORACLE_HOME에서 실행 중인 Oracle 인스턴스를 종료하십시오.
(Oracle 홈 = '/u01/app/19.0.0/grid')


로컬 시스템이 패치할 준비가 되었습니까? [y|n]
y
User Responded with: Y
Backing up files...
OH '/u01/app/19.0.0/grid'에 Interim 패치 '30869304'을(를) 적용하는 중

oracle.usm, 19.0.0.0.0 구성요소를 패치하는 중...
Patch 30869304 successfully applied.
Sub-set patch [29517247] has become inactive due to the application of a super-set patch [30869304].
Please refer to Doc ID 2161861.1 for any possible further required actions.
Log file location: /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2020-04-22_10-40-33오전_1.log

OPatch succeeded.

[+ASM1:/home/oracle]> $GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local /media/sf_oracle/19.7/30899722/30869156
Oracle Interim 패치 설치 프로그램 버전 12.2.0.1.19
Copyright (c) 2020, Oracle Corporation.  All rights reserved.


Oracle 홈: /u01/app/19.0.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/19.0.0/grid/oraInst.loc
OPatch 버전: 12.2.0.1.19
OUI 버전: 12.2.0.7.0
로그 파일 위치: /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2020-04-22_10-41-25오전_1.log

Verifying environment and performing prerequisite checks...
OPatch continues with these patches:   30869156

계속하겠습니까? [y|n]
y
User Responded with: Y
All checks passed.

로컬 시스템의 이 ORACLE_HOME에서 실행 중인 Oracle 인스턴스를 종료하십시오.
(Oracle 홈 = '/u01/app/19.0.0/grid')


로컬 시스템이 패치할 준비가 되었습니까? [y|n]
y
User Responded with: Y
Backing up files...
OH '/u01/app/19.0.0/grid'에 Interim 패치 '30869156'을(를) 적용하는 중
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.ctx, 19.0.0.0.0 ] , [ oracle.network.gsm, 19.0.0.0.0 ] , [ oracle.rdbms.ic, 19.0.0.0.0 ] , [ oracle.sdo, 19.0.0.0.0 ] , [ oracle.oraolap.mgmt, 19.0.0.0.0 ] , [ oracle.dbdev, 19.0.0.0.0 ] , [ oracle.rdbms.lbac, 19.0.0.0.0 ] , [ oracle.rdbms.tg4db2, 19.0.0.0.0 ] , [ oracle.options.olap.awm, 19.0.0.0.0 ] , [ oracle.marvel, 19.0.0.0.0 ] , [ oracle.sqlj, 19.0.0.0.0 ] , [ oracle.rdbms.oci, 19.0.0.0.0 ] , [ oracle.rdbms.drdaas, 19.0.0.0.0 ] , [ oracle.net.cman, 19.0.0.0.0 ] , [ oracle.network.cman, 19.0.0.0.0 ] , [ oracle.options.olap, 19.0.0.0.0 ] , [ oracle.precomp.common.core, 19.0.0.0.0 ] , [ oracle.xdk.parser.java.jaxb2, 19.0.0.0.0 ] , [ oracle.xdk, 19.0.0.0.0 ] , [ oracle.odbc, 19.0.0.0.0 ] , [ oracle.assistants.usm, 19.0.0.0.0 ] , [ oracle.rdbms.dv, 19.0.0.0.0 ] , [ oracle.oraolap, 19.0.0.0.0 ] , [ oracle.rdbms.scheduler, 19.0.0.0.0 ] , [ oracle.precomp.common, 19.0.0.0.0 ] , [ oracle.precomp.lang, 19.0.0.0.0 ] , [ oracle.jdk, 1.8.0.191.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.util, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.assistants.acf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.assistants.deconfig, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.assistants.server, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.buildtools.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.ldap.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.network.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.sqlplus, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.tfa, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.dbjava.ic, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.nlsrtl.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.dbjava.jdbc, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.network.client, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.xdk.parser.java, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.deconfig, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.oracore.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.ldap.rsf.ic, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.ldap.security.osdt, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.ons, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.sdo.locator, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.install.plugins, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.install.common, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.install.deinstalltool, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.xdk.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.assistants.asm, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.precomp.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.javavm.client, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.sqlplus.ic, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.oraolap.dbscripts, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.ldap.owm, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.bali.ice, 11.1.1.7.0 구성요소를 패치하는 중...

oracle.ctx.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.ovm, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.dbjava.ucp, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.duma, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.network.listener, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.sdo.locator.jrf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.crs, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.rsf.ic, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.nlsrtl.rsf.core, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.perlint, 5.28.1.0.0 구성요소를 패치하는 중...

oracle.jdk, 1.8.0.201.0 구성요소를 패치하는 중...
Patch 30869156 successfully applied.
Sub-set patch [29517242] has become inactive due to the application of a super-set patch [30869156].
Please refer to Doc ID 2161861.1 for any possible further required actions.
Log file location: /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2020-04-22_10-41-25오전_1.log

OPatch succeeded.

[+ASM1:/home/oracle]> $GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local /media/sf_oracle/19.7/30899722/30898856
Oracle Interim 패치 설치 프로그램 버전 12.2.0.1.19
Copyright (c) 2020, Oracle Corporation.  All rights reserved.


Oracle 홈: /u01/app/19.0.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/19.0.0/grid/oraInst.loc
OPatch 버전: 12.2.0.1.19
OUI 버전: 12.2.0.7.0
로그 파일 위치: /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2020-04-22_10-52-37오전_1.log

Verifying environment and performing prerequisite checks...
OPatch continues with these patches:   30898856

계속하겠습니까? [y|n]
y
User Responded with: Y
All checks passed.

로컬 시스템의 이 ORACLE_HOME에서 실행 중인 Oracle 인스턴스를 종료하십시오.
(Oracle 홈 = '/u01/app/19.0.0/grid')


로컬 시스템이 패치할 준비가 되었습니까? [y|n]
y
User Responded with: Y
Backing up files...
OH '/u01/app/19.0.0/grid'에 Interim 패치 '30898856'을(를) 적용하는 중

oracle.tomcat.crs, 19.0.0.0.0 구성요소를 패치하는 중...
Patch 30898856 successfully applied.
Sub-set patch [29401763] has become inactive due to the application of a super-set patch [30898856].
Please refer to Doc ID 2161861.1 for any possible further required actions.
Log file location: /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2020-04-22_10-52-37오전_1.log

OPatch succeeded.


1번 노드 Database 패치 수행
<RU 압축 해제 디렉토리>/<Grid RU 번호>/<OCW RU 번호>/custom/scripts/prepatch.sh -dbhome $DB_HOME
$DB_HOME/OPatch/opatch apply -oh $DB_HOME -local <RU 압축 해제 디렉토리>/<Grid RU 번호>/<OCW RU 번호>
$DB_HOME/OPatch/opatch apply -oh $DB_HOME -local <RU 압축 해제 디렉토리>/<Grid RU 번호>/<DB RU 번호>
<RU 압축 해제 디렉토리>/<Grid RU 번호>/<OCW RU 번호>/custom/scripts/postpatch.sh -dbhome $DB_HOME  
[+ASM1:/home/oracle]> export DB_HOME=$ORACLE_BASE/product/19.0.0/db_1

[+ASM1:/home/oracle]> db_env

[racdb1:/home/oracle]> /media/sf_oracle/19.7/30899722/30894985/custom/scripts/prepatch.sh -dbhome $DB_HOME
/media/sf_oracle/19.7/30899722/30894985/custom/scripts/prepatch.sh completed successfully.

[racdb1:/home/oracle]> $DB_HOME/OPatch/opatch apply -oh $DB_HOME -local /media/sf_oracle/19.7/30899722/30894985
Oracle Interim 패치 설치 프로그램 버전 12.2.0.1.19
Copyright (c) 2020, Oracle Corporation.  All rights reserved.


Oracle 홈: /u01/app/oracle/product/19.0.0/db_1
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/oracle/product/19.0.0/db_1/oraInst.loc
OPatch 버전: 12.2.0.1.19
OUI 버전: 12.2.0.7.0
로그 파일 위치: /u01/app/oracle/product/19.0.0/db_1/cfgtoollogs/opatch/opatch2020-04-22_10-53-34오전_1.log

Verifying environment and performing prerequisite checks...
OPatch continues with these patches:   30894985

계속하겠습니까? [y|n]
y
User Responded with: Y
All checks passed.

로컬 시스템의 이 ORACLE_HOME에서 실행 중인 Oracle 인스턴스를 종료하십시오.
(Oracle 홈 = '/u01/app/oracle/product/19.0.0/db_1')


로컬 시스템이 패치할 준비가 되었습니까? [y|n]
y
User Responded with: Y
Backing up files...
OH '/u01/app/oracle/product/19.0.0/db_1'에 Interim 패치 '30894985'을(를) 적용하는 중
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.has.crs, 19.0.0.0.0 ] , [ oracle.has.cvu, 19.0.0.0.0 ] , [ oracle.has.crs.cvu, 19.0.0.0.0 ] , [ oracle.rhp.crs, 19.0.0.0.0 ] , [ oracle.xag, 19.0.0.0.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.has.db, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.has.db.cvu, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.has.common.cvu, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rhp.db, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rhp.common, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.has.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.has.common, 19.0.0.0.0 구성요소를 패치하는 중...
Patch 30894985 successfully applied.
Sub-set patch [29585399] has become inactive due to the application of a super-set patch [30894985].
Please refer to Doc ID 2161861.1 for any possible further required actions.
Log file location: /u01/app/oracle/product/19.0.0/db_1/cfgtoollogs/opatch/opatch2020-04-22_10-53-34오전_1.log

OPatch succeeded.

[racdb1:/home/oracle]> $DB_HOME/OPatch/opatch apply -oh $DB_HOME -local /media/sf_oracle/19.7/30899722/30869156
Oracle Interim 패치 설치 프로그램 버전 12.2.0.1.19
Copyright (c) 2020, Oracle Corporation.  All rights reserved.


Oracle 홈: /u01/app/oracle/product/19.0.0/db_1
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/oracle/product/19.0.0/db_1/oraInst.loc
OPatch 버전: 12.2.0.1.19
OUI 버전: 12.2.0.7.0
로그 파일 위치: /u01/app/oracle/product/19.0.0/db_1/cfgtoollogs/opatch/opatch2020-04-22_10-54-28오전_1.log

Verifying environment and performing prerequisite checks...
OPatch continues with these patches:   30869156

계속하겠습니까? [y|n]
y
User Responded with: Y
All checks passed.

로컬 시스템의 이 ORACLE_HOME에서 실행 중인 Oracle 인스턴스를 종료하십시오.
(Oracle 홈 = '/u01/app/oracle/product/19.0.0/db_1')


로컬 시스템이 패치할 준비가 되었습니까? [y|n]
y
User Responded with: Y
Backing up files...
OH '/u01/app/oracle/product/19.0.0/db_1'에 Interim 패치 '30869156'을(를) 적용하는 중
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.network.gsm, 19.0.0.0.0 ] , [ oracle.rdbms.ic, 19.0.0.0.0 ] , [ oracle.tfa, 19.0.0.0.0 ] , [ oracle.oraolap.mgmt, 19.0.0.0.0 ] , [ oracle.rdbms.tg4db2, 19.0.0.0.0 ] , [ oracle.options.olap.awm, 19.0.0.0.0 ] , [ oracle.sqlj, 19.0.0.0.0 ] , [ oracle.net.cman, 19.0.0.0.0 ] , [ oracle.network.cman, 19.0.0.0.0 ] , [ oracle.assistants.asm, 19.0.0.0.0 ] , [ oracle.options.olap, 19.0.0.0.0 ] , [ oracle.xdk.parser.java.jaxb2, 19.0.0.0.0 ] , [ oracle.assistants.usm, 19.0.0.0.0 ] , [ oracle.jdk, 1.8.0.191.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.util, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.assistants.acf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.assistants.deconfig, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.assistants.server, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.buildtools.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.ctx, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.ldap.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.network.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.sdo, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.sqlplus, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.dbjava.ic, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.nlsrtl.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.dbjava.jdbc, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.dbdev, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.network.client, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.xdk.parser.java, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.deconfig, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.oracore.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.lbac, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.ldap.rsf.ic, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.ldap.security.osdt, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.ons, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.sdo.locator, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.install.plugins, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.marvel, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.install.common, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.install.deinstalltool, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.xdk.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.oci, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.drdaas, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.precomp.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.javavm.client, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.precomp.common.core, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.xdk, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.sqlplus.ic, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.odbc, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.oraolap.dbscripts, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.ldap.owm, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.bali.ice, 11.1.1.7.0 구성요소를 패치하는 중...

oracle.ctx.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.ovm, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.dbjava.ucp, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.dv, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.duma, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.network.listener, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.oraolap, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.sdo.locator.jrf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.scheduler, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.crs, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.rsf.ic, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.precomp.common, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.nlsrtl.rsf.core, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.perlint, 5.28.1.0.0 구성요소를 패치하는 중...

oracle.precomp.lang, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.jdk, 1.8.0.201.0 구성요소를 패치하는 중...
Patch 30869156 successfully applied.
Sub-set patch [29517242] has become inactive due to the application of a super-set patch [30869156].
Please refer to Doc ID 2161861.1 for any possible further required actions.
Log file location: /u01/app/oracle/product/19.0.0/db_1/cfgtoollogs/opatch/opatch2020-04-22_10-54-28오전_1.log

OPatch succeeded.

[racdb1:/home/oracle]> /media/sf_oracle/19.7/30899722/30894985/custom/scripts/postpatch.sh -dbhome $DB_HOME
Reading /u01/app/oracle/product/19.0.0/db_1/install/params.ora..
Reading /u01/app/oracle/product/19.0.0/db_1/install/params.ora..
Found uninstantiated /u01/app/oracle/product/19.0.0/db_1/crs/sbs/srvctl.sbs file, copying to /u01/app/oracle/product/19.0.0/db_1/bin/srvctl
Parsing file /u01/app/oracle/product/19.0.0/db_1/bin/srvctl
Parsing file /u01/app/oracle/product/19.0.0/db_1/bin/srvconfig
Parsing file /u01/app/oracle/product/19.0.0/db_1/bin/cluvfy
Parsing file /u01/app/oracle/product/19.0.0/db_1/bin/kfod
Verifying file /u01/app/oracle/product/19.0.0/db_1/bin/srvctl
Verifying file /u01/app/oracle/product/19.0.0/db_1/bin/srvconfig
Verifying file /u01/app/oracle/product/19.0.0/db_1/bin/cluvfy
Verifying file /u01/app/oracle/product/19.0.0/db_1/bin/kfod
Reapplying file permissions on /u01/app/oracle/product/19.0.0/db_1/bin/srvctl
Reapplying file permissions on /u01/app/oracle/product/19.0.0/db_1/bin/srvconfig
Reapplying file permissions on /u01/app/oracle/product/19.0.0/db_1/bin/cluvfy
Reapplying file permissions on /u01/app/oracle/product/19.0.0/db_1/bin/kfod
Reapplying file permissions on /u01/app/oracle/product/19.0.0/db_1/bin/diskmon.bin
Reapplying file permissions on /u01/app/oracle/product/19.0.0/db_1/bin/lsnodes
Reapplying file permissions on /u01/app/oracle/product/19.0.0/db_1/bin/osdbagrp
Reapplying file permissions on /u01/app/oracle/product/19.0.0/db_1/bin/rawutl
Reapplying file permissions on /u01/app/oracle/product/19.0.0/db_1/srvm/admin/ractrans
Reapplying file permissions on /u01/app/oracle/product/19.0.0/db_1/srvm/admin/getcrshome
Reapplying file permissions on /u01/app/oracle/product/19.0.0/db_1/bin/crsdiag.pl
Postpatch completed successfully


root 유저로 1번 노드 rootadd_rdbms.sh 실행
$GRID_HOME/rdbms/install/rootadd_rdbms.sh
[root@rac1 ~]# $GRID_HOME/rdbms/install/rootadd_rdbms.sh


root 유저로 1번 노드 postpatch 작업 수행
$GRID_HOME/crs/install/rootcrs.sh -postpatch [-nonrolling]
[root@rac1 ~]# $GRID_HOME/crs/install/rootcrs.sh -postpatch
Using configuration parameter file: /u01/app/19.0.0/grid/crs/install/crsconfig_params
The log of current session can be found at:
  /u01/app/oracle/crsdata/rac1/crsconfig/crs_postpatch_rac1_2020-04-22_11-00-54AM.log
2020/04/22 11:01:17 CLSRSC-329: Replacing Clusterware entries in file 'oracle-ohasd.service'
Redirecting to /bin/systemctl restart rsyslog.service
클러스터의 Oracle Clusterware 활성 버전이 [19.0.0.0.0]입니다. 클러스터 업그레이드 상태는 [ROLLING PATCH], 클러스터 활성 패치 레벨은 [724960844]입니다.
2020/04/22 11:03:44 CLSRSC-4015: Performing install or upgrade action for Oracle Trace File Analyzer (TFA) Collector.
2020/04/22 11:03:46 CLSRSC-672: Post-patch steps for patching GI home successfully completed.
[root@rac1 ~]# 2020/04/22 11:05:48 CLSRSC-4003: Successfully patched Oracle Trace File Analyzer (TFA) Collector.


1번 노드 패치 결과 확인
grid_env
opatch lspatches
db_env
opatch lspatches


[racdb1:/home/oracle]> grid_env

[+ASM1:/home/oracle]> opatch lspatches
30898856;TOMCAT RELEASE UPDATE 19.0.0.0.0 (30898856)
30869156;Database Release Update : 19.7.0.0.200414 (30869156)
30869304;ACFS RELEASE UPDATE 19.7.0.0.0 (30869304)
30894985;OCW RELEASE UPDATE 19.7.0.0.0 (30894985)

OPatch succeeded.

[+ASM1:/home/oracle]> db_env

[racdb1:/home/oracle]> opatch lspatches
30869156;Database Release Update : 19.7.0.0.200414 (30869156)
30894985;OCW RELEASE UPDATE 19.7.0.0.0 (30894985)

OPatch succeeded.


3. 2번 노드 패치

root 유저로 2번 노드 prepatch 작업 수행
$GRID_HOME/crs/install/rootcrs.sh -prepatch [-nonrolling]
[root@rac2 ~]# echo $GRID_HOME
/u01/app/19.0.0/grid

[root@rac2 ~]# $GRID_HOME/crs/install/rootcrs.sh -prepatch
Using configuration parameter file: /u01/app/19.0.0/grid/crs/install/crsconfig_params
The log of current session can be found at:
  /u01/app/oracle/crsdata/rac2/crsconfig/crs_prepatch_rac2_2020-04-22_11-06-43AM.log
Oracle Clusterware active version on the cluster is [19.0.0.0.0]. The cluster upgrade state is [ROLLING PATCH]. The cluster active patch level is [724960844].
2020/04/22 11:08:22 CLSRSC-4012: Shutting down Oracle Trace File Analyzer (TFA) Collector.
2020/04/22 11:10:02 CLSRSC-4013: Successfully shut down Oracle Trace File Analyzer (TFA) Collector.
2020/04/22 11:10:09 CLSRSC-347: Successfully unlock /u01/app/19.0.0/grid
2020/04/22 11:10:14 CLSRSC-671: Pre-patch steps for patching GI home successfully completed.


2번 노드 Grid 패치 수행
grid_env
$GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local <RU 압축 해제 디렉토리>/<Grid RU 번호>/<OCW RU 번호>
$GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local <RU 압축 해제 디렉토리>/<Grid RU 번호>/<ACFS RU 번호>
$GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local <RU 압축 해제 디렉토리>/<Grid RU 번호>/<DB RU 번호>
$GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local <RU 압축 해제 디렉토리>/<Grid RU 번호>/<DBWLM RU 번호>
$GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local <RU 압축 해제 디렉토리>/<Grid RU 번호>/<Tomcat RU 번호>
[racdb2:/home/oracle]> grid_env

[+ASM2:/home/oracle]> $GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local /media/sf_oracle/19.7/30899722/30894985
Oracle Interim 패치 설치 프로그램 버전 12.2.0.1.19
Copyright (c) 2020, Oracle Corporation.  All rights reserved.


Oracle 홈: /u01/app/19.0.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/19.0.0/grid/oraInst.loc
OPatch 버전: 12.2.0.1.19
OUI 버전: 12.2.0.7.0
로그 파일 위치: /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2020-04-22_11-10-55오전_1.log

Verifying environment and performing prerequisite checks...
OPatch continues with these patches:   30894985

계속하겠습니까? [y|n]
y
User Responded with: Y
All checks passed.

로컬 시스템의 이 ORACLE_HOME에서 실행 중인 Oracle 인스턴스를 종료하십시오.
(Oracle 홈 = '/u01/app/19.0.0/grid')


로컬 시스템이 패치할 준비가 되었습니까? [y|n]
y
User Responded with: Y
Backing up files...
OH '/u01/app/19.0.0/grid'에 Interim 패치 '30894985'을(를) 적용하는 중
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.has.db.cvu, 19.0.0.0.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.has.crs, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.has.cvu, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.has.crs.cvu, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.has.db, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.has.common.cvu, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rhp.crs, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rhp.db, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rhp.common, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.has.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.xag, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.has.common, 19.0.0.0.0 구성요소를 패치하는 중...
Patch 30894985 successfully applied.
Sub-set patch [29585399] has become inactive due to the application of a super-set patch [30894985].
Please refer to Doc ID 2161861.1 for any possible further required actions.
Log file location: /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2020-04-22_11-10-55오전_1.log

OPatch succeeded.

[+ASM2:/home/oracle]> $GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local /media/sf_oracle/19.7/30899722/30869304
Oracle Interim 패치 설치 프로그램 버전 12.2.0.1.19
Copyright (c) 2020, Oracle Corporation.  All rights reserved.


Oracle 홈: /u01/app/19.0.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/19.0.0/grid/oraInst.loc
OPatch 버전: 12.2.0.1.19
OUI 버전: 12.2.0.7.0
로그 파일 위치: /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2020-04-22_11-12-32오전_1.log

Verifying environment and performing prerequisite checks...
OPatch continues with these patches:   30869304

계속하겠습니까? [y|n]
y
User Responded with: Y
All checks passed.

로컬 시스템의 이 ORACLE_HOME에서 실행 중인 Oracle 인스턴스를 종료하십시오.
(Oracle 홈 = '/u01/app/19.0.0/grid')


로컬 시스템이 패치할 준비가 되었습니까? [y|n]
y
User Responded with: Y
Backing up files...
OH '/u01/app/19.0.0/grid'에 Interim 패치 '30869304'을(를) 적용하는 중

oracle.usm, 19.0.0.0.0 구성요소를 패치하는 중...
Patch 30869304 successfully applied.
Sub-set patch [29517247] has become inactive due to the application of a super-set patch [30869304].
Please refer to Doc ID 2161861.1 for any possible further required actions.
Log file location: /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2020-04-22_11-12-32오전_1.log

OPatch succeeded.

[+ASM2:/home/oracle]> $GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local /media/sf_oracle/19.7/30899722/30869156
Oracle Interim 패치 설치 프로그램 버전 12.2.0.1.19
Copyright (c) 2020, Oracle Corporation.  All rights reserved.


Oracle 홈: /u01/app/19.0.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/19.0.0/grid/oraInst.loc
OPatch 버전: 12.2.0.1.19
OUI 버전: 12.2.0.7.0
로그 파일 위치: /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2020-04-22_11-13-24오전_1.log

Verifying environment and performing prerequisite checks...
OPatch continues with these patches:   30869156

계속하겠습니까? [y|n]
y
User Responded with: Y
All checks passed.

로컬 시스템의 이 ORACLE_HOME에서 실행 중인 Oracle 인스턴스를 종료하십시오.
(Oracle 홈 = '/u01/app/19.0.0/grid')


로컬 시스템이 패치할 준비가 되었습니까? [y|n]
y
User Responded with: Y
Backing up files...
OH '/u01/app/19.0.0/grid'에 Interim 패치 '30869156'을(를) 적용하는 중
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.ctx, 19.0.0.0.0 ] , [ oracle.network.gsm, 19.0.0.0.0 ] , [ oracle.rdbms.ic, 19.0.0.0.0 ] , [ oracle.sdo, 19.0.0.0.0 ] , [ oracle.oraolap.mgmt, 19.0.0.0.0 ] , [ oracle.dbdev, 19.0.0.0.0 ] , [ oracle.rdbms.lbac, 19.0.0.0.0 ] , [ oracle.rdbms.tg4db2, 19.0.0.0.0 ] , [ oracle.options.olap.awm, 19.0.0.0.0 ] , [ oracle.marvel, 19.0.0.0.0 ] , [ oracle.sqlj, 19.0.0.0.0 ] , [ oracle.rdbms.oci, 19.0.0.0.0 ] , [ oracle.rdbms.drdaas, 19.0.0.0.0 ] , [ oracle.net.cman, 19.0.0.0.0 ] , [ oracle.network.cman, 19.0.0.0.0 ] , [ oracle.options.olap, 19.0.0.0.0 ] , [ oracle.precomp.common.core, 19.0.0.0.0 ] , [ oracle.xdk.parser.java.jaxb2, 19.0.0.0.0 ] , [ oracle.xdk, 19.0.0.0.0 ] , [ oracle.odbc, 19.0.0.0.0 ] , [ oracle.assistants.usm, 19.0.0.0.0 ] , [ oracle.rdbms.dv, 19.0.0.0.0 ] , [ oracle.oraolap, 19.0.0.0.0 ] , [ oracle.rdbms.scheduler, 19.0.0.0.0 ] , [ oracle.precomp.common, 19.0.0.0.0 ] , [ oracle.precomp.lang, 19.0.0.0.0 ] , [ oracle.jdk, 1.8.0.191.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.util, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.assistants.acf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.assistants.deconfig, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.assistants.server, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.buildtools.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.ldap.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.network.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.sqlplus, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.tfa, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.dbjava.ic, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.nlsrtl.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.dbjava.jdbc, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.network.client, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.xdk.parser.java, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.deconfig, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.oracore.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.ldap.rsf.ic, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.ldap.security.osdt, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.ons, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.sdo.locator, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.install.plugins, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.install.common, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.install.deinstalltool, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.xdk.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.assistants.asm, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.precomp.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.javavm.client, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.sqlplus.ic, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.oraolap.dbscripts, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.ldap.owm, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.bali.ice, 11.1.1.7.0 구성요소를 패치하는 중...

oracle.ctx.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.ovm, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.dbjava.ucp, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.duma, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.network.listener, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.sdo.locator.jrf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.crs, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.rsf.ic, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.nlsrtl.rsf.core, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.perlint, 5.28.1.0.0 구성요소를 패치하는 중...

oracle.jdk, 1.8.0.201.0 구성요소를 패치하는 중...
Patch 30869156 successfully applied.
Sub-set patch [29517242] has become inactive due to the application of a super-set patch [30869156].
Please refer to Doc ID 2161861.1 for any possible further required actions.
Log file location: /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2020-04-22_11-13-24오전_1.log

OPatch succeeded.

[+ASM2:/home/oracle]> $GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local /media/sf_oracle/19.7/30899722/30898856
Oracle Interim 패치 설치 프로그램 버전 12.2.0.1.19
Copyright (c) 2020, Oracle Corporation.  All rights reserved.


Oracle 홈: /u01/app/19.0.0/grid
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/19.0.0/grid/oraInst.loc
OPatch 버전: 12.2.0.1.19
OUI 버전: 12.2.0.7.0
로그 파일 위치: /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2020-04-22_11-22-06오전_1.log

Verifying environment and performing prerequisite checks...
OPatch continues with these patches:   30898856

계속하겠습니까? [y|n]
y
User Responded with: Y
All checks passed.

로컬 시스템의 이 ORACLE_HOME에서 실행 중인 Oracle 인스턴스를 종료하십시오.
(Oracle 홈 = '/u01/app/19.0.0/grid')


로컬 시스템이 패치할 준비가 되었습니까? [y|n]
y
User Responded with: Y
Backing up files...
OH '/u01/app/19.0.0/grid'에 Interim 패치 '30898856'을(를) 적용하는 중

oracle.tomcat.crs, 19.0.0.0.0 구성요소를 패치하는 중...
Patch 30898856 successfully applied.
Sub-set patch [29401763] has become inactive due to the application of a super-set patch [30898856].
Please refer to Doc ID 2161861.1 for any possible further required actions.
Log file location: /u01/app/19.0.0/grid/cfgtoollogs/opatch/opatch2020-04-22_11-22-06오전_1.log

OPatch succeeded.


2번 노드 Database 패치 수행
<RU 압축 해제 디렉토리>/<Grid RU 번호>/<OCW RU 번호>/custom/scripts/prepatch.sh -dbhome $DB_HOME
$DB_HOME/OPatch/opatch apply -oh $DB_HOME -local <RU 압축 해제 디렉토리>/<Grid RU 번호>/<OCW RU 번호>
$DB_HOME/OPatch/opatch apply -oh $DB_HOME -local <RU 압축 해제 디렉토리>/<Grid RU 번호>/<DB RU 번호>
<RU 압축 해제 디렉토리>/<Grid RU 번호>/<OCW RU 번호>/custom/scripts/postpatch.sh -dbhome $DB_HOME  
[+ASM2:/home/oracle]> export DB_HOME=$ORACLE_BASE/product/19.0.0/db_1

[+ASM2:/home/oracle]> db_env

[racdb2:/home/oracle]> /media/sf_oracle/19.7/30899722/30894985/custom/scripts/prepatch.sh -dbhome $DB_HOME
/media/sf_oracle/19.7/30899722/30894985/custom/scripts/prepatch.sh completed successfully.

[racdb2:/home/oracle]> $DB_HOME/OPatch/opatch apply -oh $DB_HOME -local /media/sf_oracle/19.7/30899722/30894985
Oracle Interim 패치 설치 프로그램 버전 12.2.0.1.19
Copyright (c) 2020, Oracle Corporation.  All rights reserved.


Oracle 홈: /u01/app/oracle/product/19.0.0/db_1
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/oracle/product/19.0.0/db_1/oraInst.loc
OPatch 버전: 12.2.0.1.19
OUI 버전: 12.2.0.7.0
로그 파일 위치: /u01/app/oracle/product/19.0.0/db_1/cfgtoollogs/opatch/opatch2020-04-22_11-23-07오전_1.log

Verifying environment and performing prerequisite checks...
OPatch continues with these patches:   30894985

계속하겠습니까? [y|n]
y
User Responded with: Y
All checks passed.

로컬 시스템의 이 ORACLE_HOME에서 실행 중인 Oracle 인스턴스를 종료하십시오.
(Oracle 홈 = '/u01/app/oracle/product/19.0.0/db_1')


로컬 시스템이 패치할 준비가 되었습니까? [y|n]
y
User Responded with: Y
Backing up files...
OH '/u01/app/oracle/product/19.0.0/db_1'에 Interim 패치 '30894985'을(를) 적용하는 중
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.has.crs, 19.0.0.0.0 ] , [ oracle.has.cvu, 19.0.0.0.0 ] , [ oracle.has.crs.cvu, 19.0.0.0.0 ] , [ oracle.rhp.crs, 19.0.0.0.0 ] , [ oracle.xag, 19.0.0.0.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.has.db, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.has.db.cvu, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.has.common.cvu, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rhp.db, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rhp.common, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.has.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.has.common, 19.0.0.0.0 구성요소를 패치하는 중...
Patch 30894985 successfully applied.
Sub-set patch [29585399] has become inactive due to the application of a super-set patch [30894985].
Please refer to Doc ID 2161861.1 for any possible further required actions.
Log file location: /u01/app/oracle/product/19.0.0/db_1/cfgtoollogs/opatch/opatch2020-04-22_11-23-07오전_1.log

OPatch succeeded.

[racdb2:/home/oracle]> $DB_HOME/OPatch/opatch apply -oh $DB_HOME -local /media/sf_oracle/19.7/30899722/30869156
Oracle Interim 패치 설치 프로그램 버전 12.2.0.1.19
Copyright (c) 2020, Oracle Corporation.  All rights reserved.


Oracle 홈: /u01/app/oracle/product/19.0.0/db_1
중앙 인벤토리: /u01/app/oraInventory
   출처: /u01/app/oracle/product/19.0.0/db_1/oraInst.loc
OPatch 버전: 12.2.0.1.19
OUI 버전: 12.2.0.7.0
로그 파일 위치: /u01/app/oracle/product/19.0.0/db_1/cfgtoollogs/opatch/opatch2020-04-22_11-23-43오전_1.log

Verifying environment and performing prerequisite checks...
OPatch continues with these patches:   30869156

계속하겠습니까? [y|n]
y
User Responded with: Y
All checks passed.

로컬 시스템의 이 ORACLE_HOME에서 실행 중인 Oracle 인스턴스를 종료하십시오.
(Oracle 홈 = '/u01/app/oracle/product/19.0.0/db_1')


로컬 시스템이 패치할 준비가 되었습니까? [y|n]
y
User Responded with: Y
Backing up files...
OH '/u01/app/oracle/product/19.0.0/db_1'에 Interim 패치 '30869156'을(를) 적용하는 중
ApplySession: Oracle 홈에 선택적 구성요소 [ oracle.network.gsm, 19.0.0.0.0 ] , [ oracle.rdbms.ic, 19.0.0.0.0 ] , [ oracle.tfa, 19.0.0.0.0 ] , [ oracle.oraolap.mgmt, 19.0.0.0.0 ] , [ oracle.rdbms.tg4db2, 19.0.0.0.0 ] , [ oracle.options.olap.awm, 19.0.0.0.0 ] , [ oracle.sqlj, 19.0.0.0.0 ] , [ oracle.net.cman, 19.0.0.0.0 ] , [ oracle.network.cman, 19.0.0.0.0 ] , [ oracle.assistants.asm, 19.0.0.0.0 ] , [ oracle.options.olap, 19.0.0.0.0 ] , [ oracle.xdk.parser.java.jaxb2, 19.0.0.0.0 ] , [ oracle.assistants.usm, 19.0.0.0.0 ] , [ oracle.jdk, 1.8.0.191.0 ] 이(가) 없거나 상위 버전이 발견되었습니다.

oracle.rdbms.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.util, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.assistants.acf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.assistants.deconfig, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.assistants.server, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.buildtools.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.ctx, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.ldap.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.network.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.dbscripts, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.sdo, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.sqlplus, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.dbjava.ic, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.nlsrtl.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.dbjava.jdbc, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.dbdev, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.network.client, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.xdk.parser.java, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.deconfig, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.oracore.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.lbac, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.ldap.rsf.ic, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.ldap.security.osdt, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.ons, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.sdo.locator, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.install.plugins, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.marvel, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.install.common, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.install.deinstalltool, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.xdk.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.oci, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.drdaas, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.precomp.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.javavm.client, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.precomp.common.core, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.xdk, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.sqlplus.ic, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.odbc, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.oraolap.dbscripts, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.ldap.owm, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.bali.ice, 11.1.1.7.0 구성요소를 패치하는 중...

oracle.ctx.rsf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.ovm, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.rman, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.dbjava.ucp, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.dv, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.duma, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.network.listener, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.oraolap, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.sdo.locator.jrf, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.scheduler, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.crs, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.rdbms.rsf.ic, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.precomp.common, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.nlsrtl.rsf.core, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.perlint, 5.28.1.0.0 구성요소를 패치하는 중...

oracle.precomp.lang, 19.0.0.0.0 구성요소를 패치하는 중...

oracle.jdk, 1.8.0.201.0 구성요소를 패치하는 중...
Patch 30869156 successfully applied.
Sub-set patch [29517242] has become inactive due to the application of a super-set patch [30869156].
Please refer to Doc ID 2161861.1 for any possible further required actions.
Log file location: /u01/app/oracle/product/19.0.0/db_1/cfgtoollogs/opatch/opatch2020-04-22_11-23-43오전_1.log

OPatch succeeded.

[racdb2:/home/oracle]> /media/sf_oracle/19.7/30899722/30894985/custom/scripts/postpatch.sh -dbhome $DB_HOME
Reading /u01/app/oracle/product/19.0.0/db_1/install/params.ora..
Reading /u01/app/oracle/product/19.0.0/db_1/install/params.ora..
Found uninstantiated /u01/app/oracle/product/19.0.0/db_1/crs/sbs/srvctl.sbs file, copying to /u01/app/oracle/product/19.0.0/db_1/bin/srvctl
Parsing file /u01/app/oracle/product/19.0.0/db_1/bin/srvctl
Parsing file /u01/app/oracle/product/19.0.0/db_1/bin/srvconfig
Parsing file /u01/app/oracle/product/19.0.0/db_1/bin/cluvfy
Parsing file /u01/app/oracle/product/19.0.0/db_1/bin/kfod
Verifying file /u01/app/oracle/product/19.0.0/db_1/bin/srvctl
Verifying file /u01/app/oracle/product/19.0.0/db_1/bin/srvconfig
Verifying file /u01/app/oracle/product/19.0.0/db_1/bin/cluvfy
Verifying file /u01/app/oracle/product/19.0.0/db_1/bin/kfod
Reapplying file permissions on /u01/app/oracle/product/19.0.0/db_1/bin/srvctl
Reapplying file permissions on /u01/app/oracle/product/19.0.0/db_1/bin/srvconfig
Reapplying file permissions on /u01/app/oracle/product/19.0.0/db_1/bin/cluvfy
Reapplying file permissions on /u01/app/oracle/product/19.0.0/db_1/bin/kfod
Reapplying file permissions on /u01/app/oracle/product/19.0.0/db_1/bin/diskmon.bin
Reapplying file permissions on /u01/app/oracle/product/19.0.0/db_1/bin/lsnodes
Reapplying file permissions on /u01/app/oracle/product/19.0.0/db_1/bin/osdbagrp
Reapplying file permissions on /u01/app/oracle/product/19.0.0/db_1/bin/rawutl
Reapplying file permissions on /u01/app/oracle/product/19.0.0/db_1/srvm/admin/ractrans
Reapplying file permissions on /u01/app/oracle/product/19.0.0/db_1/srvm/admin/getcrshome
Reapplying file permissions on /u01/app/oracle/product/19.0.0/db_1/bin/crsdiag.pl
Postpatch completed successfully


root 유저로 2번 노드 rootadd_rdbms.sh 실행
$GRID_HOME/rdbms/install/rootadd_rdbms.sh
[root@rac2 ~]# $GRID_HOME/rdbms/install/rootadd_rdbms.sh


root 유저로 2번 노드 postpatch 작업 수행
$GRID_HOME/crs/install/rootcrs.sh -postpatch [-nonrolling]
[root@rac2 ~]# $GRID_HOME/crs/install/rootcrs.sh -postpatch
Using configuration parameter file: /u01/app/19.0.0/grid/crs/install/crsconfig_params
The log of current session can be found at:
  /u01/app/oracle/crsdata/rac2/crsconfig/crs_postpatch_rac2_2020-04-22_11-29-08AM.log
2020/04/22 11:29:31 CLSRSC-329: Replacing Clusterware entries in file 'oracle-ohasd.service'
Redirecting to /bin/systemctl restart rsyslog.service
클러스터의 Oracle Clusterware 활성 버전이 [19.0.0.0.0]입니다. 클러스터 업그레이드 상태는 [NORMAL], 클러스터 활성 패치 레벨은 [3633918477]입니다.
2020/04/22 11:32:44 CLSRSC-4015: Performing install or upgrade action for Oracle Trace File Analyzer (TFA) Collector.
2020/04/22 11:32:50 CLSRSC-672: Post-patch steps for patching GI home successfully completed.
[root@rac2 ~]# 2020/04/22 11:35:09 CLSRSC-4003: Successfully patched Oracle Trace File Analyzer (TFA) Collector.


2번 노드 패치 결과 확인
grid_env
opatch lspatches
db_env
opatch lspatches
[racdb2:/home/oracle]> grid_env

[+ASM2:/home/oracle]> opatch lspatches
30898856;TOMCAT RELEASE UPDATE 19.0.0.0.0 (30898856)
30869156;Database Release Update : 19.7.0.0.200414 (30869156)
30869304;ACFS RELEASE UPDATE 19.7.0.0.0 (30869304)
30894985;OCW RELEASE UPDATE 19.7.0.0.0 (30894985)

OPatch succeeded.

[+ASM2:/home/oracle]> db_env

[racdb2:/home/oracle]> opatch lspatches
30869156;Database Release Update : 19.7.0.0.200414 (30869156)
30894985;OCW RELEASE UPDATE 19.7.0.0.0 (30894985)

OPatch succeeded.


XII. Database 업그레이드

1. 업그레이드 사전 준비 작업

A) 업그레이드 사전 작업 체크 스크립트 수행

11g ORACLE_HOME을 기준으로 사전 작업 체크 스크립트 수행
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
<19c ORACLE_HOME 경로>/jdk/bin/java -jar <19c ORACLE_HOME 경로>/rdbms/admin/preupgrade.jar TERMINAL TEXT
[racdb1:/home/oracle]> export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1

[racdb1:/home/oracle]> $ORACLE_BASE/product/19.0.0/db_1/jdk/bin/java -jar $ORACLE_BASE/product/19.0.0/db_1/rdbms/admin/preupgrade.jar TERMINAL TEXT
Report generated by Oracle Database Pre-Upgrade Information Tool Version
19.0.0.0.0 Build: 1 on 2020-04-22T15:19:11

Upgrade-To version: 19.0.0.0.0

=======================================
Status of the database prior to upgrade
=======================================
      Database Name:  RACDB
     Container Name:  Not Applicable in Pre-12.1 database
       Container ID:  Not Applicable in Pre-12.1 database
            Version:  11.2.0.4.0
     DB Patch Level:  PSU 11.2.0.4.200114
         Compatible:  11.2.0.0.0
          Blocksize:  8192
           Platform:  Linux x86 64-bit
      Timezone File:  14
  Database log mode:  NOARCHIVELOG
           Readonly:  FALSE
            Edition:  EE

  Oracle Component                       Upgrade Action    Current Status
  ----------------                       --------------    --------------
  Oracle Server                          [to be upgraded]  VALID
  JServer JAVA Virtual Machine           [to be upgraded]  VALID
  Oracle XDK for Java                    [to be upgraded]  VALID
  Real Application Clusters              [to be upgraded]  VALID
  Oracle Workspace Manager               [to be upgraded]  VALID
  OLAP Analytic Workspace                [to be upgraded]  VALID
  Oracle Enterprise Manager Repository   [to be upgraded]  VALID
  Oracle Text                            [to be upgraded]  VALID
  Oracle XML Database                    [to be upgraded]  VALID
  Oracle Java Packages                   [to be upgraded]  VALID
  Oracle Multimedia                      [to be upgraded]  VALID
  Oracle Spatial                         [to be upgraded]  VALID
  Expression Filter                      [to be upgraded]  VALID
  Rule Manager                           [to be upgraded]  VALID
  Oracle OLAP API                        [to be upgraded]  VALID

==============
BEFORE UPGRADE
==============

  REQUIRED ACTIONS
  ================
  1.  (AUTOFIXUP) Empty the RECYCLEBIN immediately before database upgrade.

      The database contains 5 objects in the recycle bin.

      The recycle bin must be completely empty before database upgrade.

  RECOMMENDED ACTIONS
  ===================
  2.  Update NUMERIC INITIALIZATION PARAMETERS to meet estimated minimums.
      This action may be done now or when starting the database in upgrade mode
      using the 19 ORACLE HOME.

       Parameter                                 Currently  19 minimum
       ---------                                 ---------  ------------------
       processes                                       150                 300

      The database upgrade process requires certain initialization parameters
      to meet minimum values.  The Oracle upgrade process itself has minimum
      values which may be higher and are marked with an asterisk.  After
      upgrading, those asterisked parameter values may be reset if needed.

  3.  Remove the EM repository.

      - Copy the $ORACLE_HOME/rdbms/admin/emremove.sql script from the target
      19 ORACLE_HOME into the source 11.2.0.4.0 ORACLE_HOME.

      Step 1: If database control is configured, stop EM Database Control,
      using the following command

        $> emctl stop dbconsole

      Step 2: Connect to the database using the SYS account AS SYSDBA

        SET ECHO ON;
        SET SERVEROUTPUT ON;
        @emremove.sql

      Without the set echo and serveroutput commands, you will not be able to
      follow the progress of the script.

      The database has an Enterprise Manager Database Control repository.

      Starting with Oracle Database 12c, the local Enterprise Manager Database
      Control does not exist anymore. The repository will be removed from your
      database during the upgrade.  This step can be manually performed before
      the upgrade to reduce downtime.

  4.  Remove OLAP Catalog by running the 11.2.0.4.0 SQL script
      $ORACLE_HOME/olap/admin/catnoamd.sql script.

      The OLAP Catalog component, AMD, exists in the database.

      Starting with Oracle Database 12c, the OLAP Catalog (OLAP AMD) is
      desupported and will be automatically marked as OPTION OFF during the
      database upgrade if present. Oracle recommends removing OLAP Catalog
      (OLAP AMD) before database upgrade.  This step can be manually performed
      before the upgrade to reduce downtime.

  5.  Upgrade Oracle Application Express (APEX) manually before the database
      upgrade.

      The database contains APEX version 3.2.1.00.12. Upgrade APEX to at least
      version 18.2.0.00.12.

      Starting with Oracle Database Release 18, APEX is not upgraded
      automatically as part of the database upgrade. Refer to My Oracle Support
      Note 1088970.1 for information about APEX installation and upgrades.

  6.  (AUTOFIXUP) Gather stale data dictionary statistics prior to database
      upgrade in off-peak time using:

        EXECUTE DBMS_STATS.GATHER_DICTIONARY_STATS;

      Dictionary statistics do not exist or are stale (not up-to-date).

      Dictionary statistics help the Oracle optimizer find efficient SQL
      execution plans and are essential for proper upgrade timing. Oracle
      recommends gathering dictionary statistics in the last 24 hours before
      database upgrade.

      For information on managing optimizer statistics, refer to the 11.2.0.4
      Oracle Database Performance Tuning Guide.

  7.  (AUTOFIXUP) Directly grant ADMINISTER DATABASE TRIGGER privilege to the
      owner of the trigger or drop and re-create the trigger with a user that
      was granted directly with such. You can list those triggers using: SELECT
      OWNER, TRIGGER_NAME FROM DBA_TRIGGERS WHERE
      TRIM(BASE_OBJECT_TYPE)='DATABASE' AND OWNER NOT IN (SELECT GRANTEE FROM
      DBA_SYS_PRIVS WHERE PRIVILEGE='ADMINISTER DATABASE TRIGGER').

      There is one or more database triggers whose owner does not have the
      right privilege on the database.

      The creation of database triggers must be done by users granted with
      ADMINISTER DATABASE TRIGGER privilege. Privilege must have been granted
      directly.

  8.  (AUTOFIXUP) Gather statistics on fixed objects prior the upgrade.

      None of the fixed object tables have had stats collected.

      Gathering statistics on fixed objects, if none have been gathered yet, is
      recommended prior to upgrading.

      For information on managing optimizer statistics, refer to the 11.2.0.4
      Oracle Database Performance Tuning Guide.

  INFORMATION ONLY
  ================
  9.  To help you keep track of your tablespace allocations, the following
      AUTOEXTEND tablespaces are expected to successfully EXTEND during the
      upgrade process.

                                                 Min Size
      Tablespace                        Size     For Upgrade
      ----------                     ----------  -----------
      SYSTEM                            1000 MB      1190 MB
      TEMP                               100 MB       150 MB

      Minimum tablespace sizes for upgrade are estimates.

  10. Run $ORACLE_HOME/rdbms/admin/catnoexf.sql located in the new Oracle
      Database Oracle home to remove both EXF and RUL.

      Expression Filter (EXF) or Rules Manager (RUL) exist in the database.

      Starting with Oracle Database release 12.1, the Expression Filter (EXF)
      and Database Rules Manager (RUL) features are desupported, and are
      removed during the upgrade process.  This step can be manually performed
      before the upgrade to reduce downtime.

  11. Check the Oracle Backup and Recovery User's Guide for information on how
      to manage an RMAN recovery catalog schema.

      If you are using a version of the recovery catalog schema that is older
      than that required by the RMAN client version, then you must upgrade the
      catalog schema.

      It is good practice to have the catalog schema the same or higher version
      than the RMAN client version you are using.

  ORACLE GENERATED FIXUP SCRIPT
  =============================
  All of the issues in database RACDB
  which are identified above as BEFORE UPGRADE "(AUTOFIXUP)" can be resolved by
  executing the following

    SQL>@/u01/app/oracle/cfgtoollogs/racdb/preupgrade/preupgrade_fixups.sql

=============
AFTER UPGRADE
=============

  REQUIRED ACTIONS
  ================
  None

  RECOMMENDED ACTIONS
  ===================
  12. Upgrade the database time zone file using the DBMS_DST package.

      The database is using time zone file version 14 and the target 19 release
      ships with time zone file version 32.

      Oracle recommends upgrading to the desired (latest) version of the time
      zone file.  For more information, refer to "Upgrading the Time Zone File
      and Timestamp with Time Zone Data" in the 19 Oracle Database
      Globalization Support Guide.

  13. (AUTOFIXUP) Gather dictionary statistics after the upgrade using the
      command:

        EXECUTE DBMS_STATS.GATHER_DICTIONARY_STATS;

      Oracle recommends gathering dictionary statistics after upgrade.

      Dictionary statistics provide essential information to the Oracle
      optimizer to help it find efficient SQL execution plans. After a database
      upgrade, statistics need to be re-gathered as there can now be tables
      that have significantly changed during the upgrade or new tables that do
      not have statistics gathered yet.

  14. Gather statistics on fixed objects after the upgrade and when there is a
      representative workload on the system using the command:

        EXECUTE DBMS_STATS.GATHER_FIXED_OBJECTS_STATS;

      This recommendation is given for all preupgrade runs.

      Fixed object statistics provide essential information to the Oracle
      optimizer to help it find efficient SQL execution plans.  Those
      statistics are specific to the Oracle Database release that generates
      them, and can be stale upon database upgrade.

      For information on managing optimizer statistics, refer to the 11.2.0.4
      Oracle Database Performance Tuning Guide.

  INFORMATION ONLY
  ================
  15. Check the Oracle documentation for the identified components for their
      specific upgrade procedure.

      The database upgrade script will not upgrade the following Oracle
      components:  OLAP Catalog,OWB

      The Oracle database upgrade script upgrades most, but not all Oracle
      Database components that may be installed.  Some components that are not
      upgraded may have their own upgrade scripts, or they may be deprecated or
      obsolete.

  ORACLE GENERATED FIXUP SCRIPT
  =============================
  All of the issues in database RACDB
  which are identified above as AFTER UPGRADE "(AUTOFIXUP)" can be resolved by
  executing the following

    SQL>@/u01/app/oracle/cfgtoollogs/racdb/preupgrade/postupgrade_fixups.sql


==================
PREUPGRADE SUMMARY
==================
  /u01/app/oracle/cfgtoollogs/racdb/preupgrade/preupgrade.log
  /u01/app/oracle/cfgtoollogs/racdb/preupgrade/preupgrade_fixups.sql
  /u01/app/oracle/cfgtoollogs/racdb/preupgrade/postupgrade_fixups.sql

Execute fixup scripts as indicated below:

Before upgrade:

Log into the database and execute the preupgrade fixups
@/u01/app/oracle/cfgtoollogs/racdb/preupgrade/preupgrade_fixups.sql

After the upgrade:

Log into the database and execute the postupgrade fixups
@/u01/app/oracle/cfgtoollogs/racdb/preupgrade/postupgrade_fixups.sql

Preupgrade complete: 2020-04-22T15:19:14


B) 파라미터 변경

프로세스 300 이상으로 변경
alter system set processes=300 sid='*' scope=spfile;
SQL> col NAME form a10
SQL> col VALUE form a10
SQL> select INST_ID, NAME, VALUE from GV$PARAMETER where NAME = 'processes';

   INST_ID NAME       VALUE
---------- ---------- ----------
         2 processes  150
         1 processes  150

SQL> alter system set processes=300 sid='*' scope=spfile;

System altered.

Upgrade를 위해 추후에 데이터베이스를 다시 재기동할 계획이므로 업그레이드할 노드만 재기동하거나, 이 부분에서의 데이터베이스 재기동은 생략해도 됩니다.

1번 인스턴스 재기동

SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.

SQL> startup
ORACLE instance started.

Total System Global Area 3206836224 bytes
Fixed Size                  2257520 bytes
Variable Size             721423760 bytes
Database Buffers         2466250752 bytes
Redo Buffers               16904192 bytes
Database mounted.
Database opened.

SQL> col NAME form a10
SQL> col VALUE form a10
SQL> select INST_ID, NAME, VALUE from GV$PARAMETER where NAME = 'processes';

   INST_ID NAME       VALUE
---------- ---------- ----------
         2 processes  150
         1 processes  300

2번 인스턴스 재기동

SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.

SQL> startup
ORACLE instance started.

Total System Global Area 3206836224 bytes
Fixed Size                  2257520 bytes
Variable Size             721423760 bytes
Database Buffers         2466250752 bytes
Redo Buffers               16904192 bytes
Database mounted.
Database opened.

SQL> col NAME form a10
SQL> col VALUE form a10
SQL> select INST_ID, NAME, VALUE from GV$PARAMETER where NAME = 'processes';

   INST_ID NAME       VALUE
---------- ---------- ----------
         2 processes  300
         1 processes  300


C) EM Repository 제거

삭제 스크립트 복제 및 EMDC 중지
cp <19c ORACLE_HOME 경로>/rdbms/admin/emremove.sql <11g ORACLE_HOME 경로>/rdbms/admin/
emctl stop dbconsole

업그레이드 작업을 수행할 노드에서만 파일을 복사합니다.

[racdb1:/home/oracle]> cp /u01/app/oracle/product/19.0.0/db_1/rdbms/admin/emremove.sql /u01/app/oracle/product/11.2.0/db_1/rdbms/admin

[racdb1:/home/oracle]> emctl stop dbconsole
OC4J Configuration issue. /u01/app/oracle/product/11.2.0/db_1/oc4j/j2ee/OC4J_DBConsole_rac1_racdb not found.
[racdb2:/home/oracle]> emctl stop dbconsole
OC4J Configuration issue. /u01/app/oracle/product/11.2.0/db_1/oc4j/j2ee/OC4J_DBConsole_rac2_racdb not found.


삭제 스크립트 수행
SET ECHO ON;
SET SERVEROUTPUT ON;
@?/rdbms/admin/emremove.sql
SQL> col COMP_NAME form a30
SQL> col STATUS form a10
SQL> col VERSION form a15
SQL> select COMP_NAME, STATUS, VERSION from DBA_REGISTRY where COMP_ID='EM';

COMP_NAME                      STATUS     VERSION
------------------------------ ---------- ---------------
Oracle Enterprise Manager      VALID      11.2.0.4.0

SQL> SET ECHO ON;
SQL> SET SERVEROUTPUT ON;
SQL> @?/rdbms/admin/emremove.sql
SQL> Rem
SQL> Rem $Header: rdbms/admin/emremove.sql /main/5 2017/05/28 22:46:05 stanaya Exp $
SQL> Rem
SQL> Rem emremove.sql
SQL> Rem
SQL> Rem Copyright (c) 2012, 2017, Oracle and/or its affiliates.
SQL> Rem All rights reserved.
SQL> Rem
SQL> Rem    NAME
SQL> Rem emremove.sql - This script removes EM Schema from RDBMS
SQL> Rem
SQL> Rem    DESCRIPTION
SQL> Rem This script will drop the Oracle Enterprise Manager related schemas and objects.
SQL> Rem This script might take few minutes to complete; it has 6 phases to complete the process.
SQL> Rem The script may take longer if you have SYSMAN and related sessions are active
SQL> Rem from Oracle Enterprise Manager(OEM) application.
SQL> Rem
SQL> Rem    NOTES
SQL> Rem Please do following two steps  before running this script
SQL> Rem set serveroutput on
SQL> Rem set echo on
SQL> Rem
SQL> Rem
SQL> Rem
SQL> Rem    RECOMMENDATIONS
SQL> Rem
SQL> Rem You are recommended to shutdown DB Control application immediately before running this
SQL> Rem OEM repository removal script.
SQL> Rem To shutdown DB Control application, you need to run emctl stop dbconsole
SQL> Rem
SQL> Rem
SQL> Rem Steps to be performed manually (after this script is run)
SQL> Rem
SQL> Rem
SQL> Rem Please note that you need to remove the DB Control Configuration Files
SQL> Rem manually to remove DB Control completly; remove the following
SQL> Rem directories from your filesystem
SQL> Rem <ORACLE_HOME>/<hostname_sid>
SQL> Rem <ORACLE_HOME>/oc4j/j2ee/OC4J_DBConsole_<hostname>_<sid>
SQL> Rem
SQL> Rem If the dbcontrol is upgraded from lower version, for example, from 10.2.0.3 to 10.2.0.4,
SQL> Rem then the following directory also needs to be removed from the file system.
SQL> Rem <ORACLE_HOME>/<hostname_sid>.upgrade
SQL> Rem <ORACLE_HOME>/oc4j/j2ee/OC4J_DBConsole_<hostname>_<sid>.upgrade
SQL> Rem
SQL> Rem On Microsoft platforms, also delete the DB Console service, generally with name
SQL> Rem OracleDBConsole<sid>
SQL> Rem
SQL> Rem #############################################################################################
SQL> Rem
SQL> Rem
SQL> Rem    BEGIN SQL_FILE_METADATA
SQL> Rem    SQL_SOURCE_FILE: rdbms/admin/emremove.sql
SQL> Rem    SQL_SHIPPED_FILE: rdbms/admin/emremove.sql
SQL> Rem    SQL_PHASE: UTILITY
SQL> Rem    SQL_STARTUP_MODE: NORMAL
SQL> Rem    SQL_IGNORABLE_ERRORS: NONE
SQL> Rem    END SQL_FILE_METADATA
SQL> Rem
SQL> Rem    MODIFIED   (MM/DD/YY)
SQL> Rem    spramani    01/17/17 - fix for 24518751
SQL> Rem    spramani    08/03/16 - fix # 24330891
SQL> Rem    spramani    07/20/12 - more fix
SQL> Rem    spramani    12/21/11 - Created
SQL> Rem
SQL>
SQL>
SQL> DEFINE EM_REPOS_USER ="SYSMAN"
SQL> DEFINE LOGGING = "VERBOSE"
SQL>
SQL> declare
  2
  3    l_username dba_role_privs.grantee%type;
  4    l_user_name dba_role_privs.grantee%type;
  5    l_sql varchar2(1024);
  6    l_sysman_user number;
  7    l_mgmt_users_src number;
  8    l_sid number;
  9    l_serial number;
 10    err number;
 11    err_msg varchar2(128);
 12    c number;
 13    l_removejobs varchar2(1024);
 14    l_set_context varchar2(1024);
 15    l_client varchar2(16) := ' ';
 16    l_context integer := 5;
 17    l_verbose boolean := FALSE;
 18    l_msg varchar2(1024);
 19    l_open_acc number := 0;
 20
 21    TYPE SESSION_REC IS RECORD
 22     (sid     v$session.sid%type,
 23      serial_no v$session.serial#%type);
 24    TYPE     SESSION_TYPE IS TABLE OF SESSION_REC;
 25    l_sessions SESSION_TYPE;
 26
 27
 28
 29    l_job_process_count NUMBER ;
 30    TYPE TBSP_ARRAY IS TABLE OF varchar2(64) INDEX BY BINARY_INTEGER ;
 31    l_tablespaces TBSP_ARRAY;
 32
 33      PROCEDURE set_job_process_count(p_count IN NUMBER)
 34      IS
 35      BEGIN
 36        --scope=memory so it will be reset on instance startup
 37        -- SID=* to take care of RAC
 38        IF p_count >=0
 39        THEN
 40          EXECUTE IMMEDIATE 'ALTER SYSTEM SET job_queue_processes='
 41                      ||p_count||' SID=''*'' scope=memory' ;
 42        END IF ;
 43      EXCEPTION WHEN OTHERS THEN NULL ;
 44      END set_job_process_count ;
 45
 46      PROCEDURE LOG_MESSAGE (verbose boolean, message varchar2)
 47      IS
 48      BEGIN
 49          IF (verbose = TRUE)
 50          THEN
 51              DBMS_OUTPUT.PUT_LINE(message);
 52          END IF;
 53      END LOG_MESSAGE;
 54
 55      FUNCTION get_job_process_count
 56      RETURN NUMBER
 57      IS
 58      l_value NUMBER ;
 59      BEGIN
 60        SELECT value
 61          INTO l_value
 62          FROM v$parameter
 63         WHERE name = 'job_queue_processes' ;
 64         RETURN(l_value) ;
 65      EXCEPTION
 66      WHEN OTHERS THEN
 67         RETURN(10) ;
 68      END get_job_process_count ;
 69  begin
 70      IF (upper('&LOGGING') = 'VERBOSE')
 71      THEN
 72        l_verbose := TRUE;
 73      END IF;
 74
 75      LOG_MESSAGE(l_verbose,' This script will drop the Oracle Enterprise Manager related schemas and objects.');
 76      LOG_MESSAGE(l_verbose, ' This script might take few minutes to complete; it has 6 phases to complete the process.');
 77      LOG_MESSAGE(l_verbose,' The script may take longer if you have SYSMAN and related sessions are active');
 78      LOG_MESSAGE(l_verbose,' from Oracle Enterprise Manager(OEM) application.');
 79      LOG_MESSAGE(l_verbose,' ');
 80      LOG_MESSAGE(l_verbose,' ');
 81      LOG_MESSAGE(l_verbose,' Recommendations:');
 82      LOG_MESSAGE(l_verbose,' ');
 83      LOG_MESSAGE(l_verbose,' ');
 84      LOG_MESSAGE(l_verbose,' You are recommended to shutdown DB Control application immediately before running this');
 85      LOG_MESSAGE(l_verbose,' OEM repository removal script.');
 86      LOG_MESSAGE(l_verbose,' To shutdown DB Control application, you need to run: emctl stop dbconsole');
 87      LOG_MESSAGE(l_verbose,' ');
 88      LOG_MESSAGE(l_verbose,' ');
 89      LOG_MESSAGE(l_verbose,' Steps to be performed manually (after this script is run):');
 90      LOG_MESSAGE(l_verbose,' ');
 91      LOG_MESSAGE(l_verbose,' ');
 92      LOG_MESSAGE(l_verbose,' Please note that you need to remove the DB Control Configuration Files');
 93      LOG_MESSAGE(l_verbose,' manually to remove DB Control completly; remove the following');
 94      LOG_MESSAGE(l_verbose,' directories from your filesystem:');
 95      LOG_MESSAGE(l_verbose,' <ORACLE_HOME>/<hostname_sid>');
 96      LOG_MESSAGE(l_verbose,' <ORACLE_HOME>/oc4j/j2ee/OC4J_DBConsole_<hostname>_<sid>');
 97      LOG_MESSAGE(l_verbose,' ');
 98      LOG_MESSAGE(l_verbose,' If the dbcontrol is upgraded from lower version, for example, from 10.2.0.3 to 10.2.0.4,');
 99      LOG_MESSAGE(l_verbose,' then the following directory also needs to be removed from the file system.');
100      LOG_MESSAGE(l_verbose,' <ORACLE_HOME>/<hostname_sid>.upgrade');
101      LOG_MESSAGE(l_verbose,' <ORACLE_HOME>/oc4j/j2ee/OC4J_DBConsole_<hostname>_<sid>.upgrade');
102      LOG_MESSAGE(l_verbose,' ');
103      LOG_MESSAGE(l_verbose,' On Microsoft platforms, also delete the DB Console service, generally with name');
104      LOG_MESSAGE(l_verbose,' OracleDBConsole<sid>');
105
106
107      LOG_MESSAGE(l_verbose,'Starting phase 1 : Dropping AQ related objests, EM jobs and all Oracle Enterprise Manager related schemas; except SYSMAN ...');
108
109      c := 0;
110      BEGIN
111          select count(1) into l_sysman_user from all_users where username='SYSMAN';
112      IF (l_sysman_user > 0 ) THEN
113      BEGIN
114
115          BEGIN
116              LOG_MESSAGE(l_verbose,'dropping AQ related objests from SYSMAN ...');
117
118              DBMS_AQADM.DROP_QUEUE_TABLE(queue_table=>'SYSMAN.MGMT_NOTIFY_QTABLE',force=>TRUE);
119          EXCEPTION
120              WHEN OTHERS THEN
121               err := SQLCODE;
122               LOG_MESSAGE(l_verbose,'found [sqlcode:'||err||']: AQ related objects are dropped already or not found');
123          END;
124
125          BEGIN
126              -- reduce job_queue_processes to zero
127             l_job_process_count := get_job_process_count ;
128             set_job_process_count(0) ;
129             LOG_MESSAGE(l_verbose,'saved job_queue_process=' || l_job_process_count || ', set to 0, now removing Oracle EM jobs ...');
130             l_removejobs := 'BEGIN ' ||  'SYSMAN' || '.emd_maintenance.remove_em_dbms_jobs; END;';
131             execute immediate l_removejobs;
132          EXCEPTION
133             WHEN OTHERS THEN
134                 err := SQLCODE;
135                 LOG_MESSAGE(l_verbose,'found [sqlcode:'||err||']: EM jobs are dropped already or not found');
136          END;
137
138      END;
139      END IF;
140      END;
141
142      -- First, drop all users, except SYSMAN who have MGMT_USER role and
143      -- are created by EM. All users created by EM will have a record
144      -- in MGMT_CREATED_USERS table
145      --
146
147      BEGIN
148          select count(1) into l_sysman_user from all_users where username='SYSMAN';
149          IF (l_sysman_user > 0 ) THEN
150          BEGIN
151
152          LOOP  --  part 1 main loop
153                -- handle SYSMAN is partially dropped
154               select count(1) into l_mgmt_users_src from all_objects where object_name='MGMT_CREATED_USERS' and owner='SYSMAN';
155               IF(l_mgmt_users_src = 0 ) THEN
156                   EXIT;
157               END IF;
158          BEGIN
159            LOG_MESSAGE(l_verbose,'finding users who needs to be dropped ...');
160            l_username := '';
161            BEGIN
162                execute immediate 'select grantee
163                   from sys.dba_role_privs
164                   where granted_role ='||DBMS_ASSERT.ENQUOTE_LITERAL('MGMT_USER')||
165                    ' AND grantee IN (SELECT user_name
166                                 FROM SYSMAN.MGMT_CREATED_USERS
167                                  WHERE SYSTEM_USER=0)
168                    AND ROWNUM=1'
169                    into l_user_name;
170                 LOG_MESSAGE(l_verbose,'found user name: ' || l_user_name);
171                    l_username := DBMS_ASSERT.ENQUOTE_NAME(l_user_name, FALSE);
172
173                 EXECUTE IMMEDIATE 'ALTER USER '||l_username||' ACCOUNT LOCK' ;
174            EXCEPTION
175                  WHEN NO_DATA_FOUND THEN
176                      LOG_MESSAGE(l_verbose,l_username || ' IS ALREADY DROPPED');
177                  EXIT; -- THEN RETURN ;
178            END ;
179
180
181            FOR cnt in 1 .. 150 LOOP -- session kill loop
182
183              BEGIN
184                -- FOR crec in (SELECT sid, serial#
185                --               FROM v$session
186                --              WHERE username=l_username
187                --                AND status NOT IN('KILLED'))
188
189                l_sql := 'SELECT sid, serial#
190                               FROM v$session
191                              WHERE username='|| DBMS_ASSERT.ENQUOTE_LITERAL(l_user_name)||'
192                              AND status NOT IN(''KILLED'')';
193                execute immediate l_sql BULK COLLECT INTO l_sessions;
194
195                FOR i in 1..l_sessions.COUNT
196                LOOP   --  cursor loop
197                BEGIN
198                     LOG_MESSAGE(l_verbose,'killing related sessions : sid= ' || l_sessions(i).sid || ' serial#= ' || l_sessions(i).serial_no || ' ...');
199                       EXECUTE IMMEDIATE 'ALTER SYSTEM KILL SESSION ' || DBMS_ASSERT.ENQUOTE_LITERAL(l_sessions(i).sid || ',' || l_sessions(i).serial_no)||' IMMEDIATE';
200                EXCEPTION
201                        WHEN OTHERS THEN
202                           err := SQLCODE;
203                           IF err != -30 THEN
204                              LOG_MESSAGE(l_verbose,'found [sqlcode:'||err||']: no session found; or already killed.');
205                              EXIT;
206                           END IF;
207                END;
208                COMMIT;
209                END LOOP; -- end cursor loop
210
211              EXCEPTION
212                  WHEN OTHERS THEN
213                    err := SQLCODE;
214                    IF err != -30 THEN
215                      LOG_MESSAGE(l_verbose,'found [sqlcode:'||err||']: no session found; or already killed.');
216                      EXIT;
217                    END IF;
218              END;
219
220              IF SQL%NOTFOUND THEN
221                 LOG_MESSAGE(l_verbose,'found [sql%notfound]: no session found; or already killed.');
222                 EXIT;
223              END IF;
224
225            COMMIT;
226
227            END LOOP;  -- end session killing loop
228            LOG_MESSAGE(l_verbose,' Dropping user : ' || l_username || '...');
229
230            EXECUTE IMMEDIATE 'drop user ' || l_username || ' cascade';
231            exit;
232            EXCEPTION
233              WHEN NO_DATA_FOUND THEN
234                LOG_MESSAGE(l_verbose,'found [no_data_found]: no user/corresponding sessions found related to DB Control');
235                 EXIT;
236              WHEN OTHERS THEN
237                err := SQLCODE;
238                IF err = -1918 THEN
239                 LOG_MESSAGE(l_verbose,'found [sqlcode:'||err||']: no DB Control user/corresponding sessions found related to DB Control');
240                  EXIT;
241                ELSE
242                  IF err = -1940 THEN
243                    NULL;
244                  ELSE
245                    -- keep count of try to drop EM related user and sessions
246                    -- give up after 50 try
247
248                    c := c+1;
249                    IF c > 50 THEN
250                       RAISE;
251                    END IF;
252                  END IF;
253                END IF;
254          END;
255          END LOOP; -- end part main loop
256         END;
257         ELSE
258                 LOG_MESSAGE(l_verbose,'SYSMAN IS ALREADY DROPPED');
259         END IF;
260     END;
261
262     BEGIN
263         -- Now, drop the SYSMAN user
264         LOG_MESSAGE(l_verbose,'Finished phase 1');
265         LOG_MESSAGE(l_verbose,'Starting phase 2 : Dropping SYSMAN schema ...');
266
267         c := 0;
268         -- validate user exists
269         select count(1) into l_sysman_user from all_users where username='SYSMAN';
270         IF (l_sysman_user > 0 ) THEN
271         BEGIN
272
273             BEGIN
274               --  SELECT username
275               --   INTO l_username
276               --   FROM dba_users
277               --   WHERE username = 'SYSMAN';
278                  -- l_user_name := 'SYSMAN';
279                  -- l_username = DBMS_ASSERT.ENQUOTE_NAME(l_user_name);
280                  EXECUTE IMMEDIATE 'ALTER USER SYSMAN ACCOUNT LOCK' ;
281             EXCEPTION
282                  WHEN NO_DATA_FOUND THEN
283                      LOG_MESSAGE(l_verbose,'SYSMAN IS ALREADY DROPPED');
284                  -- THEN RETURN ;
285             END ;
286
287
288             BEGIN
289                 LOOP  -- main loop
290                     BEGIN
291                         FOR cnt in 1 .. 150 LOOP -- session kill loop
292                             BEGIN
293                                 FOR crec in (SELECT sid, serial#
294                                     FROM gv$session
295                                       WHERE (username='SYSMAN' OR
296                                          schemaname='SYSMAN')
297                                       AND status != 'KILLED')
298                                 LOOP   --cursor loop
299                                     BEGIN
300                                         LOG_MESSAGE(l_verbose,'killing related sessions : sid= ' || crec.sid || ' serial#= ' || crec.serial#  || ' ...');
301                                         EXECUTE IMMEDIATE 'ALTER SYSTEM KILL SESSION ' ||
302                                           DBMS_ASSERT.ENQUOTE_LITERAL(crec.sid || ',' || crec.serial#)|| ' IMMEDIATE';
303                                     EXCEPTION
304                                     WHEN OTHERS THEN
305                                         err := SQLCODE;
306                                         IF err != -30 THEN
307                                             LOG_MESSAGE(l_verbose,'found [sqlcode:'||err||']: SYSMAN related sessions are already killed; no session found');
308                                             EXIT;
309                                         END IF;
310                                    END;
311                                    COMMIT;
312                                 END LOOP;  -- cursor loop ends
313                             EXCEPTION
314                                WHEN OTHERS THEN
315                                   err := SQLCODE;
316                                   IF err != -30 THEN
317                                       LOG_MESSAGE(l_verbose,'found [sqlcode:'||err||']: SYSMAN related sessions are already killed; no session found');
318                                       EXIT;
319                                   END IF;
320                             END;
321                             IF SQL%NOTFOUND THEN
322                                  LOG_MESSAGE(l_verbose,'found [sql%notfound]: SYSMAN related sessions are already killed; no session found');
323                                  EXIT;
324                            END IF;
325                            COMMIT;
326                         END LOOP;  -- end of session kill loop
327
328                         -- END;
329                         LOG_MESSAGE(l_verbose,'dropping user :  ' || l_user_name || '...');
330                         execute immediate 'drop user SYSMAN cascade';
331                         set_job_process_count(l_job_process_count) ;
332                         exit;
333
334                         -- >> START - Dropping the Tablespaces
335                         LOG_MESSAGE(l_verbose,'Finished phase 2');
336                         LOG_MESSAGE(l_verbose,'Starting phase 3 : Dropping Oracle Enterprise Manager related tablespaces ...');
337
338                         LOG_MESSAGE(l_verbose,'No seperate TABLESPACES Exist for EM;  all in SYSAUX; no action taken');
339                         -- >> END - Dropping the Tablespaces
340
341                     EXCEPTION
342                        WHEN NO_DATA_FOUND THEN
343                            LOG_MESSAGE(l_verbose,'found [ no_data_found]: no sysman/corresponding sessions');
344                            EXIT;
345                        WHEN OTHERS THEN
346                        err := SQLCODE;
347                        IF err = -1918 THEN
348                            LOG_MESSAGE(l_verbose,'found [sqlcode:1918]: no sysman/corresponding sessions');
349                            EXIT;
350                        ELSIF err = -1940 THEN
351                                NULL;
352                        ELSE
353                            LOG_MESSAGE(l_verbose,'found [sqlcode:'||err||']: no sysman/corresponding sessions');
354                            c := c+1;
355                            IF c > 50 THEN
356                                RAISE;
357                            END IF;
358                        END IF;
359                     END;
360                 END LOOP;  -- end of main loop
361             END;
362             LOG_MESSAGE(l_verbose,'SYSMAN dropped');
363             commit;
364         END;
365      ELSE
366        LOG_MESSAGE(l_verbose,'SYSMAN is already dropped');
367      END IF;
368      EXCEPTION
369          WHEN OTHERS THEN
370          set_job_process_count(l_job_process_count) ;
371          RAISE ;
372      END;
373
374  BEGIN
375
376      -- Drop basic roles.
377      LOG_MESSAGE(l_verbose,'Finished phase 3');
378      LOG_MESSAGE(l_verbose,'Starting phase 4 : Dropping Oracle Enterprise Manager related MGMT_USER role ...');
379
380      BEGIN
381        execute immediate 'drop role MGMT_USER';
382      EXCEPTION
383            WHEN OTHERS THEN
384            LOG_MESSAGE(l_verbose,'Role MGMT_USER already dropped');
385      END;
386      --
387      -- Drop the following synonyms related to REPOS Schema
388      --
389      LOG_MESSAGE(l_verbose,'Finished phase 4');
390      LOG_MESSAGE(l_verbose,'Starting phase 5 : Dropping Oracle Enterprise Manager related public synonyms ...');
391
392
393      BEGIN
394        FOR crec in (SELECT synonym_name,table_owner,table_name
395                     FROM dba_synonyms
396                     WHERE owner = 'PUBLIC'
397                     AND table_owner = 'SYSMAN')
398        LOOP
399            BEGIN
400                LOG_MESSAGE(l_verbose,'Dropping synonym : ' || crec.synonym_name || ' ... ');
401                EXECUTE IMMEDIATE 'DROP PUBLIC SYNONYM ' || DBMS_ASSERT.SIMPLE_SQL_NAME(crec.synonym_name);
402
403            EXCEPTION
404                when others then
405                LOG_MESSAGE(l_verbose,'Public synonym ' || crec.synonym_name ||
406                                     ' cannot be dropped');
407                -- continue dropping other synonyms.
408            END;
409        END LOOP;
410      END;
411
412      BEGIN
413        LOG_MESSAGE(l_verbose,'Finished phase 5');
414        LOG_MESSAGE(l_verbose,'Starting phase 6 : Dropping Oracle Enterprise Manager related other roles ...');
415        FOR crec in (select role from sys.dba_roles where role like 'MGMT_%')
416        LOOP
417          LOG_MESSAGE(l_verbose,'Dropping role: ' || crec.role ||' ...');
418          execute immediate 'drop role ' || DBMS_ASSERT.SIMPLE_SQL_NAME(crec.role);
419          commit;
420        END LOOP;
421      EXCEPTION
422          when NO_DATA_FOUND THEN
423            LOG_MESSAGE(l_verbose,'Roles like MGMT% do not exist');
424          WHEN OTHERS THEN
425            err := SQLCODE;
426            LOG_MESSAGE(l_verbose,'found [sqlcode: '||SQLCODE||']: no MGMT% roles to drop');
427      END;
428
429      -- lock DBSNMP user
430      BEGIN
431          BEGIN
432             LOG_MESSAGE(l_verbose,'Process DBSNMP user');
433             select count(1) into l_open_acc  from DBA_USERS where USERNAME ='DBSNMP' and ACCOUNT_STATUS='OPEN';
434          EXCEPTION
435             when NO_DATA_FOUND THEN
436                LOG_MESSAGE(l_verbose,'User DBSNMP does not exist');
437             WHEN OTHERS THEN
438                  err := SQLCODE;
439                  LOG_MESSAGE(l_verbose,'found [sqlcode: '||SQLCODE||']: while checking DBSNMP user status');
440
441          END;
442
443          IF (l_open_acc > 0 ) THEN
444              BEGIN
445                  execute immediate 'ALTER USER DBSNMP PASSWORD EXPIRE';
446                   LOG_MESSAGE(l_verbose,'DBSNMP user password is made expired');
447              EXCEPTION
448                  WHEN OTHERS THEN
449                      err := SQLCODE;
450                      LOG_MESSAGE(l_verbose,'found [sqlcode: '||SQLCODE||']: while expiring DBSNMP user password');
451              END;
452
453              BEGIN
454                  execute immediate 'ALTER USER DBSNMP ACCOUNT LOCK';
455                   LOG_MESSAGE(l_verbose,'User DBSNMP is locked');
456              EXCEPTION
457                  WHEN OTHERS THEN
458                      err := SQLCODE;
459                      LOG_MESSAGE(l_verbose,'found [sqlcode: '||SQLCODE||']: while locking DBSNMP user');
460              END;
461
462          END IF;
463          LOG_MESSAGE(l_verbose,'Done processing DBSNMP user');
464      END;
465
466      LOG_MESSAGE(l_verbose,'Finished phase 6');
467      LOG_MESSAGE(l_verbose,'The Oracle Enterprise Manager related schemas and objects are dropped.');
468      LOG_MESSAGE(l_verbose,'Do the manual steps to studown the DB Control if not done before running this script and then delete the DB Control configuration files');
469      commit;
470  END;
471  END;
472  /
old  70:     IF (upper('&LOGGING') = 'VERBOSE')
new  70:     IF (upper('VERBOSE') = 'VERBOSE')
This script will drop the Oracle Enterprise Manager related schemas and objects.
This script might take few minutes to complete; it has 6 phases to complete the
process.
The script may take longer if you have SYSMAN and related sessions are active
from Oracle Enterprise Manager(OEM) application.
Recommendations:
You are recommended to shutdown DB Control application immediately before
running this
OEM repository removal script.
To shutdown DB Control application, you need to run: emctl stop dbconsole
Steps to be performed manually (after this script is run):
Please note that you need to remove the DB Control Configuration Files
manually to remove DB Control completly; remove the following
directories from your filesystem:
<ORACLE_HOME>/<hostname_sid>
<ORACLE_HOME>/oc4j/j2ee/OC4J_DBConsole_<hostname>_<sid>
If the dbcontrol is upgraded from lower version, for example, from 10.2.0.3 to
10.2.0.4,
then the following directory also needs to be removed from the file system.
<ORACLE_HOME>/<hostname_sid>.upgrade
<ORACLE_HOME>/oc4j/j2ee/OC4J_DBConsole_<hostname>_<sid>.upgrade
On Microsoft platforms, also delete the DB Console service, generally with name
OracleDBConsole<sid>
Starting phase 1 : Dropping AQ related objests, EM jobs and all Oracle
Enterprise Manager related schemas; except SYSMAN ...
dropping AQ related objests from SYSMAN ...
saved job_queue_process=1000, set to 0, now removing Oracle EM jobs ...
finding users who needs to be dropped ...
found user name: MGMT_VIEW
found [sql%notfound]: no session found; or already killed.
Dropping user : "MGMT_VIEW"...
Finished phase 1
Starting phase 2 : Dropping SYSMAN schema ...
found [sql%notfound]: SYSMAN related sessions are already killed; no session
found
dropping user :  MGMT_VIEW...
SYSMAN dropped
Finished phase 3
Starting phase 4 : Dropping Oracle Enterprise Manager related MGMT_USER role ...
Finished phase 4
Starting phase 5 : Dropping Oracle Enterprise Manager related public synonyms
...
Dropping synonym : SMP_EMD_TARGET_OBJ_ARRAY ...
Dropping synonym : SMP_EMD_TARGET_OBJ ...
Dropping synonym : SMP_EMD_STRING_ARRAY_ARRAY ...
Dropping synonym : SMP_EMD_STRING_ARRAY ...
Dropping synonym : SMP_EMD_NVPAIR_ARRAY ...
Dropping synonym : SMP_EMD_NVPAIR ...
Dropping synonym : SMP_EMD_INTEGER_ARRAY_ARRAY ...
Dropping synonym : SMP_EMD_INTEGER_ARRAY ...
Dropping synonym : SMP_EMD_DELETE_REC_ARRAY ...
Dropping synonym : SMP_EMD_AVAIL_OBJ ...
Dropping synonym : SETEMVIEWUSERCONTEXT ...
Dropping synonym : MGMT_VIEW_UTIL ...
Dropping synonym : MGMT_USER ...
Dropping synonym : MGMT_TYPE_PROPERTIES ...
Dropping synonym : MGMT_TARGET_PROPERTIES ...
Dropping synonym : MGMT_TARGET_MEMBERSHIPS ...
Dropping synonym : MGMT_TARGET_BLACKOUTS ...
Dropping synonym : MGMT_TARGETS ...
Dropping synonym : MGMT_TARGET ...
Dropping synonym : MGMT_STRING_METRIC_HISTORY ...
Dropping synonym : MGMT_SEVERITY_OBJ ...
Dropping synonym : MGMT_SEVERITY_ARRAY ...
Dropping synonym : MGMT_SEVERITY ...
Dropping synonym : MGMT_PREFERENCES ...
Dropping synonym : MGMT_PAF_PROCS_LATEST ...
Dropping synonym : MGMT_PAF_JOBS ...
Dropping synonym : MGMT_PAF$STATES ...
Dropping synonym : MGMT_PAF$PROCEDURES ...
Dropping synonym : MGMT_PAF$INSTANCES ...
Dropping synonym : MGMT_PAF$APPLICATIONS ...
Dropping synonym : MGMT_NAME_VALUES ...
Dropping synonym : MGMT_NAME_VALUE ...
Dropping synonym : MGMT_METRIC_THRESHOLDS ...
Dropping synonym : MGMT_METRIC_ERRORS ...
Dropping synonym : MGMT_METRIC_COLLECTIONS ...
Dropping synonym : MGMT_METRICS_RAW ...
Dropping synonym : MGMT_METRICS_COMPOSITE_KEYS ...
Dropping synonym : MGMT_METRICS_1HOUR ...
Dropping synonym : MGMT_METRICS_1DAY ...
Dropping synonym : MGMT_METRICS ...
Dropping synonym : MGMT_MESSAGES ...
Dropping synonym : MGMT_LONG_TEXT ...
Dropping synonym : MGMT_LOG ...
Dropping synonym : MGMT_JOB_TARGET ...
Dropping synonym : MGMT_JOB_SCHEDULE ...
Dropping synonym : MGMT_JOB_PARAMETER ...
Dropping synonym : MGMT_JOB_OUTPUT ...
Dropping synonym : MGMT_JOB_EXEC_SUMMARY ...
Dropping synonym : MGMT_JOB_EXECUTION ...
Dropping synonym : MGMT_JOB_EXECPLAN ...
Dropping synonym : MGMT_JOBS ...
Dropping synonym : MGMT_JOB ...
Dropping synonym : MGMT_IP_TGT_GUID_ARRAY ...
Dropping synonym : MGMT_GUID_OBJ ...
Dropping synonym : MGMT_GUID_ARRAY ...
Dropping synonym : MGMT_GLOBAL ...
Dropping synonym : MGMT_DELTA_VALUES ...
Dropping synonym : MGMT_DELTA_VALUE ...
Dropping synonym : MGMT_DELTA_ID_VALUES ...
Dropping synonym : MGMT_DELTA_IDS ...
Dropping synonym : MGMT_DELTA_ENTRY_VALUES ...
Dropping synonym : MGMT_DELTA_ENTRY ...
Dropping synonym : MGMT_DELTA ...
Dropping synonym : MGMT_CURRENT_SEVERITY ...
Dropping synonym : MGMT_CURRENT_METRIC_ERRORS ...
Dropping synonym : MGMT_CURRENT_METRICS ...
Dropping synonym : MGMT_CURRENT_AVAILABILITY ...
Dropping synonym : MGMT_CREDENTIAL ...
Dropping synonym : MGMT_COLLECTION_PROPERTIES ...
Dropping synonym : MGMT_AVAILABILITY ...
Dropping synonym : MGMT_ADMIN ...
Dropping synonym : MGMT$TXN_PERF_RAW ...
Dropping synonym : MGMT$TXN_PERF_HOUR ...
Dropping synonym : MGMT$TXN_PERF_DAY ...
Dropping synonym : MGMT$TEMPLATE_POLICY_SETTINGS ...
Dropping synonym : MGMT$TEMPLATE_METRIC_SETTINGS ...
Dropping synonym : MGMT$TEMPLATE_METRICCOLLECTION ...
Dropping synonym : MGMT$TEMPLATES ...
Dropping synonym : MGMT$TARGET_TYPE_PROPERTIES ...
Dropping synonym : MGMT$TARGET_TYPE_DEF ...
Dropping synonym : MGMT$TARGET_TYPE ...
Dropping synonym : MGMT$TARGET_PROPERTIES ...
Dropping synonym : MGMT$TARGET_POLICY_SETTINGS ...
Dropping synonym : MGMT$TARGET_POLICY_EVAL_SUMM ...
Dropping synonym : MGMT$TARGET_POLICIES ...
Dropping synonym : MGMT$TARGET_METRIC_SETTINGS ...
Dropping synonym : MGMT$TARGET_METRIC_COLLECTIONS ...
Dropping synonym : MGMT$TARGET_MEMBERS ...
Dropping synonym : MGMT$TARGET_FLAT_MEMBERS ...
Dropping synonym : MGMT$TARGET_COMPOSITE ...
Dropping synonym : MGMT$TARGET_COMPONENTS ...
Dropping synonym : MGMT$TARGET_ASSOCIATIONS ...
Dropping synonym : MGMT$TARGET ...
Dropping synonym : MGMT$STORAGE_REPORT_VOLUME ...
Dropping synonym : MGMT$STORAGE_REPORT_PATHS ...
Dropping synonym : MGMT$STORAGE_REPORT_NFS ...
Dropping synonym : MGMT$STORAGE_REPORT_LOCALFS ...
Dropping synonym : MGMT$STORAGE_REPORT_KEYS ...
Dropping synonym : MGMT$STORAGE_REPORT_ISSUES ...
Dropping synonym : MGMT$STORAGE_REPORT_DISK ...
Dropping synonym : MGMT$STORAGE_REPORT_DATA ...
Dropping synonym : MGMT$STEP_METRICS_RAW ...
Dropping synonym : MGMT$STEP_METRICS_HOURLY ...
Dropping synonym : MGMT$STEP_METRICS_DAILY ...
Dropping synonym : MGMT$STEP_GROUPS ...
Dropping synonym : MGMT$STEPS ...
Dropping synonym : MGMT$SOFTWARE_PATCHSETS ...
Dropping synonym : MGMT$SOFTWARE_PATCHES_IN_HOMES ...
Dropping synonym : MGMT$SOFTWARE_OTHERS ...
Dropping synonym : MGMT$SOFTWARE_ONEOFF_PATCHES ...
Dropping synonym : MGMT$SOFTWARE_HOME_PROPERTIES ...
Dropping synonym : MGMT$SOFTWARE_HOMES ...
Dropping synonym : MGMT$SOFTWARE_DEPENDENCIES ...
Dropping synonym : MGMT$SOFTWARE_COMP_PATCHSET ...
Dropping synonym : MGMT$SOFTWARE_COMPONENT_ONEOFF ...
Dropping synonym : MGMT$SOFTWARE_COMPONENTS ...
Dropping synonym : MGMT$RACDB_INTERCONNECTS ...
Dropping synonym : MGMT$POLICY_VIOL_NOTIF_LOG ...
Dropping synonym : MGMT$POLICY_VIOL_ANNOTATIONS ...
Dropping synonym : MGMT$POLICY_VIOLATION_HISTORY ...
Dropping synonym : MGMT$POLICY_VIOLATION_CURRENT ...
Dropping synonym : MGMT$POLICY_VIOLATION_CTXT ...
Dropping synonym : MGMT$POLICY_VIOLATION_CONTEXT ...
Dropping synonym : MGMT$POLICY_PARAMETERS ...
Dropping synonym : MGMT$POLICIES ...
Dropping synonym : MGMT$PATCH_ADVISORIES ...
Dropping synonym : MGMT$OS_SUMMARY ...
Dropping synonym : MGMT$OS_PROPERTIES ...
Dropping synonym : MGMT$OS_PATCHES ...
Dropping synonym : MGMT$OS_KERNEL_PARAMS ...
Dropping synonym : MGMT$OS_HW_SUMMARY ...
Dropping synonym : MGMT$OS_FS_MOUNT ...
Dropping synonym : MGMT$OS_COMPONENTS ...
Dropping synonym : MGMT$ORACLE_SW_GRP_TARGETS ...
Dropping synonym : MGMT$ORACLE_SW_GRP_INSTALL ...
Dropping synonym : MGMT$ORACLE_SW_ENT_TARGETS ...
Dropping synonym : MGMT$ORACLE_SW_ENT_INSTALL ...
Dropping synonym : MGMT$MISSING_TARGETS_IN_GROUPS ...
Dropping synonym : MGMT$MISSING_TARGETS ...
Dropping synonym : MGMT$METRIC_HOURLY ...
Dropping synonym : MGMT$METRIC_ERROR_HISTORY ...
Dropping synonym : MGMT$METRIC_ERROR_CURRENT ...
Dropping synonym : MGMT$METRIC_DETAILS ...
Dropping synonym : MGMT$METRIC_DAILY ...
Dropping synonym : MGMT$METRIC_CURRENT ...
Dropping synonym : MGMT$METRIC_COLLECTION ...
Dropping synonym : MGMT$METRIC_CATEGORIES ...
Dropping synonym : MGMT$MESSAGES ...
Dropping synonym : MGMT$JOB_TARGETS ...
Dropping synonym : MGMT$JOB_STEP_HISTORY ...
Dropping synonym : MGMT$JOB_NOTIFICATION_LOG ...
Dropping synonym : MGMT$JOB_EXECUTION_HISTORY ...
Dropping synonym : MGMT$JOB_ANNOTATIONS ...
Dropping synonym : MGMT$JOBS ...
Dropping synonym : MGMT$INTERFACE_STATS ...
Dropping synonym : MGMT$HW_NIC ...
Dropping synonym : MGMT$HOSTPATCH_HOST_COMPL ...
Dropping synonym : MGMT$HOSTPATCH_HOSTS ...
Dropping synonym : MGMT$HOSTPATCH_GRP_COMPL_HIST ...
Dropping synonym : MGMT$HOSTPATCH_GROUPS ...
Dropping synonym : MGMT$HOMES_AFFECTED ...
Dropping synonym : MGMT$HA_RMAN_CONFIG_ALL ...
Dropping synonym : MGMT$HA_RMAN_CONFIG ...
Dropping synonym : MGMT$HA_MTTR ...
Dropping synonym : MGMT$HA_INIT_PARAMS_ALL ...
Dropping synonym : MGMT$HA_INIT_PARAMS ...
Dropping synonym : MGMT$HA_INFO_ALL ...
Dropping synonym : MGMT$HA_INFO ...
Dropping synonym : MGMT$HA_FILES_ALL ...
Dropping synonym : MGMT$HA_FILES ...
Dropping synonym : MGMT$HA_BACKUP ...
Dropping synonym : MGMT$GRP_METRICS_RAW ...
Dropping synonym : MGMT$GRP_METRICS_HOURLY ...
Dropping synonym : MGMT$GRP_METRICS_DAILY ...
Dropping synonym : MGMT$GROUP_MEMBERS ...
Dropping synonym : MGMT$GROUP_FLAT_MEMBERSHIPS ...
Dropping synonym : MGMT$GROUP_DERIVED_MEMBERSHIPS ...
Dropping synonym : MGMT$ESA_WITH_GRANT_REPORT ...
Dropping synonym : MGMT$ESA_WITH_ADMIN_REPORT ...
Dropping synonym : MGMT$ESA_TRC_AUD_PERM_REP_NT ...
Dropping synonym : MGMT$ESA_TRC_AUD_PERM_REPORT ...
Dropping synonym : MGMT$ESA_TABSP_OWNERS_REPORT ...
Dropping synonym : MGMT$ESA_SYS_PUB_PKG_REPORT ...
Dropping synonym : MGMT$ESA_PUB_PRIV_REPORT ...
Dropping synonym : MGMT$ESA_POWER_PRIV_REPORT ...
Dropping synonym : MGMT$ESA_OH_PERMISSION_REPORT ...
Dropping synonym : MGMT$ESA_OH_OWNERSHIP_REPORT ...
Dropping synonym : MGMT$ESA_KEY_OBJECTS_REPORT ...
Dropping synonym : MGMT$ESA_EXMPT_ACCESS_REPORT ...
Dropping synonym : MGMT$ESA_DIRECT_PRIV_REPORT ...
Dropping synonym : MGMT$ESA_DBA_ROLE_REPORT ...
Dropping synonym : MGMT$ESA_DBA_GROUP_REPORT ...
Dropping synonym : MGMT$ESA_CREATE_PRIV_REPORT ...
Dropping synonym : MGMT$ESA_CONN_PRIV_REPORT ...
Dropping synonym : MGMT$ESA_CATALOG_REPORT ...
Dropping synonym : MGMT$ESA_BECOME_USER_REPORT ...
Dropping synonym : MGMT$ESA_AUDIT_SYSTEM_REPORT ...
Dropping synonym : MGMT$ESA_ANY_PRIV_REPORT ...
Dropping synonym : MGMT$ESA_ANY_DICT_REPORT ...
Dropping synonym : MGMT$ESA_ALL_PRIVS_REPORT ...
Dropping synonym : MGMT$EM_HOMES_PLATFORM ...
Dropping synonym : MGMT$ECM_VISIBLE_SNAPSHOTS ...
Dropping synonym : MGMT$ECM_CURRENT_SNAPSHOTS ...
Dropping synonym : MGMT$ECM_CONFIG_HISTORY_KEY6 ...
Dropping synonym : MGMT$ECM_CONFIG_HISTORY_KEY5 ...
Dropping synonym : MGMT$ECM_CONFIG_HISTORY_KEY4 ...
Dropping synonym : MGMT$ECM_CONFIG_HISTORY_KEY3 ...
Dropping synonym : MGMT$ECM_CONFIG_HISTORY_KEY2 ...
Dropping synonym : MGMT$ECM_CONFIG_HISTORY_KEY1 ...
Dropping synonym : MGMT$ECM_CONFIG_HISTORY ...
Dropping synonym : MGMT$E2E_RAW ...
Dropping synonym : MGMT$E2E_HOURLY ...
Dropping synonym : MGMT$E2E_1DAY ...
Dropping synonym : MGMT$DELTA_VIEW_DETAILS ...
Dropping synonym : MGMT$DELTA_VIEW ...
Dropping synonym : MGMT$DELTA_VENDOR_SW ...
Dropping synonym : MGMT$DELTA_PATCHSET_DETAILS ...
Dropping synonym : MGMT$DELTA_PATCHSETS ...
Dropping synonym : MGMT$DELTA_OS_KERNEL_PARAMS ...
Dropping synonym : MGMT$DELTA_OS_COMP_DETAILS ...
Dropping synonym : MGMT$DELTA_OS_COMPONENTS ...
Dropping synonym : MGMT$DELTA_ORACLE_HOME ...
Dropping synonym : MGMT$DELTA_ONEOFF_PATCHES ...
Dropping synonym : MGMT$DELTA_INIT ...
Dropping synonym : MGMT$DELTA_HOST_CONFIG ...
Dropping synonym : MGMT$DELTA_HARDWARE ...
Dropping synonym : MGMT$DELTA_FS_MOUNT ...
Dropping synonym : MGMT$DELTA_COMPONENT_DETAILS ...
Dropping synonym : MGMT$DELTA_COMPONENTS ...
Dropping synonym : MGMT$DB_TABLESPACES_ALL ...
Dropping synonym : MGMT$DB_TABLESPACES ...
Dropping synonym : MGMT$DB_SGA_ALL ...
Dropping synonym : MGMT$DB_SGA ...
Dropping synonym : MGMT$DB_ROLLBACK_SEGS_ALL ...
Dropping synonym : MGMT$DB_ROLLBACK_SEGS ...
Dropping synonym : MGMT$DB_REDOLOGS_ALL ...
Dropping synonym : MGMT$DB_REDOLOGS ...
Dropping synonym : MGMT$DB_OPTIONS_ALL ...
Dropping synonym : MGMT$DB_OPTIONS ...
Dropping synonym : MGMT$DB_LICENSE_ALL ...
Dropping synonym : MGMT$DB_LICENSE ...
Dropping synonym : MGMT$DB_INIT_PARAMS_ALL ...
Dropping synonym : MGMT$DB_INIT_PARAMS ...
Dropping synonym : MGMT$DB_FEATUREUSAGE ...
Dropping synonym : MGMT$DB_DBNINSTANCEINFO_ALL ...
Dropping synonym : MGMT$DB_DBNINSTANCEINFO ...
Dropping synonym : MGMT$DB_DATAFILES_ALL ...
Dropping synonym : MGMT$DB_DATAFILES ...
Dropping synonym : MGMT$DB_CONTROLFILES_ALL ...
Dropping synonym : MGMT$DB_CONTROLFILES ...
Dropping synonym : MGMT$CS_EVAL_SUMMARY_STANDARD ...
Dropping synonym : MGMT$CS_EVAL_SUMMARY_RULE ...
Dropping synonym : MGMT$CS_CONFIG_STANDARDS ...
Dropping synonym : MGMT$CSM_WATCHLIST ...
Dropping synonym : MGMT$CSM_URL_HOURLY ...
Dropping synonym : MGMT$CSM_URL_DIST_HOURLY ...
Dropping synonym : MGMT$CSM_URL_DIST_DAILY ...
Dropping synonym : MGMT$CSM_URL_DAILY ...
Dropping synonym : MGMT$CSM_SUBNET_HOURLY ...
Dropping synonym : MGMT$CSM_SUBNET_DIST_HOURLY ...
Dropping synonym : MGMT$CSM_SUBNET_DIST_DAILY ...
Dropping synonym : MGMT$CSM_SUBNET_DAILY ...
Dropping synonym : MGMT$CSM_REGION_HOURLY ...
Dropping synonym : MGMT$CSM_REGION_DIST_HOURLY ...
Dropping synonym : MGMT$CSM_REGION_DIST_DAILY ...
Dropping synonym : MGMT$CSM_REGION_DAILY ...
Dropping synonym : MGMT$CSM_REGION ...
Dropping synonym : MGMT$CSM_MT_URL_HOURLY ...
Dropping synonym : MGMT$CSM_MT_URL_DIST_HOURLY ...
Dropping synonym : MGMT$CSM_MT_URL_DIST_DAILY ...
Dropping synonym : MGMT$CSM_MT_URL_DAILY ...
Dropping synonym : MGMT$CSM_MT_METRIC_DETAILS ...
Dropping synonym : MGMT$CSM_MT_IP_HOURLY ...
Dropping synonym : MGMT$CSM_MT_IP_DIST_HOURLY ...
Dropping synonym : MGMT$CSM_MT_IP_DIST_DAILY ...
Dropping synonym : MGMT$CSM_MT_IP_DAILY ...
Dropping synonym : MGMT$CSM_MT_DSR_HOURLY ...
Dropping synonym : MGMT$CSM_MT_DSR_DIST_HOURLY ...
Dropping synonym : MGMT$CSM_MT_DSR_DIST_DAILY ...
Dropping synonym : MGMT$CSM_MT_DSR_DAILY ...
Dropping synonym : MGMT$CSM_METRIC_DETAILS ...
Dropping synonym : MGMT$CSM_IP_HOURLY ...
Dropping synonym : MGMT$CSM_IP_DIST_HOURLY ...
Dropping synonym : MGMT$CSM_IP_DIST_DAILY ...
Dropping synonym : MGMT$CSM_IP_DAILY ...
Dropping synonym : MGMT$CSM_DOMAIN_HOURLY ...
Dropping synonym : MGMT$CSM_DOMAIN_DIST_HOURLY ...
Dropping synonym : MGMT$CSM_DOMAIN_DIST_DAILY ...
Dropping synonym : MGMT$CSM_DOMAIN_DAILY ...
Dropping synonym : MGMT$CSA_HOST_SW ...
Dropping synonym : MGMT$CSA_HOST_RULES ...
Dropping synonym : MGMT$CSA_HOST_OS_PROPERTIES ...
Dropping synonym : MGMT$CSA_HOST_OS_FILESYSTEMS ...
Dropping synonym : MGMT$CSA_HOST_OS_COMPONENTS ...
Dropping synonym : MGMT$CSA_HOST_NICS ...
Dropping synonym : MGMT$CSA_HOST_IOCARDS ...
Dropping synonym : MGMT$CSA_HOST_CUSTOM ...
Dropping synonym : MGMT$CSA_HOST_CPUS ...
Dropping synonym : MGMT$CSA_HOST_COOKIES ...
Dropping synonym : MGMT$CSA_FAILED ...
Dropping synonym : MGMT$CSA_COLLECTIONS ...
Dropping synonym : MGMT$CSA_CLIENT_RULE_VIOLS ...
Dropping synonym : MGMT$CSA_CLIENTS ...
Dropping synonym : MGMT$CPF_PATCH_INFO ...
Dropping synonym : MGMT$CPF_PATCH_DATA ...
Dropping synonym : MGMT$CPF_HOMES_INFO ...
Dropping synonym : MGMT$CPF_ADVISORY_INFO ...
Dropping synonym : MGMT$CLUSTER_INTERCONNECTS ...
Dropping synonym : MGMT$BLACKOUT_HISTORY ...
Dropping synonym : MGMT$BLACKOUTS ...
Dropping synonym : MGMT$AVAILABILITY_HISTORY ...
Dropping synonym : MGMT$AVAILABILITY_CURRENT ...
Dropping synonym : MGMT$AUDIT_LOG ...
Dropping synonym : MGMT$APPL_PATCH_AND_PATCHSET ...
Dropping synonym : MGMT$APPLIED_PATCHSETS ...
Dropping synonym : MGMT$APPLIED_PATCHES ...
Dropping synonym : MGMT$ALERT_NOTIF_LOG ...
Dropping synonym : MGMT$ALERT_HISTORY ...
Dropping synonym : MGMT$ALERT_CURRENT ...
Dropping synonym : MGMT$ALERT_ANNOTATIONS ...
Dropping synonym : EMD_MNTR ...
Dropping synonym : ECM_UTIL ...
Finished phase 5
Starting phase 6 : Dropping Oracle Enterprise Manager related other roles ...
Process DBSNMP user
Done processing DBSNMP user
Finished phase 6
The Oracle Enterprise Manager related schemas and objects are dropped.
Do the manual steps to studown the DB Control if not done before running this
script and then delete the DB Control configuration files

PL/SQL procedure successfully completed.

SQL> select COMP_NAME, STATUS, VERSION from DBA_REGISTRY where COMP_ID='EM';

no rows selected


D) OLAP Catalog 제거

OLAP Catalog 삭제 스크립트 수행 및 dba_recyclebin 정리
@?/olap/admin/catnoamd.sql
purge dba_recyclebin;
SQL> col COMP_NAME form a30
SQL> col STATUS form a10
SQL> col VERSION form a15
SQL> select COMP_NAME, STATUS, VERSION from DBA_REGISTRY where COMP_ID='AMD';

COMP_NAME                      STATUS     VERSION
------------------------------ ---------- ---------------
OLAP Catalog                   VALID      11.2.0.4.0

SQL> SET ECHO ON;
SQL> SET SERVEROUTPUT ON;
SQL> @?/olap/admin/catnoamd.sql
SQL> Rem
SQL> Rem $Header: cwmlite/admin/catnoamd.sql /st_rdbms_11.2.0/3 2013/04/11 13:07:21 awesley Exp $
SQL> Rem
SQL> Rem catnoamd.sql
SQL> Rem
SQL> Rem Copyright (c) 2000, 2013, Oracle and/or its affiliates.
SQL> Rem All rights reserved.
SQL> Rem
SQL> Rem    NAME
SQL> Rem         catnoamd.sql
SQL> Rem
SQL> Rem    DESCRIPTION
SQL> Rem         Permenantly remove metadata by deleting 'OLAPSYS' schema.
SQL> Rem
SQL> Rem    NOTES
SQL> Rem         Must be run as 'SYS'. Does not remove OLAP_DBA_TABLES tablespace.
SQL> Rem
SQL> Rem    MODIFIED   (MM/DD/YY)
SQL> Rem    awesley     04/09/13 - lrg 8899446 remove awm from dba_registry
SQL> Rem    awesley     03/07/13 - lrg 8899446 drop all olapsys objects excep xml_load... objects
SQL> Rem    awesley     02/20/13 - bug 16362503 do not drop olapsys user
SQL> Rem    awesley     03/10/09 - add missing drops
SQL> Rem                         - add second '@' to factvdrp.sql, dimvwdrp.sql, olapodrp.sql
SQL> Rem    cdalessi    10/21/02 - cdalessi_txn104879
SQL> Rem    mrangwal    02/15/02 - Add olapodrp call
SQL> Rem    cdalessi    01/18/02 -
> Rem    cdalessi    01/14/02 -
> Rem    awesley     11/06/01 - Add cwm2 api
SQL> Rem    dthompso    07/24/00 - add connection.
SQL> Rem    dthompso    06/01/00 - Add new public synonyms for osa.
SQL> Rem    dthompso    04/27/00 - Initial Version
SQL> Rem    dthompso    01/00/00 - Created
SQL> Rem
SQL>
SQL> rem
SQL> rem drop cwm2
SQL> rem
SQL> @@cwm2drop
SQL> Rem
SQL> Rem $Header: cwm2drop.sql 18-nov-2003.13:10:14 awesley Exp $
SQL> Rem
SQL> Rem onedrop.sql
SQL> Rem
SQL> Rem Copyright (c) 2001, 2003, Oracle Corporation.  All rights reserved.
SQL> Rem
SQL> Rem    NAME
SQL> Rem         cwm2drop.sql
SQL> Rem
SQL> Rem    DESCRIPTION
SQL> Rem         Permenantly remove metadata by deleting 'OLAPSYS' schema.
SQL> Rem
SQL> Rem    NOTES
SQL> Rem         Must be run as 'SYS'. Does not remove OLAP_DBA_TABLES tablespace.
SQL> Rem
SQL> Rem    MODIFIED   (MM/DD/YY)
SQL> Rem          awesley       11/18/03 - add verify_access ,export ,delete
SQL> Rem          dbardwel 09/23/03 -
> Rem    Aziz.Mboya  09/02/03 - amboya_txn108623. Code cleanup for package name change from cwm2_olap_aw_access to dbms_aw_utilities.
SQL> Rem    dbardwel    03/14/02 - Got rid of CONNECT / AS SYSDBA
SQL> Rem    Aziz.Mboya  01/29/02 - changed package name from cwm2_olap_awconvert to cwm2_olap_aw_access
SQL> Rem    dbardwel    01/24/02 - Add DBA$ and ALL$ 9i2 union view synonym drops
SQL> Rem    cdalessi    01/14/02 - Add missing entries.
SQL> Rem    awesley     11/08/01 - awesley_txn100648
SQL> Rem    awesley     11/06/01 - create
SQL> REM        mstasiew         01/31/02  mstasiew_txn101768
SQL> Rem    dbardwel    02/02/02 - Removed cwm_olap_map from this script
SQL> Rem
SQL>
SQL> rem
SQL> rem cwm2 API Package Synonyms
SQL> rem
SQL>
SQL> drop public synonym cwm2_olap_exceptions
  2  /

Synonym dropped.

SQL> drop public synonym cwm2_olap_manager
  2  /

Synonym dropped.

SQL> drop public synonym cwm2_olap_utility
  2  /

Synonym dropped.

SQL> drop public synonym cwm2_olap_catalog
  2  /

Synonym dropped.

SQL> drop public synonym cwm2_olap_cube
  2  /

Synonym dropped.

SQL> drop public synonym cwm2_olap_dimension
  2  /

Synonym dropped.

SQL> drop public synonym cwm2_olap_dimension_attribute
  2  /

Synonym dropped.

SQL> drop public synonym cwm2_olap_hierarchy
  2  /

Synonym dropped.

SQL> drop public synonym cwm2_olap_level
  2  /

Synonym dropped.

SQL> drop public synonym cwm2_olap_level_attribute
  2  /

Synonym dropped.

SQL> drop public synonym cwm2_olap_measure
  2  /

Synonym dropped.

SQL> drop public synonym cwm2_olap_validate
  2  /

Synonym dropped.

SQL> drop public synonym cwm2_olap_verify_access
  2  /

Synonym dropped.

SQL> drop public synonym cwm2_olap_export
  2  /

Synonym dropped.

SQL> drop public synonym cwm2_olap_delete
  2  /

Synonym dropped.

SQL> drop public synonym cwm2_olap_table_map
  2  /

Synonym dropped.

SQL> drop public synonym cwm2_olap_pc_transform
  2  /

Synonym dropped.

SQL> drop public synonym cwm2_security
  2  /

Synonym dropped.

SQL> drop public synonym dbms_aw_utilities
  2  /

Synonym dropped.

SQL> drop public synonym all_olapmr_dimensions
  2  /

Synonym dropped.

SQL> drop public synonym all_olapmr_dim_attributes
  2  /

Synonym dropped.

SQL> drop public synonym all_olapmr_attributes
  2  /

Synonym dropped.

SQL> drop public synonym all_olapmr_dim_levels
  2  /

Synonym dropped.

SQL> drop public synonym cwm2_olap_classify
  2  /

Synonym dropped.

SQL>
SQL> rem
SQL> rem DBA_OLAP view synonyms
SQL> rem
SQL>
SQL> drop public synonym dba_olap2_cubes
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap2_cube_measures
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap2_cube_dim_uses
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap2_cube_meas_dim_uses
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap2_dimensions
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap2_dim_hierarchies
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap2_dim_levels
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap2_dim_hier_level_uses
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap2_dim_attributes
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap2_dim_attr_uses
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap2_dim_level_attributes
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap2_cube_measure_maps
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap2_fact_level_uses
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap2_level_key_col_uses
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap2_join_key_column_uses
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap2_dim_level_attr_maps
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap2_catalogs
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap2_entity_desc_uses
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap2_catalog_entity_uses
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap2_fact_table_gid
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap2_hier_custom_sort
  2  /

Synonym dropped.

SQL> drop public synonym dba_olapmr_facttblkeymaps
  2  /

Synonym dropped.

SQL> drop public synonym dba_olapmr_facttblfctmaps
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap2_listdims
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap2_dim_hiers
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap2_hierdims
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap2_FactTblKeyMaps
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap2_rufcttblkyMaps
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap2_FactTblFctMaps
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap2_hierdim_keycol_map
  2  /

Synonym dropped.

SQL> drop public synonym dba_olapmr_dim_levels_keymaps
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap2_dim_levels_keymaps
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap2_mr_measdimview
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap9i1_hier_dimensions
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap9i2_hier_dimensions
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap1_cubes
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap2_entity_parameters
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap2_entity_ext_parms
  2  /

Synonym dropped.

SQL>
SQL> rem
SQL> rem ALL_OLAP view synonyms
SQL> rem
SQL>
SQL> drop public synonym all_olap2_cubes
  2  /

Synonym dropped.

SQL> drop public synonym all_olap2_cube_measures
  2  /

Synonym dropped.

SQL> drop public synonym all_olap2_cube_dim_uses
  2  /

Synonym dropped.

SQL> drop public synonym all_olap2_cube_meas_dim_uses
  2  /

Synonym dropped.

SQL> drop public synonym all_olap2_dimensions
  2  /

Synonym dropped.

SQL> drop public synonym all_olap2_dim_hierarchies
  2  /

Synonym dropped.

SQL> drop public synonym all_olap2_dim_levels
  2  /

Synonym dropped.

SQL> drop public synonym all_olap2_dim_hier_level_uses
  2  /

Synonym dropped.

SQL> drop public synonym all_olap2_dim_attributes
  2  /

Synonym dropped.

SQL> drop public synonym all_olap2_dim_attr_uses
  2  /

Synonym dropped.

SQL> drop public synonym all_olap2_dim_level_attributes
  2  /

Synonym dropped.

SQL> drop public synonym all_olap2_cube_measure_maps
  2  /

Synonym dropped.

SQL> drop public synonym all_olap2_fact_level_uses
  2  /

Synonym dropped.

SQL> drop public synonym all_olap2_level_key_col_uses
  2  /

Synonym dropped.

SQL> drop public synonym all_olap2_join_key_column_uses
  2  /

Synonym dropped.

SQL> drop public synonym all_olap2_dim_level_attr_maps
  2  /

Synonym dropped.

SQL> drop public synonym all_olap2_catalogs
  2  /

Synonym dropped.

SQL> drop public synonym all_olap2_entity_desc_uses
  2  /

Synonym dropped.

SQL> drop public synonym all_olap2_catalog_entity_uses
  2  /

Synonym dropped.

SQL> drop public synonym all_olap2_fact_table_gid
  2  /

Synonym dropped.

SQL> drop public synonym all_olap2_hier_custom_sort
  2  /

Synonym dropped.

SQL> drop public synonym all_olapmr_facttblkeymaps
  2  /

Synonym dropped.

SQL> drop public synonym all_olapmr_facttblfctmaps
  2  /

Synonym dropped.

SQL> drop public synonym all_olap2_listdims
  2  /

Synonym dropped.

SQL> drop public synonym all_olap2_dim_hiers
  2  /

Synonym dropped.

SQL> drop public synonym all_olap2_hierdims
  2  /

Synonym dropped.

SQL> drop public synonym all_olap2_FactTblKeyMaps
  2  /

Synonym dropped.

SQL> drop public synonym all_olap2_rufcttblkyMaps
  2  /

Synonym dropped.

SQL> drop public synonym all_olap2_FactTblFctMaps
  2  /

Synonym dropped.

SQL> drop public synonym all_olap2_hierdim_keycol_map
  2  /

Synonym dropped.

SQL> drop public synonym all_olapmr_dim_levels_keymaps
  2  /

Synonym dropped.

SQL> drop public synonym all_olap2_dim_levels_keymaps
  2  /

Synonym dropped.

SQL> drop public synonym all_olap2_mr_measdimview
  2  /

Synonym dropped.

SQL> drop public synonym all_olap9i1_hier_dimensions
  2  /

Synonym dropped.

SQL> drop public synonym all_olap9i2_hier_dimensions
  2  /

Synonym dropped.

SQL> drop public synonym all_olap1_cubes
  2  /

Synonym dropped.

SQL> drop public synonym all_olap2_entity_parameters
  2  /

Synonym dropped.

SQL> drop public synonym all_olap2_entity_ext_parms
  2  /

Synonym dropped.

SQL>
SQL>
SQL> rem
SQL> rem API Package Synonyms
SQL> rem
SQL> drop public synonym cwm_classify
  2  /

Synonym dropped.

SQL> drop public synonym cwm_exceptions
  2  /

Synonym dropped.

SQL> drop public synonym cwm_olap_cube
  2  /

Synonym dropped.

SQL> drop public synonym cwm_olap_measure
  2  /

Synonym dropped.

SQL> drop public synonym cwm_olap_dim_attribute
  2  /

Synonym dropped.

SQL> drop public synonym cwm_olap_dimension
  2  /

Synonym dropped.

SQL> drop public synonym cwm_olap_hierarchy
  2  /

Synonym dropped.

SQL> drop public synonym cwm_olap_level
  2  /

Synonym dropped.

SQL> drop public synonym cwm_olap_level_attribute
  2  /

Synonym dropped.

SQL> drop public synonym cwm_utility
  2  /

Synonym dropped.

SQL>
SQL> rem
SQL> rem DBA_OLAP view synonyms
SQL> rem
SQL> drop public synonym dba_olap_catalog_entity_uses
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap_catalogs
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap_columns
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap_cube_dim_uses
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap_cube_measure_dim_uses
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap_cube_measure_maps
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap_cube_measures
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap_cubes
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap_descriptor_types
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap_descriptors
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap_dim_attr_uses
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap_dim_attributes
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap_dim_hier_level_uses
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap_dim_hierarchies
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap_dim_level_attr_maps
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap_dim_level_attributes
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap_dim_levels
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap_dimensions
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap_entity_desc_uses
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap_fact_level_uses
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap_foreign_keys
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap_function_arguments
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap_function_parameters
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap_function_usages
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap_functions
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap_join_key_column_uses
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap_key_column_uses
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap_keys
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap_level_key_column_uses
  2  /

Synonym dropped.

SQL> drop public synonym dba_olap_tables
  2  /

Synonym dropped.

SQL>
SQL> rem
SQL> rem ALL_OLAP view synonyms
SQL> rem
SQL> drop public synonym all_olap_catalog_entity_uses
  2  /

Synonym dropped.

SQL> drop public synonym all_olap_catalogs
  2  /

Synonym dropped.

SQL> drop public synonym all_olap_columns
  2  /

Synonym dropped.

SQL> drop public synonym all_olap_cube_dim_uses
  2  /

Synonym dropped.

SQL> drop public synonym all_olap_cube_measure_dim_uses
  2  /

Synonym dropped.

SQL> drop public synonym all_olap_cube_measure_maps
  2  /

Synonym dropped.

SQL> drop public synonym all_olap_cube_measures
  2  /

Synonym dropped.

SQL> drop public synonym all_olap_cubes
  2  /

Synonym dropped.

SQL> drop public synonym all_olap_descriptor_types
  2  /

Synonym dropped.

SQL> drop public synonym all_olap_descriptors
  2  /

Synonym dropped.

SQL> drop public synonym all_olap_dim_attr_uses
  2  /

Synonym dropped.

SQL> drop public synonym all_olap_dim_attributes
  2  /

Synonym dropped.

SQL> drop public synonym all_olap_dim_hier_level_uses
  2  /

Synonym dropped.

SQL> drop public synonym all_olap_dim_hierarchies
  2  /

Synonym dropped.

SQL> drop public synonym all_olap_dim_level_attr_maps
  2  /

Synonym dropped.

SQL> drop public synonym all_olap_dim_level_attributes
  2  /

Synonym dropped.

SQL> drop public synonym all_olap_dim_levels
  2  /

Synonym dropped.

SQL> drop public synonym all_olap_dimensions
  2  /

Synonym dropped.

SQL> drop public synonym all_olap_entity_desc_uses
  2  /

Synonym dropped.

SQL> drop public synonym all_olap_fact_level_uses
  2  /

Synonym dropped.

SQL> drop public synonym all_olap_foreign_keys
  2  /

Synonym dropped.

SQL> drop public synonym all_olap_function_arguments
  2  /

Synonym dropped.

SQL> drop public synonym all_olap_function_parameters
  2  /

Synonym dropped.

SQL> drop public synonym all_olap_function_usages
  2  /

Synonym dropped.

SQL> drop public synonym all_olap_functions
  2  /

Synonym dropped.

SQL> drop public synonym all_olap_join_key_column_uses
  2  /

Synonym dropped.

SQL> drop public synonym all_olap_key_column_uses
  2  /

Synonym dropped.

SQL> drop public synonym all_olap_keys
  2  /

Synonym dropped.

SQL> drop public synonym all_olap_level_key_column_uses
  2  /

Synonym dropped.

SQL> drop public synonym all_olap_tables
  2  /

Synonym dropped.

SQL>
SQL>
SQL> drop package SYS.CWM2_OLAP_INSTALLER
  2  /

Package dropped.

SQL>
SQL> drop public synonym ALL_AW_CUBE_AGG_LEVELS
  2  /

Synonym dropped.

SQL> drop public synonym ALL_AW_CUBE_AGG_MEASURES
  2  /

Synonym dropped.

SQL> drop public synonym ALL_AW_CUBE_AGG_PLANS
  2  /

Synonym dropped.

SQL> drop public synonym ALL_AW_CUBE_ENABLED_HIERCOMBO
  2  /

Synonym dropped.

SQL> drop public synonym ALL_AW_CUBE_ENABLED_VIEWS
  2  /

Synonym dropped.

SQL> drop public synonym ALL_AW_DIM_ENABLED_VIEWS
  2  /

Synonym dropped.

SQL> drop public synonym ALL_AW_LOAD_CUBES
  2  /

Synonym dropped.

SQL> drop public synonym ALL_AW_LOAD_CUBE_DIMS
  2  /

Synonym dropped.

SQL> drop public synonym ALL_AW_LOAD_CUBE_FILTERS
  2  /

Synonym dropped.

SQL> drop public synonym ALL_AW_LOAD_CUBE_MEASURES
  2  /

Synonym dropped.

SQL> drop public synonym ALL_AW_LOAD_CUBE_PARMS
  2  /

Synonym dropped.

SQL> drop public synonym ALL_AW_LOAD_DIMENSIONS
  2  /

Synonym dropped.

SQL> drop public synonym ALL_AW_LOAD_DIM_FILTERS
  2  /

Synonym dropped.

SQL> drop public synonym ALL_AW_LOAD_DIM_PARMS
  2  /

Synonym dropped.

SQL> drop public synonym ALL_LOAD_CUBE_SEGWIDTH
  2  /

Synonym dropped.

SQL> drop public synonym ALL_OLAP2_AGGREGATION_USES
  2  /

Synonym dropped.

SQL> drop public synonym ALL_OLAP2_AWVIEWCOLS
  2  /

Synonym dropped.

SQL> drop public synonym ALL_OLAP2_AWVIEWS
  2  /

Synonym dropped.

SQL> drop public synonym ALL_OLAP2_AW_ATTRIBUTES
  2  /

Synonym dropped.

SQL> drop public synonym ALL_OLAP2_AW_CATALOGS
  2  /

Synonym dropped.

SQL> drop public synonym ALL_OLAP2_AW_CATALOG_MEASURES
  2  /

Synonym dropped.

SQL> drop public synonym ALL_OLAP2_AW_CUBES
  2  /

Synonym dropped.

SQL> drop public synonym ALL_OLAP2_AW_CUBE_AGG_LVL
  2  /

Synonym dropped.

SQL> drop public synonym ALL_OLAP2_AW_CUBE_AGG_MEAS
  2  /

Synonym dropped.

SQL> drop public synonym ALL_OLAP2_AW_CUBE_AGG_OP
  2  /

Synonym dropped.

SQL> drop public synonym ALL_OLAP2_AW_CUBE_AGG_SPECS
  2  /

Synonym dropped.

SQL> drop public synonym ALL_OLAP2_AW_CUBE_DIM_USES
  2  /

Synonym dropped.

SQL> drop public synonym ALL_OLAP2_AW_CUBE_MEASURES
  2  /

Synonym dropped.

SQL> drop public synonym ALL_OLAP2_AW_DIMENSIONS
  2  /

Synonym dropped.

SQL> drop public synonym ALL_OLAP2_AW_DIM_HIER_LVL_ORD
  2  /

Synonym dropped.

SQL> drop public synonym ALL_OLAP2_AW_DIM_LEVELS
  2  /

Synonym dropped.

SQL> drop public synonym ALL_OLAP2_AW_PHYS_OBJ
  2  /

Synonym dropped.

SQL> drop public synonym ALL_OLAP2_AW_PHYS_OBJ_PROP
  2  /

Synonym dropped.

SQL> drop public synonym ALL_OLAP2_MV_CUBE_AGG_LEVELS
  2  /

Synonym dropped.

SQL> drop public synonym ALL_OLAP2_MV_CUBE_AGG_MEASURES
  2  /

Synonym dropped.

SQL> drop public synonym CWM2_OLAP_AW_AWUTIL
  2  /

Synonym dropped.

SQL> drop public synonym CWM2_OLAP_METADATA_REFRESH
  2  /

Synonym dropped.

SQL> drop public synonym CWM2_OLAP_MR_CHECK_PRIVS
  2  /

Synonym dropped.

SQL> drop public synonym CWM2_OLAP_MR_SECURITY_INIT
  2  /

Synonym dropped.

SQL> drop public synonym CWM2_OLAP_MR_SESSION_POP
  2  /

Synonym dropped.

SQL> drop public synonym CWM2_OLAP_OLAPAPI_ENABLE
  2  /

Synonym dropped.

SQL> drop public synonym DBA_OLAP2_AGGREGATION_USES
  2  /

Synonym dropped.

SQL> drop public synonym DBA_OLAP2_AWVIEWCOLS
  2  /

Synonym dropped.

SQL> drop public synonym DBA_OLAP2_AWVIEWS
  2  /

Synonym dropped.

SQL> drop public synonym DBMS_AWM
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP1_FACTTBLFCTMAPS
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP1_FACTTBLKEYMAPS
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP1_POP_CUBES
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP1_POP_DIMENSIONS
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_AGGREGATION_USES
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_AWS
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_AWVIEWCOLS
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_AWVIEWS
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_AW_ATTRIBUTES
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_AW_CUBES
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_AW_CUBE_AGG_LVL
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_AW_CUBE_AGG_MEAS
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_AW_CUBE_AGG_OP
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_AW_CUBE_AGG_SPECS
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_AW_CUBE_DIM_USES
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_AW_CUBE_MEASURES
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_AW_DIMENSIONS
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_AW_DIM_HIER_LVL_ORD
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_AW_DIM_LEVELS
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_AW_MAP_ATTR_USE
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_AW_MAP_DIM_USE
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_AW_MAP_MEAS_USE
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_AW_PHYS_OBJ
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_AW_PHYS_OBJ_PROP
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_CATALOGS
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_CATALOG_ENTITY_USES
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_CUBE_MEASURES
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_DESCRIPTORS
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_DIM_ATTRIBUTES
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_DIM_HIERS
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_DIM_HIER_LEVEL_USES
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_DIM_LEVEL_ATTR_MAPS
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_ENTITY_DESC_USES
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_ENTITY_EXT_PARMS
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_ENTITY_PARAMETERS
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_FACTTBLFCTMAPS
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_FACTTBLKEYMAPS
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_HIERDIMS
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_HIERDIMS_CC
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_HIERDIM_KEYCOL_MAP
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_HIER_CUSTOM_SORT
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_JOIN_KEY_COL_USES
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_LISTDIMS
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_LISTDIMS_CC
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_POP_CUBES
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP2_POP_DIMENSIONS
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP_CWM1_AGGOP
  2  /

Synonym dropped.

SQL> drop public synonym MRV_OLAP_CWM1_AGGORD
  2  /

Synonym dropped.

SQL> drop public synonym OLAP_SYS_AW_ACCESS_CUBE_VIEW
  2  /

Synonym dropped.

SQL> drop public synonym OLAP_SYS_AW_ACCESS_DIM_VIEW
  2  /

Synonym dropped.

SQL> drop public synonym OLAP_SYS_AW_ENABLE_ACCESS_VIEW
  2  /

Synonym dropped.

SQL>
SQL>
SQL> @@factvdrp.sql
SQL> drop public synonym OlapFactView;

Synonym dropped.

SQL> @@dimvwdrp.sql
SQL> drop public synonym OlapDimView;

Synonym dropped.

SQL> @@olapodrp.sql
SQL> drop public synonym DBMS_ODM;

Synonym dropped.

SQL>
SQL> rem
SQL> rem drop olapsys user
SQL> rem
SQL> rem drop user olapsys cascade
SQL> rem /
SQL>
SQL> rem drop olapsys objects in the following order
SQL> rem drop nested aw objects defined in cwm2awao.sql
SQL> drop view olapsys.olap_sys_aw_access_dim_view
  2  /

View dropped.

SQL> drop view olapsys.olap_sys_aw_access_cube_view
  2  /

View dropped.

SQL> drop type olapsys.olap_sys_aw_access_tbl
  2  /

Type dropped.

SQL> drop type olapsys.olap_sys_aw_access_obj
  2  /

Type dropped.

SQL> drop view olapsys.olap_sys_aw_enable_access_view
  2  /

View dropped.

SQL> drop type olapsys.olap_sys_aw_enable_access_tbl
  2  /

Type dropped.

SQL> drop type olapsys.olap_sys_aw_enable_access_obj
  2  /

Type dropped.

SQL>
SQL> rem drop nested aw objects defined in cwm2awmd.sql
SQL> drop type olapsys.all_olap2_aw_metadata_t
  2  /

Type dropped.

SQL> drop type olapsys.all_olap2_aw_metadata_o
  2  /

Type dropped.

SQL>
SQL> declare
  2  begin
  3    -- drop tables and indexes user for referential integrity constraints
  4    for c_object in (select owner, object_name, object_type
  5                     from dba_objects
  6                     where owner = 'OLAPSYS'
  7                     and object_name not in ('XML_LOAD_RECORDS','XML_LOAD_LOG')
  8                     and object_type = 'TABLE'
  9                     order by object_type, owner, object_name
 10                     )
 11    loop
 12      -- dbms_output.put_line(
 13      --   'TABLE OLAPSYS'.' || c_object.object_name);
 14      execute immediate
 15        'drop TABLE OLAPSYS.' || c_object.object_name || ' cascade constraints';
 16    end loop;
 17
 18    -- drop remaining objects, TABLE and INDEX are dropped @dba_objects
 19    for c_object in (select owner, object_name, object_type
 20                     from dba_objects
 21                     where owner = 'OLAPSYS'
 22                     and object_name != 'XML_LOADID_SEQUENCE'
 23                     and object_Type not in ('TABLE', 'INDEX', 'PACKAGE BODY')
 24                     order by object_type, owner, object_name
 25                     )
 26    loop
 27      -- dbms_output.put_line(
 28      --   c_object.object_type || ' OLAPSYS'.' || c_object.object_name);
 29      execute immediate
 30        'drop ' || c_object.object_type || ' OLAPSYS.' || c_object.object_name;
 31    end loop;
 32  end;
 33  /

PL/SQL procedure successfully completed.

SQL>
SQL> rem
SQL> rem drop OLAP_DBA role
SQL> rem
SQL> drop role OLAP_DBA
  2  /

Role dropped.

SQL>
SQL> execute sys.dbms_registry.removed('AMD');

PL/SQL procedure successfully completed.

SQL>
SQL> -- No longer show up in dba_registry
SQL> delete from registry$ where cid='AMD' and status='99';

1 row deleted.

SQL> purge dba_recyclebin;

DBA Recyclebin purged.

SQL> select COMP_NAME, STATUS from DBA_REGISTRY where COMP_ID = 'AMD';

no rows selected


E) Oracle Application Express 삭제

APEX 삭제 스크립트 수행 및 invalid 객체 삭제
@?/apex/apxremov.sql
drop package htmldb_system;
drop public synonym htmldb_system;
SQL> col COMP_NAME form a30
SQL> col STATUS form a10
SQL> col VERSION form a15
SQL> select COMP_NAME, STATUS, VERSION from DBA_REGISTRY where COMP_ID='APEX';

COMP_NAME                      STATUS     VERSION
------------------------------ ---------- ---------------
Oracle Application Express     VALID      3.2.1.00.12

SQL> SET ECHO ON;
SQL> SET SERVEROUTPUT ON;
SQL> @?/apex/apxremov.sql
SQL> Rem  Copyright (c) Oracle Corporation 1999 - 2006. All Rights Reserved.
SQL> Rem
SQL> Rem    NAME
SQL> Rem         apxremov.sql
SQL> Rem
SQL> Rem    DESCRIPTION
SQL> Rem         Removes Application Express
SQL> Rem
SQL> Rem    NOTES
SQL> Rem         Assumes the SYS user is connected.
SQL> Rem
SQL> Rem    REQUIRENTS
SQL> Rem         Application Express
SQL> Rem
SQL> Rem
SQL> Rem    MODIFIED   (MM/DD/YYYY)
SQL> Rem         jstraub        08/14/2006 - Created
SQL> Rem         jkallman       09/29/2006 - Adjusted APPUN to FLOWS_030000, add FLOWS_020200 to upgrade query
SQL> Rem         jstraub        02/14/2007 - Added call to wwv_flow_upgrade.drop_public_synonyms, and dropping APEX_PUBLIC_USER if not upgraded
SQL> Rem         jkallman       08/02/2007 - Change FLOWS_030000 references to FLOWS_030100
SQL> Rem         jstraub        08/29/2007 - Altered to completely remove Application Express per bug 6086891
SQL> Rem         jstraub        11/27/2007 - Added removing APEX_ADMINISTRATOR_ROLE if not an upgrade installation
SQL> Rem         jkallman       09/09/2008 - Change FLOWS_030100 references to APEX_030200
SQL> Rem         jstraub        12/19/2008 - Added removal of SYS owned objects specific to Application Express
SQL> Rem         jstraub        01/21/2009 - Moved XDB cleanup to block that only executes if not an upgrade from prior release
SQL> Rem         jstraub        01/30/2009 - Added dropping WWV_FLOW_KEY and WWV_FLOW_VAL_LIB
SQL> Rem
SQL>
SQL> prompt ...Removing Application Express
...Removing Application Express
SQL>
SQL> define UPGRADE = '1'
SQL> define APPUN = 'APEX_030200'
SQL> define IMGPR = '/i/'
SQL>
SQL> alter session set current_schema = &APPUN;
old   1: alter session set current_schema = &APPUN
new   1: alter session set current_schema = APEX_030200

Session altered.

SQL>
SQL> begin
  2      wwv_flow_upgrade.drop_public_synonyms;
  3  end;
  4  /

PL/SQL procedure successfully completed.

SQL>
SQL> column foo2 new_val UPGRADE
SQL>
SQL> select '2' foo2 from dba_users where username in ('FLOWS_010500','FLOWS_010600','FLOWS_020000','FLOWS_020100','FLOWS_020200','FLOWS_030000','FLOWS_030100');

no rows selected

SQL>
SQL> begin
  2      if '&UPGRADE' = '1' then
  3          wwv_flow_upgrade.flows_files_objects_remove('^APPUN');
  4      end if;
  5  end;
  6  /
old   2:     if '&UPGRADE' = '1' then
new   2:     if '1' = '1' then

PL/SQL procedure successfully completed.

SQL>
SQL> alter session set current_schema = SYS;

Session altered.

SQL>
SQL> set serveroutput on
SQL> WHENEVER SQLERROR EXIT SQL.SQLCODE ROLLBACK
SQL> begin
  2      if dbms_registry.status('APEX') is null then
  3          dbms_output.put_line(chr(13)||chr(10));
  4          dbms_output.put_line('Error:');
  5          dbms_output.put_line('You can only use this script to remove Application Express');
  6          dbms_output.put_line(chr(13)||chr(10)||chr(13)||chr(10));
  7          execute immediate('invalid sql stmnt to force exit');
  8      end if;
  9  end;
 10  /

PL/SQL procedure successfully completed.

SQL> WHENEVER SQLERROR CONTINUE
SQL>
SQL> -- Remove FLOWS SCHEMA
SQL> drop user &APPUN cascade;
old   1: drop user &APPUN cascade
new   1: drop user APEX_030200 cascade

User dropped.

SQL>
SQL> -- Remove FLOWS_FILES and APEX_PUBLIC_USER SCHEMA if no other versions exist
SQL>
SQL> begin
  2      if '&UPGRADE' = '1' then
  3          execute immediate 'drop user FLOWS_FILES cascade';
  4          execute immediate 'drop user APEX_PUBLIC_USER cascade';
  5          execute immediate 'drop role APEX_ADMINISTRATOR_ROLE';
  6      end if;
  7  end;
  8  /
old   2:     if '&UPGRADE' = '1' then
new   2:     if '1' = '1' then

PL/SQL procedure successfully completed.

SQL>
SQL> -- XDB Cleanup
SQL> declare
  2      cfg XMLType;
  3  begin
  4
  5      if '&UPGRADE' = '1' then
  6
  7          if dbms_xdb.existsresource('/i/') then
  8            dbms_xdb.deleteresource('/i/',4);
  9          end if;
 10
 11          if dbms_xdb.existsresource('/images/') then
 12            dbms_xdb.deleteresource('/images/',4);
 13          end if;
 14
 15          dbms_epg.drop_dad('APEX');
 16
 17          cfg := dbms_xdb.cfg_get();
 18
 19          if cfg.existsNode('/xdbconfig/sysconfig/protocolconfig/httpconfig/webappconfig/servletconfig/servlet-mappings/servlet-mapping/servlet-name[text()="PublishedContentServlet"]') = 1 then
 20              cfg := cfg.deleteXML('/xdbconfig/sysconfig/protocolconfig/httpconfig/webappconfig/servletconfig/servlet-mappings/servlet-mapping/servlet-name[text()="PublishedContentServlet"]/..');
 21          end if;
 22
 23          if cfg.existsNode('/xdbconfig/sysconfig/protocolconfig/httpconfig/webappconfig/servletconfig/servlet-list/servlet/servlet-name[text()="PublishedContentServlet"]') = 1 then
 24              cfg := cfg.deleteXML('/xdbconfig/sysconfig/protocolconfig/httpconfig/webappconfig/servletconfig/servlet-list/servlet/servlet-name[text()="PublishedContentServlet"]/..');
 25          end if;
 26
 27          dbms_xdb.cfg_update(cfg);
 28          commit;
 29          dbms_xdb.cfg_refresh;
 30
 31      end if;
 32
 33  end;
 34  /
old   5:     if '&UPGRADE' = '1' then
new   5:     if '1' = '1' then

PL/SQL procedure successfully completed.

SQL>
SQL> -- Remove SYS owned objects
SQL>
SQL> begin
  2      if '&UPGRADE' = '1' then
  3          execute immediate 'drop procedure validate_apex';
  4          execute immediate 'drop package WWV_FLOW_VAL';
  5          execute immediate 'drop package WWV_DBMS_SQL';
  6          execute immediate 'drop package WWV_FLOW_KEY';
  7          execute immediate 'drop library WWV_FLOW_VAL_LIB';
  8      end if;
  9  end;
 10  /
old   2:     if '&UPGRADE' = '1' then
new   2:     if '1' = '1' then

PL/SQL procedure successfully completed.

SQL>
SQL> prompt ...Application Express Removed
...Application Express Removed

SQL> drop package htmldb_system;

Package dropped.

SQL> drop public synonym htmldb_system;

Synonym dropped.

SQL> select COMP_NAME, STATUS, VERSION from DBA_REGISTRY where COMP_ID='APEX';

no rows selected


F) 데이터 파일 크기 조정

SYSTEM, SYSAUX, TEMP 파일 크기 변경
alter database datafile '+DATA/racdb/datafile/<SYSTEM 데이터 파일명>' resize 2G;
alter database datafile '+DATA/racdb/datafile/<SYSTEM 데이터 파일명>' autoextend on maxsize 10G;
alter database datafile '+DATA/racdb/datafile/<SYSAUX 데이터 파일명>' resize 2G;
alter database datafile '+DATA/racdb/datafile/<SYSAUX 데이터 파일명>' autoextend on maxsize 10G;
alter database tempfile '+DATA/racdb/tempfile/<TEMP 파일명>' resize 500M;
alter database tempfile '+DATA/racdb/tempfile/<TEMP 파일명>' autoextend on maxsize 2G;
SQL> set lines 200
SQL> col FILE_NAME form a50
SQL> select FILE_NAME, BYTES/1024/1024 MB, AUTOEXTENSIBLE, MAXBYTES/1024/1024 MAX_MB from DBA_DATA_FILES where TABLESPACE_NAME = 'SYSTEM';

FILE_NAME                                                  MB AUTOEXTEN     MAX_MB
-------------------------------------------------- ---------- --------- ----------
+DATA/racdb/datafile/system.256.1037878345               1000 YES             2048

SQL> alter database datafile '+DATA/racdb/datafile/system.256.1037878345' resize 2G;

Database altered.

SQL> alter database datafile '+DATA/racdb/datafile/system.256.1037878345' autoextend on maxsize 10G;

Database altered.

SQL> select FILE_NAME, BYTES/1024/1024 MB, AUTOEXTENSIBLE, MAXBYTES/1024/1024 MAX_MB from DBA_DATA_FILES where TABLESPACE_NAME = 'SYSTEM';

FILE_NAME                                                  MB AUTOEXTEN     MAX_MB
-------------------------------------------------- ---------- --------- ----------
+DATA/racdb/datafile/system.256.1037878345               2048 YES            10240

SQL> select FILE_NAME, BYTES/1024/1024 MB, AUTOEXTENSIBLE, MAXBYTES/1024/1024 MAX_MB from DBA_DATA_FILES where TABLESPACE_NAME = 'SYSAUX';

FILE_NAME                                                  MB AUTOEXTEN     MAX_MB
-------------------------------------------------- ---------- --------- ----------
+DATA/racdb/datafile/sysaux.257.1037878355               1000 YES             2048

SQL> alter database datafile '+DATA/racdb/datafile/sysaux.257.1037878355' autoextend on maxsize 10G;

Database altered.

SQL> select FILE_NAME, BYTES/1024/1024 MB, AUTOEXTENSIBLE, MAXBYTES/1024/1024 MAX_MB from DBA_DATA_FILES where TABLESPACE_NAME = 'SYSAUX';

FILE_NAME                                                  MB AUTOEXTEN     MAX_MB
-------------------------------------------------- ---------- --------- ----------
+DATA/racdb/datafile/sysaux.257.1037878355               1000 YES            10240

SQL> select FILE_NAME, BYTES/1024/1024 MB, AUTOEXTENSIBLE, MAXBYTES/1024/1024 MAX_MB from DBA_TEMP_FILES;

FILE_NAME                                                  MB AUTOEXTEN     MAX_MB
-------------------------------------------------- ---------- --------- ----------
+DATA/racdb/tempfile/temp.265.1037878839                  100 YES             1024

SQL> alter database tempfile '+DATA/racdb/tempfile/temp.265.1037878839' resize 500M;

Database altered.

SQL> alter database tempfile '+DATA/racdb/tempfile/temp.265.1037878839' autoextend on maxsize 2G;

Database altered.

SQL> select FILE_NAME, BYTES/1024/1024 MB, AUTOEXTENSIBLE, MAXBYTES/1024/1024 MAX_MB from DBA_TEMP_FILES;

FILE_NAME                                                  MB AUTOEXTEN     MAX_MB
-------------------------------------------------- ---------- --------- ----------
+DATA/racdb/tempfile/temp.265.1037878839                  500 YES             2048

SQL> col TABLESPACE_NAME form a15

SQL> select TABLESPACE_NAME, FILE_NAME, BYTES/1024/1024 MB, AUTOEXTENSIBLE, MAXBYTES/1024/1024 MAX_MB from DBA_DATA_FILES;

TABLESPACE_NAME FILE_NAME                                                  MB AUTOEXTEN     MAX_MB
--------------- -------------------------------------------------- ---------- --------- ----------
SYSTEM          +DATA/racdb/datafile/system.256.1037878345               2048 YES            10240
SYSAUX          +DATA/racdb/datafile/sysaux.257.1037878355               1000 YES            10240
UNDOTBS1        +DATA/racdb/datafile/undotbs1.258.1037878363             1000 YES             2048
UNDOTBS2        +DATA/racdb/datafile/undotbs2.259.1037878371             1000 YES             2048
USERS           +DATA/racdb/datafile/users.260.1037878377                 500 NO                 0


G) Expression Filter & Rules Manager 삭제 (옵션)

Expression Filter & Rules Manager 삭제 스크립트 수행
@?/rdbms/admin/catnoexf.sql
SQL> col COMP_NAME form a30
SQL> col STATUS form a10
SQL> col VERSION form a15
SQL> select COMP_NAME, STATUS, VERSION from DBA_REGISTRY where COMP_ID in ('EXF','RUL');

COMP_NAME                      STATUS     VERSION
------------------------------ ---------- ---------------
Oracle Expression Filter       VALID      11.2.0.4.0
Oracle Rules Manager           VALID      11.2.0.4.0

SQL> SET ECHO ON;
SQL> SET SERVEROUTPUT ON;
SQL> @?/rdbms/admin/catnoexf.sql
SQL> Rem
SQL> Rem $Header: rdbms/admin/catnoexf.sql /st_rdbms_11.2.0/1 2013/02/12 13:38:21 sdas Exp $
SQL> Rem
SQL> Rem catnoexf.sql
SQL> Rem
SQL> Rem Copyright (c) 2002, 2013, Oracle and/or its affiliates.
SQL> Rem All rights reserved.
SQL> Rem
SQL> Rem    NAME
SQL> Rem         catnoexf.sql - <one-line expansion of the name>
SQL> Rem
SQL> Rem    DESCRIPTION
SQL> Rem         <short description of component this file declares/defines>
SQL> Rem
SQL> Rem    NOTES
SQL> Rem         <other useful comments, qualifications, etc.>
SQL> Rem
SQL> Rem    MODIFIED   (MM/DD/YY)
SQL> Rem    jerrede     01/02/13 - Add the Removal of Rules Manager
SQL> Rem    ayalaman    02/25/08 - cleanup public synonyms
SQL> Rem    ayalaman    04/19/04 - cleanup export dependeny actions
SQL> Rem    ayalaman    11/19/02 - registry entries
SQL> Rem    ayalaman    09/26/02 - ayalaman_expression_filter_support
SQL> Rem    ayalaman    09/06/02 -
> Rem    ayalaman    09/06/02 - Created
SQL> Rem
SQL>
SQL> REM
SQL> REM Drop Rules Manager if present.  Rules Manager must be
SQL> REM done first before we drop Expression Filter.
SQL> REM
SQL> COLUMN     :rul_name NEW_VALUE rul_file NOPRINT;
SQL> VARIABLE rul_name VARCHAR2(30)
SQL> BEGIN
  2
  3     IF (dbms_registry.is_loaded('RUL') IS NOT NULL) THEN
  4         :rul_name := '@catnorul.sql';                -- RUL exists in DB
  5     ELSE
  6         :rul_name := dbms_registry.nothing_script;   -- No RUL
  7     END IF;
  8
  9  END;
 10  /

PL/SQL procedure successfully completed.

SQL>
SQL> SELECT :rul_name FROM DUAL;




SQL> @&rul_file
SQL> Rem
SQL> Rem $Header: rdbms/admin/catnorul.sql /st_rdbms_11.2.0/2 2013/02/12 13:38:21 sdas Exp $
SQL> Rem
SQL> Rem catnorul.sql
SQL> Rem
SQL> Rem Copyright (c) 2004, 2013, Oracle and/or its affiliates.
SQL> Rem All rights reserved.
SQL> Rem
SQL> Rem    NAME
SQL> Rem         catnorul.sql - Uninstall script for Rule Manager
SQL> Rem
SQL> Rem    DESCRIPTION
SQL> Rem         This script un-installs the Rule Manager component
SQL> Rem
SQL> Rem    NOTES
SQL> Rem         See Documentation
SQL> Rem
SQL> Rem    MODIFIED   (MM/DD/YY)
SQL> Rem    sdas        01/21/13 - XbranchMerge sdas_bug-16038193 from
SQL> Rem                           st_rdbms_12.1.0.1
SQL> Rem    jerrede     01/14/13 - XbranchMerge jerrede_bug-16097914 from
SQL> Rem                           st_rdbms_12.1.0.1
SQL> Rem    sdas        01/11/13 - drop in catnoexf: type RLM$ROWIDTAB
SQL> Rem    dvoss       01/11/13 - disable database guard
SQL> Rem    jerrede     01/03/13 - Bug#16025279 Add Error Checking
SQL> Rem    ayalaman    05/14/07 - drop irrelev java classes
SQL> Rem    ayalaman    02/16/05 - drop the truncate system trigger with uninstall
SQL> Rem    ayalaman    07/16/04 - negation with delay dictionary table
SQL> Rem    ayalaman    06/29/04 - rules with negation and deadline
SQL> Rem    ayalaman    04/23/04 - ayalaman_rule_manager_support
SQL> Rem    ayalaman    04/02/04 - Created
SQL> Rem
SQL>
SQL>
SQL> REM
SQL> REM Drop the Rule Manager specific objects from the EXFSYS schema
SQL> REM
SQL> EXECUTE dbms_registry.removing('RUL');

PL/SQL procedure successfully completed.

SQL>
SQL> ALTER SESSION DISABLE GUARD;

Session altered.

SQL>
SQL> begin
  2    dbms_scheduler.drop_job(job_name => 'EXFSYS.RLM$EVTCLEANUP', force=> true);
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -27475 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> begin
  2    dbms_scheduler.drop_job(job_name => 'EXFSYS.RLM$SCHDNEGACTION', force=> true);EXCEPTION
  3    WHEN OTHERS THEN IF SQLCODE = -27475 THEN NULL; ELSE RAISE; END IF;
  4  END;
  5  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop package exfsys.dbms_rlmgr_dr';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -4043 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop package exfsys.dbms_rlmgr_ir';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -4043 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop package exfsys.dbms_rlmgr';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -4043 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop package exfsys.dbms_rlmgr_utl';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -4043 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop package exfsys.rlm$timecentral';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -4043 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop package exfsys.dbms_rlmgr_depasexp';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -4043 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop package exfsys.dbms_rlmgr_exp';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -4043 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop package exfsys.dbms_rlm4j_dictmaint';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -4043 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop package exfsys.dbms_rlmgr_irpk';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -4043 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop package exfsys.ADM_RLMGR_SYSTRIG';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -4043 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop package exfsys.DBMS_RLM4J_DICTMAINT_DR';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -4043 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop procedure exfsys.RLM$CREATE_SCHEDULER_JOBS';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -4043 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop procedure exfsys.RLM$PROCESSCOLLPREDS';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -4043 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop procedure exfsys.RLM$PROCCLLGRPBY';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -4043 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop function exfsys.RLM$UNIQUETAG';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -4043 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop function exfsys.RLM$PARSEOBYCLS';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -4043 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop function exfsys.RLM$OPTIMEQCLS';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -4043 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop function exfsys.RLM$EQLLSRNONEG';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -4043 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> --exec dbms_java.dropjava('-schema exfsys oracle.expfil.rlmgr.HavingExpParser.java');
SQL> --exec dbms_java.dropjava('-schema exfsys oracle.expfil.rlmgr.RLMAggregateRules.java');
SQL> --exec dbms_java.dropjava('-schema exfsys oracle.expfil.rlmgr.RLMPropertiesParser.java');
SQL>
SQL> BEGIN
  2    execute immediate 'drop table exfsys.RLM$COLLGRPBYSPEC';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop table exfsys.rlm$dmlevttrigs';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop table exfsys.rlm$orderclsals';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop table exfsys.rlm4j$ruleset';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop table exfsys.rlm4j$evtstructs';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop table exfsys.RLM4J$ATTRALIASES';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop table exfsys.rlm$schactlist';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop table exfsys.rlm$schacterrs';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop table exfsys.rlm$equalspec';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop table exfsys.rlm$eventstruct';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop table exfsys.rlm$rulesetprivs';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop table exfsys.rlm$validprivs';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop table exfsys.rlm$primevttypemap';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop table exfsys.rlm$rsprimevents';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop table exfsys.rlm$errcode';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop table exfsys.rlm$jobqueue';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop table exfsys.rlm$ruleset';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop table exfsys.rlm$rulesetstcode';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop table exfsys.rlm$parsedcond';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop view exfsys.RLM$INCRRSLTMAPS';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop view exfsys.USER_RLM4J_ATTRIBUTE_ALIASES';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop view exfsys.user_rlm4j_evtst';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop view exfsys.user_rlm4j_ruleclasses';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop view exfsys.user_rlmgr_event_structs';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop view exfsys.all_rlmgr_event_structs';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop view exfsys.adm_rlmgr_event_structs';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop view exfsys.user_rlmgr_rule_classes';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop view exfsys.all_rlmgr_rule_classes';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop view exfsys.adm_rlmgr_rule_classes';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop view exfsys.user_rlmgr_privileges';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop view exfsys.adm_rlmgr_privileges';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop view exfsys.user_rlmgr_rule_class_status';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop view exfsys.all_rlmgr_rule_class_status';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop view exfsys.adm_rlmgr_rule_class_status';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop view exfsys.all_rlmgr_rule_class_opcodes';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop view exfsys.user_rlmgr_comprcls_properties';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop view exfsys.all_rlmgr_comprcls_properties';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop view exfsys.adm_rlmgr_comprcls_properties';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop view exfsys.user_rlmgr_action_errors';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop view exfsys.all_rlmgr_action_errors';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop view exfsys.adm_rlmgr_action_errors';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -942 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> -- drop public synonyms --
SQL> BEGIN
  2    execute immediate 'drop public synonym dbms_rlmgr';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -1432 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop public synonym user_rlmgr_rule_classes';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -1432 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop public synonym all_rlmgr_rule_classes';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -1432 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop public synonym user_rlmgr_privileges';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -1432 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop public synonym rlm$eventids';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -1432 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> --drop public synonym all_rlmgr_privileges;
SQL>
SQL> BEGIN
  2    execute immediate 'drop public synonym user_rlmgr_event_structs';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -1432 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop public synonym all_rlmgr_event_structs';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -1432 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop public synonym user_rlmgr_rule_class_status';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -1432 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop public synonym all_rlmgr_rule_class_status';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -1432 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop public synonym user_rlmgr_comprcls_properties';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -1432 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop public synonym all_rlmgr_comprcls_properties';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -1432 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> ---drop public synonym rlm$equalattr;
SQL>
SQL> BEGIN
  2    execute immediate 'drop type exfsys.rlm$keyval';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -4043 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop type exfsys.rlm$dateval';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -4043 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    --execute immediate 'drop type exfsys.rlm$rowidtab';
  3    NULL;
  4  EXCEPTION
  5    WHEN OTHERS THEN IF SQLCODE = -4043 THEN NULL; ELSE RAISE; END IF;
  6  END;
  7  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop type exfsys.rlm$numval';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -4043 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop type exfsys.rlm$equalattr';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -4043 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop type exfsys.rlm$collpreds';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -4043 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop type exfsys.rlm$collevents';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -4043 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop type exfsys.rlm$collevent';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -4043 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop type exfsys.RLM$APNUMBLST';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -4043 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop type exfsys.RLM$APMULTVCL';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -4043 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop type exfsys.RLM$APVARCLST';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -4043 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop function exfsys.rlm$eqlchk';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -4043 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    execute immediate 'drop function exfsys.rlm$seqchk';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -4043 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> begin
  2    -- since this is a fresh install, delete any actions left behind --
  3    -- from past installations --
  4    delete from sys.expdepact$ where schema = 'EXFSYS'
  5       and package = 'DBMS_RLMGR_DEPASEXP';
  6
  7    delete from sys.exppkgact$ where package = 'DBMS_RLMGR_DEPASEXP'
  8      and schema = 'EXFSYS';
  9
 10  end;
 11  /

PL/SQL procedure successfully completed.

SQL>
SQL> ALTER SESSION SET CURRENT_SCHEMA = EXFSYS;

Session altered.

SQL>
SQL>
SQL> BEGIN
  2    dbms_xmlschema.deleteschema('http://xmlns.oracle.com/rlmgr/rclsprop.xsd');
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -31000 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> BEGIN
  2    dbms_xmlschema.deleteschema('http://xmlns.oracle.com/rlmgr/rulecond.xsd');
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -31000 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> -- create the system trigger without rule manager maintenance --
SQL> -- drop the truncate trigger for rule class tables --
SQL> BEGIN
  2    execute immediate 'drop trigger exfsys.rlmgr_truncate_maint';
  3  EXCEPTION
  4    WHEN OTHERS THEN IF SQLCODE = -4080 THEN NULL; ELSE RAISE; END IF;
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL>
SQL> create or replace package adm_rlmgr_systrig as
  2
  3    procedure pre_dropobj_maint (objowner VARCHAR2,
  4                                 objname  VARCHAR2,
  5                                 objtype  VARCHAR2);
  6
  7    --- @todo: system trigger to avoid truncate of the rules table --
  8    --- @todo: consider all other operations such as renaming tables, --
  9    ---        dropping columns from the table and altering the tables --
 10  end adm_rlmgr_systrig;
 11  /

Package created.

SQL>
SQL> create or replace package body adm_rlmgr_systrig as
  2
  3    /*************************************************************************/
  4    /*** PRE_DROPOBJ_MAINT : Pre drop maintenance for rule manager objects ***/
  5    /*************************************************************************/
  6    procedure pre_dropobj_maint (objowner VARCHAR2,
  7                                 objname  VARCHAR2,
  8                                 objtype  VARCHAR2) as
  9    begin
 10      return;
 11    end;
 12  end;
 13  /

Package body created.

SQL>
SQL> exec exfsys.adm_expfil_systrig.create_systrig_dropobj;

PL/SQL procedure successfully completed.

SQL>
SQL> ALTER SESSION SET CURRENT_SCHEMA = SYS;

Session altered.

SQL>
SQL> EXECUTE dbms_registry.removed('RUL');

PL/SQL procedure successfully completed.

SQL>
SQL>
SQL> REM
SQL> REM Drop the Expression Filter user with cascade option
SQL> REM
SQL> EXECUTE dbms_registry.removing('EXF');

PL/SQL procedure successfully completed.

SQL> drop user exfsys cascade;

User dropped.

SQL> drop package sys.exf$dbms_expfil_syspack;

Package dropped.

SQL> begin
  2    -- since this is a fresh install, delete any actions left behind --
  3    -- from past installations --
  4    delete from sys.expdepact$ where schema = 'EXFSYS'
  5      and package = 'DBMS_EXPFIL_DEPASEXP';
  6    delete from sys.exppkgact$ where package = 'DBMS_EXPFIL_DEPASEXP'
  7      and schema = 'EXFSYS';
  8  end;
  9  /

PL/SQL procedure successfully completed.

SQL>
SQL> -- drop public synonyms --
SQL> declare
  2    cursor cur1 is select synonym_name from all_synonyms where owner = 'PUBLIC' and table_owner = 'EXFSYS';
  3  begin
  4    for c1 in cur1 loop
  5       EXECUTE IMMEDIATE 'drop public synonym '||dbms_assert.enquote_name(c1.synonym_name, false);
  6    end loop;
  7  end;
  8  /

PL/SQL procedure successfully completed.

SQL>
SQL> execute sys.dbms_java.dropjava('-s rdbms/jlib/ExprFilter.jar');

PL/SQL procedure successfully completed.

SQL>
SQL> begin
  2    dbms_registry.removed('EXF');
  3  exception
  4    when others then null;
  5  end;
  6  /

PL/SQL procedure successfully completed.

SQL> select COMP_NAME, STATUS, VERSION from DBA_REGISTRY where COMP_ID in ('EXF','RUL');

no rows selected


H) Oracle Warehouse Builder 삭제 (옵션)

Oracle Warehouse Builder 삭제 스크립트 수행
@?/owb/UnifiedRepos/clean_owbsys.sql
SQL> col COMP_NAME form a30
SQL> col STATUS form a10
SQL> col VERSION form a15
SQL> select COMP_NAME, STATUS, VERSION from DBA_REGISTRY where COMP_ID='OWB';

COMP_NAME                      STATUS     VERSION
------------------------------ ---------- ---------------
OWB                            VALID      11.2.0.4.0

SQL> SET ECHO ON;
SQL> SET SERVEROUTPUT ON;
SQL> @?/owb/UnifiedRepos/clean_owbsys.sql
SQL> drop user owbsys cascade;

User dropped.

SQL> drop user owbsys_audit cascade;

User dropped.

SQL> drop role OWB_user;

Role dropped.

SQL> drop role OWB_DESIGNCENTER_view;

Role dropped.

SQL> drop role OWB$CLIENT;

Role dropped.

SQL> -- Bug Fix 6233292:
SQL> -- exit

SQL> select COMP_NAME, STATUS, VERSION from DBA_REGISTRY where COMP_ID='OWB';

no rows selected


I) 업그레이드 사전 작업 체크 스크립트 재수행

수동 사전 작업 수행 후 체크 스크립트 재수행
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
<19c ORACLE_HOME 경로>/jdk/bin/java -jar <19c ORACLE_HOME 경로>/rdbms/admin/preupgrade.jar TERMINAL TEXT
[racdb1:/home/oracle]> export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1

[racdb1:/home/oracle]> $ORACLE_BASE/product/19.0.0/db_1/jdk/bin/java -jar $ORACLE_BASE/product/19.0.0/db_1/rdbms/admin/preupgrade.jar TERMINAL TEXT
Report generated by Oracle Database Pre-Upgrade Information Tool Version
19.0.0.0.0 Build: 1 on 2020-04-22T15:40:47

Upgrade-To version: 19.0.0.0.0

=======================================
Status of the database prior to upgrade
=======================================
      Database Name:  RACDB
     Container Name:  Not Applicable in Pre-12.1 database
       Container ID:  Not Applicable in Pre-12.1 database
            Version:  11.2.0.4.0
     DB Patch Level:  PSU 11.2.0.4.200114
         Compatible:  11.2.0.0.0
          Blocksize:  8192
           Platform:  Linux x86 64-bit
      Timezone File:  14
  Database log mode:  NOARCHIVELOG
           Readonly:  FALSE
            Edition:  EE

  Oracle Component                       Upgrade Action    Current Status
  ----------------                       --------------    --------------
  Oracle Server                          [to be upgraded]  VALID
  JServer JAVA Virtual Machine           [to be upgraded]  VALID
  Oracle XDK for Java                    [to be upgraded]  VALID
  Real Application Clusters              [to be upgraded]  VALID
  Oracle Workspace Manager               [to be upgraded]  VALID
  OLAP Analytic Workspace                [to be upgraded]  VALID
  Oracle Text                            [to be upgraded]  VALID
  Oracle XML Database                    [to be upgraded]  VALID
  Oracle Java Packages                   [to be upgraded]  VALID
  Oracle Multimedia                      [to be upgraded]  VALID
  Oracle Spatial                         [to be upgraded]  VALID
  Oracle OLAP API                        [to be upgraded]  VALID

==============
BEFORE UPGRADE
==============

  REQUIRED ACTIONS
  ================
  None

  RECOMMENDED ACTIONS
  ===================
  1.  (AUTOFIXUP) Gather stale data dictionary statistics prior to database
      upgrade in off-peak time using:

        EXECUTE DBMS_STATS.GATHER_DICTIONARY_STATS;

      Dictionary statistics do not exist or are stale (not up-to-date).

      Dictionary statistics help the Oracle optimizer find efficient SQL
      execution plans and are essential for proper upgrade timing. Oracle
      recommends gathering dictionary statistics in the last 24 hours before
      database upgrade.

      For information on managing optimizer statistics, refer to the 11.2.0.4
      Oracle Database Performance Tuning Guide.

  2.  (AUTOFIXUP) Gather statistics on fixed objects prior the upgrade.

      None of the fixed object tables have had stats collected.

      Gathering statistics on fixed objects, if none have been gathered yet, is
      recommended prior to upgrading.

      For information on managing optimizer statistics, refer to the 11.2.0.4
      Oracle Database Performance Tuning Guide.

  INFORMATION ONLY
  ================
  3.  Check the Oracle Backup and Recovery User's Guide for information on how
      to manage an RMAN recovery catalog schema.

      If you are using a version of the recovery catalog schema that is older
      than that required by the RMAN client version, then you must upgrade the
      catalog schema.

      It is good practice to have the catalog schema the same or higher version
      than the RMAN client version you are using.

  ORACLE GENERATED FIXUP SCRIPT
  =============================
  All of the issues in database RACDB
  which are identified above as BEFORE UPGRADE "(AUTOFIXUP)" can be resolved by
  executing the following

    SQL>@/u01/app/oracle/cfgtoollogs/racdb/preupgrade/preupgrade_fixups.sql

=============
AFTER UPGRADE
=============

  REQUIRED ACTIONS
  ================
  None

  RECOMMENDED ACTIONS
  ===================
  4.  Upgrade the database time zone file using the DBMS_DST package.

      The database is using time zone file version 14 and the target 19 release
      ships with time zone file version 32.

      Oracle recommends upgrading to the desired (latest) version of the time
      zone file.  For more information, refer to "Upgrading the Time Zone File
      and Timestamp with Time Zone Data" in the 19 Oracle Database
      Globalization Support Guide.

  5.  (AUTOFIXUP) Gather dictionary statistics after the upgrade using the
      command:

        EXECUTE DBMS_STATS.GATHER_DICTIONARY_STATS;

      Oracle recommends gathering dictionary statistics after upgrade.

      Dictionary statistics provide essential information to the Oracle
      optimizer to help it find efficient SQL execution plans. After a database
      upgrade, statistics need to be re-gathered as there can now be tables
      that have significantly changed during the upgrade or new tables that do
      not have statistics gathered yet.

  6.  Gather statistics on fixed objects after the upgrade and when there is a
      representative workload on the system using the command:

        EXECUTE DBMS_STATS.GATHER_FIXED_OBJECTS_STATS;

      This recommendation is given for all preupgrade runs.

      Fixed object statistics provide essential information to the Oracle
      optimizer to help it find efficient SQL execution plans.  Those
      statistics are specific to the Oracle Database release that generates
      them, and can be stale upon database upgrade.

      For information on managing optimizer statistics, refer to the 11.2.0.4
      Oracle Database Performance Tuning Guide.

  ORACLE GENERATED FIXUP SCRIPT
  =============================
  All of the issues in database RACDB
  which are identified above as AFTER UPGRADE "(AUTOFIXUP)" can be resolved by
  executing the following

    SQL>@/u01/app/oracle/cfgtoollogs/racdb/preupgrade/postupgrade_fixups.sql


==================
PREUPGRADE SUMMARY
==================
  /u01/app/oracle/cfgtoollogs/racdb/preupgrade/preupgrade.log
  /u01/app/oracle/cfgtoollogs/racdb/preupgrade/preupgrade_fixups.sql
  /u01/app/oracle/cfgtoollogs/racdb/preupgrade/postupgrade_fixups.sql

Execute fixup scripts as indicated below:

Before upgrade:

Log into the database and execute the preupgrade fixups
@/u01/app/oracle/cfgtoollogs/racdb/preupgrade/preupgrade_fixups.sql

After the upgrade:

Log into the database and execute the postupgrade fixups
@/u01/app/oracle/cfgtoollogs/racdb/preupgrade/postupgrade_fixups.sql

Preupgrade complete: 2020-04-22T15:40:48


2. 업그레이드 작업

A) preupgrade_fixups 스크립트 수행

preupgrade_fixups 수행
SET ECHO ON;
SET SERVEROUTPUT ON;
@/u01/app/oracle/cfgtoollogs/racdb/preupgrade/preupgrade_fixups.sql
[racdb1:/home/oracle]> sqlplus / as sysdba

SQL*Plus: Release 11.2.0.4.0 Production on Fri Apr 24 10:15:15 2020

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


Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,
Data Mining and Real Application Testing options

SQL> SET ECHO ON;
SQL> SET SERVEROUTPUT ON;
SQL> @/u01/app/oracle/cfgtoollogs/racdb/preupgrade/preupgrade_fixups.sql
SQL> REM
SQL> REM    Oracle PRE-Upgrade Fixup Script
SQL> REM
SQL> REM    Auto-Generated by:       Oracle Preupgrade Script
SQL> REM                             Version: 19.0.0.0.0 Build: 1
SQL> REM    Generated on:            2020-04-22 15:40:44
SQL> REM
SQL> REM    Source Database:         RACDB
SQL> REM    Source Database Version: 11.2.0.4.0
SQL> REM    For Upgrade to Version:     19.0.0.0.0
SQL> REM
SQL>
SQL> REM
SQL> REM    Setup Environment
SQL> REM
SQL> SET ECHO OFF SERVEROUTPUT ON FORMAT WRAPPED TAB OFF LINESIZE 200;
Executing Oracle PRE-Upgrade Fixup Script

Auto-Generated by:       Oracle Preupgrade Script
                         Version: 19.0.0.0.0 Build: 1
Generated on:            2020-04-22 15:40:44

For Source Database:     RACDB
Source Database Version: 11.2.0.4.0
For Upgrade to Version:  19.0.0.0.0

Preup                             Preupgrade
Action                            Issue Is
Number  Preupgrade Check Name     Remedied    Further DBA Action
------  ------------------------  ----------  --------------------------------
    1.  dictionary_stats          YES         None.
    2.  pre_fixed_objects         YES         None.
    3.  rman_recovery_version     NO          Informational only.
                                              Further action is optional.

The fixup scripts have been run and resolved what they can. However,
there are still issues originally identified by the preupgrade that
have not been remedied and are still present in the database.
Depending on the severity of the specific issue, and the nature of
the issue itself, that could mean that your database is not ready
for upgrade.  To resolve the outstanding issues, start by reviewing
the preupgrade_fixups.sql and searching it for the name of
the failed CHECK NAME or Preupgrade Action Number listed above.
There you will find the original corresponding diagnostic message
from the preupgrade which explains in more detail what still needs
to be done.

PL/SQL procedure successfully completed.


B) 11g 데이터베이스 중지

모든 노드의 11g 인스턴스 중지 (11g 데이터베이스 중지)
shutdown immediate
SQL> select instance_name from v$instance;

INSTANCE_NAME
------------------------------------------------
racdb1

SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.

SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,
Data Mining and Real Application Testing options
[racdb2:/home/oracle]> sqlplus / as sysdba

SQL*Plus: Release 11.2.0.4.0 Production on Fri Apr 24 10:20:58 2020

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


Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,
Data Mining and Real Application Testing options

SQL> select instance_name from v$instance;

INSTANCE_NAME
------------------------------------------------
racdb2

SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.

SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,
Data Mining and Real Application Testing options
[root@rac1 ~]# crsctl stat res -t
--------------------------------------------------------------------------------
Name           Target  State        Server                   State details
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.LISTENER.lsnr
               ONLINE  ONLINE       rac1                     STABLE
               ONLINE  ONLINE       rac2                     STABLE
ora.chad
               ONLINE  ONLINE       rac1                     STABLE
               ONLINE  ONLINE       rac2                     STABLE
ora.net1.network
               ONLINE  ONLINE       rac1                     STABLE
               ONLINE  ONLINE       rac2                     STABLE
ora.ons
               ONLINE  ONLINE       rac1                     STABLE
               ONLINE  ONLINE       rac2                     STABLE
ora.proxy_advm
               OFFLINE OFFLINE      rac1                     STABLE
               OFFLINE OFFLINE      rac2                     STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.ASMNET1LSNR_ASM.lsnr(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
ora.CRS.dg(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
ora.DATA.dg(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
ora.FRA.dg(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       rac2                     STABLE
ora.LISTENER_SCAN2.lsnr
      1        ONLINE  ONLINE       rac1                     STABLE
ora.LISTENER_SCAN3.lsnr
      1        ONLINE  ONLINE       rac1                     STABLE
ora.asm(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     Started,STABLE
      2        ONLINE  ONLINE       rac2                     Started,STABLE
ora.asmnet1.asmnetwork(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
ora.cvu
      1        ONLINE  ONLINE       rac1                     STABLE
ora.qosmserver
      1        ONLINE  ONLINE       rac1                     STABLE
ora.rac1.vip
      1        ONLINE  ONLINE       rac1                     STABLE
ora.rac2.vip
      1        ONLINE  ONLINE       rac2                     STABLE
ora.racdb.db
      1        OFFLINE OFFLINE                               Instance Shutdown,ST
                                                             ABLE
      2        OFFLINE OFFLINE                               Instance Shutdown,ST
                                                             ABLE
ora.scan1.vip
      1        ONLINE  ONLINE       rac2                     STABLE
ora.scan2.vip
      1        ONLINE  ONLINE       rac1                     STABLE
ora.scan3.vip
      1        ONLINE  ONLINE       rac1                     STABLE
--------------------------------------------------------------------------------


C) 19c 환경 설정

vi .bash_profile 로 $DB_HOME 경로 변경
export DB_HOME=$ORACLE_BASE/product/19.0.0/db_1
[root@rac1 ~]# cat ~oracle/.bash_profile | grep DB_HOME
export DB_HOME=$ORACLE_BASE/product/19.0.0/db_1
export ORACLE_HOME=$DB_HOME

[root@rac1 ~]# cat .bash_profile | grep DB_HOME
export DB_HOME=$ORACLE_BASE/product/19.0.0/db_1
[root@rac2 ~]# cat ~oracle/.bash_profile | grep DB_HOME
export DB_HOME=$ORACLE_BASE/product/19.0.0/db_1
export ORACLE_HOME=$DB_HOME

[root@rac2 ~]# cat .bash_profile | grep DB_HOME
export DB_HOME=$ORACLE_BASE/product/19.0.0/db_1


1번 노드 재사용 파일 복제 및 패스워드 파일 생성
cp $ORACLE_BASE/product/11.2.0/db_1/network/admin/*.ora $DB_HOME/network/admin/
cp $ORACLE_BASE/product/11.2.0/db_1/dbs/initracdb1.ora $DB_HOME/dbs/
orapwd file=$ORACLE_HOME/dbs/orapwracdb1 force=y format=12
[racdb1:/home/oracle]> cp $ORACLE_BASE/product/11.2.0/db_1/network/admin/*.ora $ORACLE_BASE/product/19.0.0/db_1/network/admin/
cp: cannot stat `/u01/app/oracle/product/11.2.0/db_1/network/admin/*.ora': 그런 파일이나 디렉터리가 없습니다

[racdb1:/home/oracle]> cp $ORACLE_BASE/product/11.2.0/db_1/dbs/initracdb1.ora $ORACLE_BASE/product/19.0.0/db_1/dbs/

[racdb1:/home/oracle]> orapwd file=$ORACLE_HOME/dbs/orapwracdb1 force=y format=12

Enter password for SYS: <SYS 계정 암호 입력>


2번 노드 재사용 파일 복제 및 패스워드 파일 생성
cp $ORACLE_BASE/product/11.2.0/db_1/network/admin/*.ora $DB_HOME/network/admin/
cp $ORACLE_BASE/product/11.2.0/db_1/dbs/initracdb2.ora $DB_HOME/dbs/
orapwd file=$ORACLE_HOME/dbs/orapwracdb2 force=y format=12


[racdb2:/home/oracle]> cp $ORACLE_BASE/product/11.2.0/db_1/network/admin/*.ora $ORACLE_BASE/product/19.0.0/db_1/network/admin/
cp: cannot stat `/u01/app/oracle/product/11.2.0/db_1/network/admin/*.ora': 그런 파일이나 디렉터리가 없습니다

[racdb2:/home/oracle]> cp $ORACLE_BASE/product/11.2.0/db_1/dbs/initracdb2.ora $ORACLE_BASE/product/19.0.0/db_1/dbs/

[racdb2:/home/oracle]> orapwd file=$ORACLE_HOME/dbs/orapwracdb2 force=y format=12

Enter password for SYS: <SYS 계정 암호 입력>


D) 싱글 DB로 전환 및 Upgrade 모드 기동

싱글 DB 전환 후 1번 노드 upgrade 모드로 기동
conn / as sysdba
startup nomount
alter system set cluster_database=false scope=spfile;
startup force upgrade
[racdb1:/home/oracle]> sqlplus / as sysdba

SQL*Plus: Release 19.0.0.0.0 - Production on Fri Apr 24 10:23:22 2020
Version 19.7.0.0.0

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

Connected to an idle instance.

SQL> startup nomount
ORACLE instance started.

Total System Global Area 3221222464 bytes
Fixed Size                  8901696 bytes
Variable Size             738197504 bytes
Database Buffers         2466250752 bytes
Redo Buffers                7872512 bytes

SQL> show parameter cluster_database

NAME                                 TYPE                              VALUE
------------------------------------ --------------------------------- ------------------------------
cluster_database                     boolean                           TRUE
cluster_database_instances           integer                           2

SQL> alter system set cluster_database=false scope=spfile;

System altered.

SQL> shutdown abort
ORACLE instance shut down.

SQL> startup upgrade
ORACLE instance started.

Total System Global Area 3221222464 bytes
Fixed Size                  8901696 bytes
Variable Size             738197504 bytes
Database Buffers         2466250752 bytes
Redo Buffers                7872512 bytes
Database mounted.
Database opened.

SQL> exit
Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.7.0.0.0


E) 업그레이드 수행

dbupgrade 스크립트 실행
export ORACLE_HOME=$ORACLE_BASE/product/19.0.0/db_1
$ORACLE_HOME/bin/dbupgrade
[racdb1:/home/oracle]> echo $ORACLE_HOME
/u01/app/oracle/product/19.0.0/db_1

[racdb1:/home/oracle]> $ORACLE_HOME/bin/dbupgrade

Argument list for [/u01/app/oracle/product/19.0.0/db_1/rdbms/admin/catctl.pl]
For Oracle internal use only A = 0
Run in                       c = 0
Do not run in                C = 0
Input Directory              d = 0
Echo OFF                     e = 1
Simulate                     E = 0
Forced cleanup               F = 0
Log Id                       i = 0
Child Process                I = 0
Log Dir                      l = 0
Priority List Name           L = 0
Upgrade Mode active          M = 0
SQL Process Count            n = 0
SQL PDB Process Count        N = 0
Open Mode Normal             o = 0
Start Phase                  p = 0
End Phase                    P = 0
Reverse Order                r = 0
AutoUpgrade Resume           R = 0
Script                       s = 0
Serial Run                   S = 0
RO User Tablespaces          T = 0
Display Phases               y = 0
Debug catcon.pm              z = 0
Debug catctl.pl              Z = 0

catctl.pl VERSION: [19.0.0.0.0]
           STATUS: [Production]
            BUILD: [RDBMS_19.7.0.0.0DBRU_LINUX.X64_200403]


/u01/app/oracle/product/19.0.0/db_1/rdbms/admin/orahome = [/u01/app/oracle/product/19.0.0/db_1]
/u01/app/oracle/product/19.0.0/db_1/bin/orabasehome = [/u01/app/oracle/product/19.0.0/db_1]
catctlGetOraBaseLogDir = [/u01/app/oracle/product/19.0.0/db_1]

Analyzing file /u01/app/oracle/product/19.0.0/db_1/rdbms/admin/catupgrd.sql

Log file directory = [/tmp/cfgtoollogs/upgrade20200424102522]

catcon::set_log_file_base_path: ALL catcon-related output will be written to [/tmp/cfgtoollogs/upgrade20200424102522/catupgrd_catcon_22590.lst]

catcon::set_log_file_base_path: catcon: See [/tmp/cfgtoollogs/upgrade20200424102522/catupgrd*.log] files for output generated by scripts

catcon::set_log_file_base_path: catcon: See [/tmp/cfgtoollogs/upgrade20200424102522/catupgrd_*.lst] files for spool files, if any


Number of Cpus        = 2
Database Name         = racdb
DataBase Version      = 11.2.0.4.0
catcon::set_log_file_base_path: ALL catcon-related output will be written to [/u01/app/oracle/product/19.0.0/db_1/cfgtoollogs/racdb/upgrade20200424102533/catupgrd_catcon_22590.lst]

catcon::set_log_file_base_path: catcon: See [/u01/app/oracle/product/19.0.0/db_1/cfgtoollogs/racdb/upgrade20200424102533/catupgrd*.log] files for output generated by scripts

catcon::set_log_file_base_path: catcon: See [/u01/app/oracle/product/19.0.0/db_1/cfgtoollogs/racdb/upgrade20200424102533/catupgrd_*.lst] files for spool files, if any


Log file directory = [/u01/app/oracle/product/19.0.0/db_1/cfgtoollogs/racdb/upgrade20200424102533]

Parallel SQL Process Count            = 4
Components in [racdb]
    Installed [APS CATALOG CATJAVA CATPROC CONTEXT JAVAVM ORDIM OWM RAC SDO XDB XML XOQ]
Not Installed [APEX DV EM MGW ODM OLS WK]
DataBase Version      = 11.2.0.4.0

------------------------------------------------------
Phases [0-107]         Start Time:[2020_04_24 10:25:46]
------------------------------------------------------
***********   Executing Change Scripts   ***********
Serial   Phase #:0    [racdb] Files:1    Time: 121s
***************   Catalog Core SQL   ***************
Serial   Phase #:1    [racdb] Files:5    Time: 73s
Restart  Phase #:2    [racdb] Files:1    Time: 2s
***********   Catalog Tables and Views   ***********
Parallel Phase #:3    [racdb] Files:19   Time: 27s
Restart  Phase #:4    [racdb] Files:1    Time: 2s
*************   Catalog Final Scripts   ************
Serial   Phase #:5    [racdb] Files:7    Time: 27s
*****************   Catproc Start   ****************
Serial   Phase #:6    [racdb] Files:1    Time: 17s
*****************   Catproc Types   ****************
Serial   Phase #:7    [racdb] Files:2    Time: 15s
Restart  Phase #:8    [racdb] Files:1    Time: 0s
****************   Catproc Tables   ****************
Parallel Phase #:9    [racdb] Files:67   Time: 46s
Restart  Phase #:10   [racdb] Files:1    Time: 1s
*************   Catproc Package Specs   ************
Serial   Phase #:11   [racdb] Files:1    Time: 123s
Restart  Phase #:12   [racdb] Files:1    Time: 4s
**************   Catproc Procedures   **************
Parallel Phase #:13   [racdb] Files:94   Time: 21s
Restart  Phase #:14   [racdb] Files:1    Time: 1s
Parallel Phase #:15   [racdb] Files:121  Time: 29s
Restart  Phase #:16   [racdb] Files:1    Time: 2s
Serial   Phase #:17   [racdb] Files:22   Time: 7s
Restart  Phase #:18   [racdb] Files:1    Time: 3s
*****************   Catproc Views   ****************
Parallel Phase #:19   [racdb] Files:32   Time: 47s
Restart  Phase #:20   [racdb] Files:1    Time: 2s
Serial   Phase #:21   [racdb] Files:3    Time: 23s
Restart  Phase #:22   [racdb] Files:1    Time: 2s
Parallel Phase #:23   [racdb] Files:25   Time: 317s
Restart  Phase #:24   [racdb] Files:1    Time: 2s
Parallel Phase #:25   [racdb] Files:12   Time: 204s
Restart  Phase #:26   [racdb] Files:1    Time: 2s
Serial   Phase #:27   [racdb] Files:1    Time: 0s
Serial   Phase #:28   [racdb] Files:3    Time: 6s
Serial   Phase #:29   [racdb] Files:1    Time: 0s
Restart  Phase #:30   [racdb] Files:1    Time: 2s
***************   Catproc CDB Views   **************
Serial   Phase #:31   [racdb] Files:1    Time: 2s
Restart  Phase #:32   [racdb] Files:1    Time: 1s
Serial   Phase #:34   [racdb] Files:1    Time: 0s
*****************   Catproc PLBs   *****************
Serial   Phase #:35   [racdb] Files:294  Time: 32s
Serial   Phase #:36   [racdb] Files:1    Time: 0s
Restart  Phase #:37   [racdb] Files:1    Time: 1s
Serial   Phase #:38   [racdb] Files:6    Time: 8s
Restart  Phase #:39   [racdb] Files:1    Time: 1s
***************   Catproc DataPump   ***************
Serial   Phase #:40   [racdb] Files:3    Time: 92s
Restart  Phase #:41   [racdb] Files:1    Time: 1s
******************   Catproc SQL   *****************
Parallel Phase #:42   [racdb] Files:13   Time: 238s
Restart  Phase #:43   [racdb] Files:1    Time: 1s
Parallel Phase #:44   [racdb] Files:11   Time: 21s
Restart  Phase #:45   [racdb] Files:1    Time: 2s
Parallel Phase #:46   [racdb] Files:3    Time: 3s
Restart  Phase #:47   [racdb] Files:1    Time: 2s
*************   Final Catproc scripts   ************
Serial   Phase #:48   [racdb] Files:1    Time: 15s
Restart  Phase #:49   [racdb] Files:1    Time: 2s
**************   Final RDBMS scripts   *************
Serial   Phase #:50   [racdb] Files:1    Time: 32s
************   Upgrade Component Start   ***********
Serial   Phase #:51   [racdb] Files:1    Time: 3s
Restart  Phase #:52   [racdb] Files:1    Time: 3s
**********   Upgrading Java and non-Java   *********
Serial   Phase #:53   [racdb] Files:2    Time: 655s
*****************   Upgrading XDB   ****************
Restart  Phase #:54   [racdb] Files:1    Time: 1s
Serial   Phase #:56   [racdb] Files:3    Time: 38s
Serial   Phase #:57   [racdb] Files:3    Time: 6s
Parallel Phase #:58   [racdb] Files:10   Time: 6s
Parallel Phase #:59   [racdb] Files:25   Time: 9s
Serial   Phase #:60   [racdb] Files:4    Time: 14s
Serial   Phase #:61   [racdb] Files:1    Time: 0s
Serial   Phase #:62   [racdb] Files:32   Time: 10s
Serial   Phase #:63   [racdb] Files:1    Time: 0s
Parallel Phase #:64   [racdb] Files:6    Time: 10s
Serial   Phase #:65   [racdb] Files:2    Time: 32s
Serial   Phase #:66   [racdb] Files:3    Time: 113s
****************   Upgrading ORDIM   ***************
Restart  Phase #:67   [racdb] Files:1    Time: 2s
Serial   Phase #:69   [racdb] Files:1    Time: 5s
Parallel Phase #:70   [racdb] Files:2    Time: 69s
Restart  Phase #:71   [racdb] Files:1    Time: 3s
Parallel Phase #:72   [racdb] Files:2    Time: 4s
Serial   Phase #:73   [racdb] Files:2    Time: 5s
*****************   Upgrading SDO   ****************
Restart  Phase #:74   [racdb] Files:1    Time: 1s
Serial   Phase #:76   [racdb] Files:1    Time: 51s
Serial   Phase #:77   [racdb] Files:2    Time: 6s
Restart  Phase #:78   [racdb] Files:1    Time: 1s
Serial   Phase #:79   [racdb] Files:1    Time: 34s
Restart  Phase #:80   [racdb] Files:1    Time: 1s
Parallel Phase #:81   [racdb] Files:3    Time: 100s
Restart  Phase #:82   [racdb] Files:1    Time: 2s
Serial   Phase #:83   [racdb] Files:1    Time: 12s
Restart  Phase #:84   [racdb] Files:1    Time: 1s
Serial   Phase #:85   [racdb] Files:1    Time: 17s
Restart  Phase #:86   [racdb] Files:1    Time: 2s
Parallel Phase #:87   [racdb] Files:4    Time: 175s
Restart  Phase #:88   [racdb] Files:1    Time: 3s
Serial   Phase #:89   [racdb] Files:1    Time: 5s
Restart  Phase #:90   [racdb] Files:1    Time: 2s
Serial   Phase #:91   [racdb] Files:2    Time: 24s
Restart  Phase #:92   [racdb] Files:1    Time: 1s
Serial   Phase #:93   [racdb] Files:1    Time: 3s
Restart  Phase #:94   [racdb] Files:1    Time: 2s
*******   Upgrading ODM, WK, EXF, RUL, XOQ   *******
Serial   Phase #:95   [racdb] Files:1    Time: 20s
Restart  Phase #:96   [racdb] Files:1    Time: 3s
***********   Final Component scripts    ***********
Serial   Phase #:97   [racdb] Files:1    Time: 4s
*************   Final Upgrade scripts   ************
Serial   Phase #:98   [racdb] Files:1    Time: 791s
*******************   Migration   ******************
Serial   Phase #:99   [racdb] Files:1    Time: 56s
***   End PDB Application Upgrade Pre-Shutdown   ***
Serial   Phase #:100  [racdb] Files:1    Time: 2s
Serial   Phase #:101  [racdb] Files:1    Time: 0s
Serial   Phase #:102  [racdb] Files:1    Time: 63s
*****************   Post Upgrade   *****************
Serial   Phase #:103  [racdb] Files:1    Time: 63s
****************   Summary report   ****************
Serial   Phase #:104  [racdb] Files:1    Time: 3s
***   End PDB Application Upgrade Post-Shutdown   **
Serial   Phase #:105  [racdb] Files:1    Time: 2s
Serial   Phase #:106  [racdb] Files:1    Time: 0s
Serial   Phase #:107  [racdb] Files:1     Time: 30s

------------------------------------------------------
Phases [0-107]         End Time:[2020_04_24 11:33:16]
------------------------------------------------------

Grand Total Time: 4054s

 LOG FILES: (/u01/app/oracle/product/19.0.0/db_1/cfgtoollogs/racdb/upgrade20200424102533/catupgrd*.log)

Upgrade Summary Report Located in:
/u01/app/oracle/product/19.0.0/db_1/cfgtoollogs/racdb/upgrade20200424102533/upg_summary.log

Grand Total Upgrade Time:    [0d:1h:7m:34s]


F) Time Zone 업그레이드 수행

Upgrade 모드로 기동 후 Time Zone 버전 조회
startup upgrade;
select * from V$TIMEZONE_FILE;
select DBMS_DST.GET_LATEST_TIMEZONE_VERSION from dual;
[racdb1:/home/oracle]> sqlplus / as sysdba

SQL*Plus: Release 19.0.0.0.0 - Production on Fri Apr 24 11:34:32 2020
Version 19.7.0.0.0

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

Connected to an idle instance.

SQL> startup upgrade;
ORACLE instance started.

Total System Global Area 3221222464 bytes
Fixed Size                  8901696 bytes
Variable Size             822083584 bytes
Database Buffers         2382364672 bytes
Redo Buffers                7872512 bytes
Database mounted.
Database opened.

SQL> col FILENAME form a20
SQL> select FILENAME, VERSION from V$TIMEZONE_FILE;

FILENAME                VERSION
-------------------- ----------
timezlrg_14.dat              14

SQL> select DBMS_DST.GET_LATEST_TIMEZONE_VERSION from dual;

GET_LATEST_TIMEZONE_VERSION
---------------------------
                         32


Time Zone 업그레이드 영향도 분석
SET SERVEROUTPUT ON;
exec DBMS_DST.BEGIN_PREPARE(DBMS_DST.GET_LATEST_TIMEZONE_VERSION);
exec DBMS_DST.FIND_AFFECTED_TABLES;
select * from SYS.DST$AFFECTED_TABLES;
select * from SYS.DST$ERROR_TABLE;
select * from SYS.DST$TRIGGER_TABLE;
exec DBMS_DST.END_PREPARE;
SQL> SET SERVEROUTPUT ON;
SQL> exec DBMS_DST.BEGIN_PREPARE(DBMS_DST.GET_LATEST_TIMEZONE_VERSION);
A prepare window has been successfully started.

PL/SQL procedure successfully completed.

SQL> exec DBMS_DST.FIND_AFFECTED_TABLES;

PL/SQL procedure successfully completed.

SQL> select * from SYS.DST$AFFECTED_TABLES;

no rows selected

SQL> select * from SYS.DST$ERROR_TABLE;

no rows selected

SQL> select * from SYS.DST$TRIGGER_TABLE;

no rows selected

SQL> exec DBMS_DST.END_PREPARE;
A prepare window has been successfully ended.

PL/SQL procedure successfully completed.


Time Zone 업그레이드 윈도우 시작 및 재기동
exec DBMS_DST.BEGIN_UPGRADE(DBMS_DST.GET_LATEST_TIMEZONE_VERSION);
shutdown immediate
startup
SQL> exec DBMS_DST.BEGIN_UPGRADE(DBMS_DST.GET_LATEST_TIMEZONE_VERSION);
An upgrade window has been successfully started.

PL/SQL procedure successfully completed.

SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.

SQL> startup
ORACLE instance started.

Total System Global Area 3221222464 bytes
Fixed Size                  8901696 bytes
Variable Size             822083584 bytes
Database Buffers         2382364672 bytes
Redo Buffers                7872512 bytes
Database mounted.
Database opened.


데이터베이스 Time Zone 업그레이드
SET SERVEROUTPUT ON;
DECLARE
  failed_num PLS_INTEGER;
BEGIN
  DBMS_DST.UPGRADE_DATABASE(failed_num);
  DBMS_OUTPUT.PUT_LINE('DBMS_DST.UPGRADE_DATABASE : ' || failed_num);
END;
/


SQL> SET SERVEROUTPUT ON;
SQL> DECLARE
  2    failed_num PLS_INTEGER;
  3  BEGIN
  4    DBMS_DST.UPGRADE_DATABASE(failed_num);
  5    DBMS_OUTPUT.PUT_LINE('DBMS_DST.UPGRADE_DATABASE : ' || failed_num);
  6  END;
  7  /
Table list: "MDSYS"."SDO_DIAG_MESSAGES_TABLE"
Number of failures: 0
Table list: "GSMADMIN_INTERNAL"."AQ$_CHANGE_LOG_QUEUE_TABLE_L"
Number of failures: 0
Table list: "GSMADMIN_INTERNAL"."AQ$_CHANGE_LOG_QUEUE_TABLE_S"
Number of failures: 0
DBMS_DST.UPGRADE_DATABASE : 0

PL/SQL procedure successfully completed.


Time Zone 업그레이드 윈도우 종료
SET SERVEROUTPUT ON;
DECLARE
  failed_num PLS_INTEGER;
BEGIN
  DBMS_DST.END_UPGRADE(failed_num);
  DBMS_OUTPUT.PUT_LINE('DBMS_DST.END_UPGRADE : ' || failed_num);
END;
/
SQL> SET SERVEROUTPUT ON;
SQL> DECLARE
  2    failed_num PLS_INTEGER;
  3  BEGIN
  4    DBMS_DST.END_UPGRADE(failed_num);
  5    DBMS_OUTPUT.PUT_LINE('DBMS_DST.END_UPGRADE : ' || failed_num);
  6  END;
  7  /
An upgrade window has been successfully ended.
DBMS_DST.END_UPGRADE : 0

PL/SQL procedure successfully completed.


Time Zone 업그레이드 결과 확인
select PROPERTY_NAME, PROPERTY_VALUE
  from DATABASE_PROPERTIES
 where PROPERTY_NAME like 'DST_%'
 order by PROPERTY_NAME;
SQL> col PROPERTY_NAME form a30
SQL> col PROPERTY_VALUE form a20
SQL> select PROPERTY_NAME, PROPERTY_VALUE
  2  from   DATABASE_PROPERTIES
  3  where  PROPERTY_NAME like 'DST_%'
  4  order by PROPERTY_NAME;

PROPERTY_NAME                  PROPERTY_VALUE
------------------------------ --------------------
DST_PRIMARY_TT_VERSION         32
DST_SECONDARY_TT_VERSION       0
DST_UPGRADE_STATE              NONE


G) Fixed Objects 통계 수집

Fixed Objects 통계 수집
EXECUTE DBMS_STATS.GATHER_FIXED_OBJECTS_STATS;
SQL> EXECUTE DBMS_STATS.GATHER_FIXED_OBJECTS_STATS;

PL/SQL procedure successfully completed.


H) postupgrade_fixups 스크립트 수행

postupgrade_fixups 스크립트 수행
SET ECHO ON;
SET SERVEROUTPUT ON;
@/u01/app/oracle/cfgtoollogs/racdb/preupgrade/postupgrade_fixups.sql
SQL> SET ECHO ON;
SQL> SET SERVEROUTPUT ON;
SQL> @/u01/app/oracle/cfgtoollogs/racdb/preupgrade/postupgrade_fixups.sql
SQL> REM
SQL> REM    Oracle POST-Upgrade Fixup Script
SQL> REM
SQL> REM    Auto-Generated by:       Oracle Preupgrade Script
SQL> REM                             Version: 19.0.0.0.0 Build: 1
SQL> REM    Generated on:            2020-04-22 15:40:47
SQL> REM
SQL> REM    Source Database:         RACDB
SQL> REM    Source Database Version: 11.2.0.4.0
SQL> REM    For Upgrade to Version:  19.0.0.0.0
SQL> REM
SQL> 
SQL> REM
SQL> REM    Setup Environment
SQL> REM
SQL> SET ECHO OFF SERVEROUTPUT ON FORMAT WRAPPED TAB OFF LINESIZE 200;

Session altered.


PL/SQL procedure successfully completed.


PL/SQL procedure successfully completed.


PL/SQL procedure successfully completed.


Package created.

No errors.

Package body created.


PL/SQL procedure successfully completed.

No errors.





Package created.

No errors.

Package body created.

No errors.
Executing Oracle POST-Upgrade Fixup Script

Auto-Generated by:       Oracle Preupgrade Script
                         Version: 19.0.0.0.0 Build: 1
Generated on:            2020-04-18 08:12:18

For Source Database:     RACDB
Source Database Version: 11.2.0.4.0
For Upgrade to Version:  19.0.0.0.0

Preup                             Preupgrade
Action                            Issue Is
Number  Preupgrade Check Name     Remedied    Further DBA Action
------  ------------------------  ----------  --------------------------------
    4.  old_time_zones_exist      YES         None.
    5.  post_dictionary           YES         None.
    6.  post_fixed_objects        NO          Informational only.
                                              Further action is optional.

The fixup scripts have been run and resolved what they can. However,
there are still issues originally identified by the preupgrade that
have not been remedied and are still present in the database.
Depending on the severity of the specific issue, and the nature of
the issue itself, that could mean that your database upgrade is not
fully complete.  To resolve the outstanding issues, start by reviewing
the postupgrade_fixups.sql and searching it for the name of
the failed CHECK NAME or Preupgrade Action Number listed above.
There you will find the original corresponding diagnostic message
from the preupgrade which explains in more detail what still needs
to be done.

PL/SQL procedure successfully completed.


Session altered.


I) 객체 재컴파일

Invalid 객체 및 컴포넌트 재컴파일
@?/rdbms/admin/utlrp.sql


SQL> select count(*) from DBA_OBJECTS where STATUS = 'INVALID';

  COUNT(*)
----------
      6614

SQL> set pages 20
SQL> col COMP_NAME form a35
SQL> col VERSION_FULL form a15
SQL> col STATUS form a10

SQL> select COMP_NAME, VERSION_FULL, STATUS from DBA_REGISTRY;

COMP_NAME                           VERSION_FULL    STATUS
----------------------------------- --------------- ----------
Oracle Database Catalog Views       19.7.0.0.0      UPGRADED
Oracle Database Packages and Types  19.7.0.0.0      UPGRADED
JServer JAVA Virtual Machine        19.7.0.0.0      UPGRADED
Oracle XDK                          19.7.0.0.0      UPGRADED
Oracle Database Java Packages       19.7.0.0.0      UPGRADED
Oracle Real Application Clusters    19.7.0.0.0      UPGRADED
OLAP Analytic Workspace             19.7.0.0.0      UPGRADED
Oracle Workspace Manager            19.7.0.0.0      UPGRADED
Oracle Text                         19.7.0.0.0      UPGRADED
Oracle XML Database                 19.7.0.0.0      UPGRADED
Oracle Multimedia                   19.7.0.0.0      UPGRADED
Spatial                             19.7.0.0.0      LOADING
Oracle OLAP API                     19.7.0.0.0      VALID

13 rows selected.

SQL> @?/rdbms/admin/utlrp.sql

Session altered.


TIMESTAMP
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
COMP_TIMESTAMP UTLRP_BGN              2020-04-24 11:47:42

DOC>   The following PL/SQL block invokes UTL_RECOMP to recompile invalid
DOC>   objects in the database. Recompilation time is proportional to the
DOC>   number of invalid objects in the database, so this command may take
DOC>   a long time to execute on a database with a large number of invalid
DOC>   objects.
DOC>
DOC>   Use the following queries to track recompilation progress:
DOC>
DOC>   1. Query returning the number of invalid objects remaining. This
DOC>      number should decrease with time.
DOC>         SELECT COUNT(*) FROM obj$ WHERE status IN (4, 5, 6);
DOC>
DOC>   2. Query returning the number of objects compiled so far. This number
DOC>      should increase with time.
DOC>         SELECT COUNT(*) FROM UTL_RECOMP_COMPILED;
DOC>
DOC>   This script automatically chooses serial or parallel recompilation
DOC>   based on the number of CPUs available (parameter cpu_count) multiplied
DOC>   by the number of threads per CPU (parameter parallel_threads_per_cpu).
DOC>   On RAC, this number is added across all RAC nodes.
DOC>
DOC>   UTL_RECOMP uses DBMS_SCHEDULER to create jobs for parallel
DOC>   recompilation. Jobs are created without instance affinity so that they
DOC>   can migrate across RAC nodes. Use the following queries to verify
DOC>   whether UTL_RECOMP jobs are being created and run correctly:
DOC>
DOC>   1. Query showing jobs created by UTL_RECOMP
DOC>         SELECT job_name FROM dba_scheduler_jobs
DOC>            WHERE job_name like 'UTL_RECOMP_SLAVE_%';
DOC>
DOC>   2. Query showing UTL_RECOMP jobs that are running
DOC>         SELECT job_name FROM dba_scheduler_running_jobs
DOC>            WHERE job_name like 'UTL_RECOMP_SLAVE_%';
DOC>#

PL/SQL procedure successfully completed.


TIMESTAMP
--------------------------------------------------------------------------------
COMP_TIMESTAMP UTLRP_END              2020-04-24 11:59:02

DOC> The following query reports the number of invalid objects.
DOC>
DOC> If the number is higher than expected, please examine the error
DOC> messages reported with each object (using SHOW ERRORS) to see if they
DOC> point to system misconfiguration or resource constraints that must be
DOC> fixed before attempting to recompile these objects.
DOC>#

OBJECTS WITH ERRORS
-------------------
                  0

DOC> The following query reports the number of exceptions caught during
DOC> recompilation. If this number is non-zero, please query the error
DOC> messages in the table UTL_RECOMP_ERRORS to see if any of these errors
DOC> are due to misconfiguration or resource constraints that must be
DOC> fixed before objects can compile successfully.
DOC> Note: Typical compilation errors (due to coding errors) are not
DOC>       logged into this table: they go into DBA_ERRORS instead.
DOC>#

ERRORS DURING RECOMPILATION
---------------------------
                          0


Function created.


PL/SQL procedure successfully completed.


Function dropped.


PL/SQL procedure successfully completed.

SQL> select count(*) from DBA_OBJECTS where STATUS = 'INVALID';

  COUNT(*)
----------
         0

SQL> select COMP_NAME, VERSION_FULL, STATUS from DBA_REGISTRY;

COMP_NAME                           VERSION_FULL    STATUS
----------------------------------- --------------- ----------
Oracle Database Catalog Views       19.7.0.0.0      VALID
Oracle Database Packages and Types  19.7.0.0.0      VALID
JServer JAVA Virtual Machine        19.7.0.0.0      VALID
Oracle XDK                          19.7.0.0.0      VALID
Oracle Database Java Packages       19.7.0.0.0      VALID
Oracle Real Application Clusters    19.7.0.0.0      VALID
OLAP Analytic Workspace             19.7.0.0.0      VALID
Oracle Workspace Manager            19.7.0.0.0      VALID
Oracle Text                         19.7.0.0.0      VALID
Oracle XML Database                 19.7.0.0.0      VALID
Oracle Multimedia                   19.7.0.0.0      VALID
Spatial                             19.7.0.0.0      VALID
Oracle OLAP API                     19.7.0.0.0      VALID

13 rows selected.


J) 클러스터 DB로 전환

클러스터 DB로 전환 및 재기동을 위한 중지
alter system set cluster_database=true scope=spfile;
shutdown immediate
SQL> col NAME form a20
SQL> col VALUE form a10
SQL> select NAME, VALUE from V$PARAMETER where name = 'cluster_database';

NAME                 VALUE
-------------------- ----------
cluster_database     FALSE

SQL> alter system set cluster_database=true scope=spfile;

System altered.

SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.

SQL> exit
Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.7.0.0.0
[racdb1:/home/oracle]> crsctl stat res -t
--------------------------------------------------------------------------------
Name           Target  State        Server                   State details
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.LISTENER.lsnr
               ONLINE  ONLINE       rac1                     STABLE
               ONLINE  ONLINE       rac2                     STABLE
ora.chad
               ONLINE  ONLINE       rac1                     STABLE
               ONLINE  ONLINE       rac2                     STABLE
ora.net1.network
               ONLINE  ONLINE       rac1                     STABLE
               ONLINE  ONLINE       rac2                     STABLE
ora.ons
               ONLINE  ONLINE       rac1                     STABLE
               ONLINE  ONLINE       rac2                     STABLE
ora.proxy_advm
               OFFLINE OFFLINE      rac1                     STABLE
               OFFLINE OFFLINE      rac2                     STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.ASMNET1LSNR_ASM.lsnr(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
ora.CRS.dg(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
ora.DATA.dg(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
ora.FRA.dg(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       rac2                     STABLE
ora.LISTENER_SCAN2.lsnr
      1        ONLINE  ONLINE       rac1                     STABLE
ora.LISTENER_SCAN3.lsnr
      1        ONLINE  ONLINE       rac1                     STABLE
ora.asm(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     Started,STABLE
      2        ONLINE  ONLINE       rac2                     Started,STABLE
ora.asmnet1.asmnetwork(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
ora.cvu
      1        ONLINE  ONLINE       rac1                     STABLE
ora.qosmserver
      1        ONLINE  ONLINE       rac1                     STABLE
ora.rac1.vip
      1        ONLINE  ONLINE       rac1                     STABLE
ora.rac2.vip
      1        ONLINE  ONLINE       rac2                     STABLE
ora.racdb.db
      1        ONLINE  OFFLINE                               STABLE
      2        OFFLINE OFFLINE                               Instance Shutdown,ST
                                                             ABLE
ora.scan1.vip
      1        ONLINE  ONLINE       rac2                     STABLE
ora.scan2.vip
      1        ONLINE  ONLINE       rac1                     STABLE
ora.scan3.vip
      1        ONLINE  ONLINE       rac1                     STABLE
--------------------------------------------------------------------------------


데이터베이스 설정 업데이트 및 재기동
$DB_HOME/bin/srvctl upgrade database -d racdb -o $DB_HOME
srvctl start database -d racdb
[racdb1:/home/oracle]> $DB_HOME/bin/srvctl upgrade database -d racdb -o $DB_HOME

[racdb1:/home/oracle]> srvctl start database -d racdb
[racdb1:/home/oracle]> crsctl stat res -t
--------------------------------------------------------------------------------
Name           Target  State        Server                   State details
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.LISTENER.lsnr
               ONLINE  ONLINE       rac1                     STABLE
               ONLINE  ONLINE       rac2                     STABLE
ora.chad
               ONLINE  ONLINE       rac1                     STABLE
               ONLINE  ONLINE       rac2                     STABLE
ora.net1.network
               ONLINE  ONLINE       rac1                     STABLE
               ONLINE  ONLINE       rac2                     STABLE
ora.ons
               ONLINE  ONLINE       rac1                     STABLE
               ONLINE  ONLINE       rac2                     STABLE
ora.proxy_advm
               OFFLINE OFFLINE      rac1                     STABLE
               OFFLINE OFFLINE      rac2                     STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.ASMNET1LSNR_ASM.lsnr(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
ora.CRS.dg(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
ora.DATA.dg(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
ora.FRA.dg(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       rac2                     STABLE
ora.LISTENER_SCAN2.lsnr
      1        ONLINE  ONLINE       rac1                     STABLE
ora.LISTENER_SCAN3.lsnr
      1        ONLINE  ONLINE       rac1                     STABLE
ora.asm(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     Started,STABLE
      2        ONLINE  ONLINE       rac2                     Started,STABLE
ora.asmnet1.asmnetwork(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
ora.cvu
      1        ONLINE  ONLINE       rac1                     STABLE
ora.qosmserver
      1        ONLINE  ONLINE       rac1                     STABLE
ora.rac1.vip
      1        ONLINE  ONLINE       rac1                     STABLE
ora.rac2.vip
      1        ONLINE  ONLINE       rac2                     STABLE
ora.racdb.db
      1        ONLINE  ONLINE       rac1                     Open,HOME=/u01/app/o
                                                             racle/product/19.0.0
                                                             /db_1,STABLE
      2        ONLINE  ONLINE       rac2                     Open,HOME=/u01/app/o
                                                             racle/product/19.0.0
                                                             /db_1,STABLE
ora.scan1.vip
      1        ONLINE  ONLINE       rac2                     STABLE
ora.scan2.vip
      1        ONLINE  ONLINE       rac1                     STABLE
ora.scan3.vip
      1        ONLINE  ONLINE       rac1                     STABLE
--------------------------------------------------------------------------------


K) APEX 설치 (옵션)

19c에 호환되는 APEX 설치
@?/apex/catapx.sql <APEX 관리자 암호> SYSAUX SYSAUX TEMP /i/ NONE



  • 레이블 없음