데이터베이스 업데이트
이 문서에서는 콘솔 및 API를 사용하여 DB 시스템에서 데이터베이스를 업데이트하는 절차에 대해 설명합니다.
필요한 IAM 정책
Oracle Cloud Infrastructure를 사용하려면 관리자가 정책의 보안 접근 권한을 부여해야 합니다. SDK, CLI 또는 기타 툴과 함께 콘솔 또는 REST API를 사용하는 경우 이 액세스가 필요합니다. 권한이 없거나 권한이 부여되지 않았음을 알리는 메시지가 표시되면 관리자에게 어떤 유형의 액세스 권한이 있는지, 어떤 구획에서 작업할 수 있는지 확인하십시오.
관리자의 경우: 데이터베이스 관리자가 Oracle Cloud 데이터베이스 시스템을 관리할 수 있도록 설정의 정책을 통해 지정된 그룹이 데이터베이스 및 관련 데이터베이스 리소스로 모든 작업을 수행할 수 있습니다.
정책을 처음 사용하는 경우 정책 시작하기 및 공통 정책을 참조하십시오. 데이터베이스 쓰기 정책에 대한 자세한 내용은 데이터베이스 서비스에 대한 세부정보를 참조하십시오.
데이터베이스 업데이트 정보
Oracle은 해당 DB 시스템 내에서 데이터베이스를 업데이트하기 전에 DB 시스템을 업데이트할 것을 권장합니다.
Oracle Database의 경우 네 가지 최신 버전(N-3)에 대한 업데이트를 사용할 수 있습니다. 예를 들어, 인스턴스가 21c를 사용하고 있고 제공된 21c의 최신 버전이 21.10.0.0인 경우 21.10.0.0, 21.9.0.0, 21.8.0.0 및 21.7.0.0를 Oracle Database 업데이트에 사용할 수 있습니다. 이러한 업데이트 중 하나를 사용할 수 있지만 Oracle은 최신 업데이트를 사용할 것을 권장합니다.
커스텀 데이터베이스 소프트웨어 이미지를 사용하여 Oracle Database를 업데이트할 수도 있습니다. 소프트웨어 이미지로 업데이트할 때 Oracle은 네 가지 최신 버전(N-3)을 기반으로 이미지 업데이트를 지원합니다.
다음은 2022년 4월 12.1 및 12.2 업데이트 및 2022년 7월 19c 업데이트에 대한 Oracle 기반 업데이트에만 적용됩니다.
중간 업데이트(이전의 일회성 패치)가 설치되어 있는 경우 새 업데이트를 설치하기 전에 해당 중간 업데이트가 자동으로 롤백됩니다. 새 업데이트에 중간 업데이트가 포함되지 않은 경우 새 업데이트 설치를 완료한 후 중간 업데이트를 다시 설치할 수 있습니다.
데이터베이스에 중간 업데이트가 설치되어 있는 경우 새 업데이트 후 중간 업데이트를 설치하지 않도록 Oracle은 사용자정의 데이터베이스 소프트웨어 이미지를 사용하고 해당 이미지를 사용하여 데이터베이스를 업데이트할 것을 권장합니다.
사전 검사를 실행한 후 dbcli에서 다음 명령을 실행하여 추가 중간 업데이트를 설치했는지 여부를 식별할 수 있습니다.
dbcli describe-job -i <job id>
여기서 job id
(dbcli list-jobs
)은 사전 검사 실행의 작업 ID입니다.
Oracle 홈의 모든 변경사항이 새로 업데이트되고 설치된 데이터베이스로 복사됩니다.
주:
- Oracle은 데이터베이스 홈 내의 파일을 변경하지 않는 것이 좋습니다.
- 데이터베이스 홈에 대한 모든 변경사항이 올바르게 복사되었는지 확인해야 합니다. 데이터베이스 홈의 파일 또는 폴더(예:
tnsnames.ora
,listener.ora
등)를 복사한 경우 해당 파일을 수동으로 백업해야 합니다.
DB 시스템에는 OCI 내의 ID 및 오브젝트 스토리지 끝점에 대한 액세스 권한이 있어야 합니다. 전용 서브넷에서 실행되는 DB 시스템이 서비스 게이트웨이와 추가 게이트웨이(예: NAT 게이트웨이)가 없는 경우에만 구성된 경우 오브젝트 스토리지뿐 아니라 모든 Oracle 서비스에 대한 접근을 허용하도록 서비스 게이트웨이가 설정되어 있는지 확인해야 합니다. 다른 방법으로 ID 및 오브젝트 스토리지 끝점에 도달할 수 있는 경우 변경할 필요가 없습니다.
현재 사용 가능한 데이터베이스 업데이트 목록에 대한 자세한 내용은 현재 사용 가능한 업데이트를 참조하십시오.
주:
OPATCH 도구를 사용하여 OJVM 업데이트를 수동으로 적용해야 합니다.데이터베이스 소프트웨어 이미지를 사용하여 중간 업데이트 적용
DB 시스템에 중간 업데이트를 적용하지 않는 것이 좋습니다. 대신 필요한 수정 사항이 포함된 데이터베이스 소프트웨어 이미지를 생성하고 배치해야 합니다. GI 홈에 중간 업데이트를 적용하기 위해 데이터베이스 소프트웨어 이미지를 사용할 수 없는 경우에만 SR(서비스 요청)을 제출하고 중간 업데이트를 다운로드하도록 지원 지원을 요청할 수 있습니다.
데이터베이스 소프트웨어 이미지에 대한 자세한 내용은 소프트웨어 이미지를 참조하십시오.
데이터베이스 업데이트
OCI 콘솔을 사용하여 이전 업데이트 릴리스에서 데이터베이스를 업데이트하려면 다음 단계를 수행하십시오.
- DB 시스템 목록 페이지에서 작업할 데이터베이스가 포함된 DB 시스템을 선택합니다. 목록 페이지 또는 DB 시스템을 찾는 데 도움이 필요하면 DB 시스템 나열을 참조하십시오.
- 데이터베이스 탭에서 작업할 데이터베이스를 선택합니다.
- 데이터베이스 세부정보 페이지에서 업데이트 탭을 선택하여 데이터베이스에 사용 가능한 업데이트 목록을 봅니다.
- 관심 있는 업데이트에 대한 작업 메뉴에서 다음 작업 중 하나를 선택합니다.
- 세부 정보 보기: 이 업데이트에 대한 세부 정보를 봅니다.
- 사전 검사: 업데이트가 성공적으로 적용될 수 있는지 확인하기 위한 전제 조건을 확인합니다.
- 업데이트 적용: 선택한 업데이트를 적용합니다. Oracle은 업데이트를 적용하기 전에 사전 검사 작업을 실행할 것을 권장합니다.
목록에서 상태는 작업 상태를 표시합니다. 업데이트가 적용되는 동안 상태는 업데이트로 표시됩니다. 데이터베이스 상태는 업데이트로도 표시됩니다. 데이터베이스 및 해당 리소스에 대한 수명 주기 작업을 일시적으로 사용할 수 없습니다. 업데이트가 성공적으로 완료되면 상태가 적용됨으로 변경되고 데이터베이스 상태가 사용 가능으로 변경됩니다.
데이터베이스 업데이트 내역 보기
OCI 콘솔을 사용하여 데이터베이스의 업데이트 내역을 보려면 다음 단계를 수행하십시오.
주:
콘솔의 업데이트 기록에는 dbcli 또는 Patch 유틸리티와 같은 명령줄 도구를 사용하여 적용된 업데이트가 표시되지 않습니다.- DB 시스템 목록 페이지에서 작업할 데이터베이스가 포함된 DB 시스템을 선택합니다. 목록 페이지 또는 DB 시스템을 찾는 데 도움이 필요하면 DB 시스템 나열을 참조하십시오.
- 데이터베이스 탭에서 작업할 데이터베이스를 선택합니다.
- 세부정보 페이지에서 업데이트 내역 탭을 선택하여 해당 데이터베이스에 대한 업데이트 및 업그레이드 작업 내역을 봅니다.
중간 업데이트 적용
주:
이 항목은 단일 노드 및 다중 노드 RAC DB 시스템의 데이터베이스 홈에만 적용됩니다.특정 결함을 수정하기 위해 중간 업데이트를 적용하려면 이 절의 절차를 따릅니다. Opatch
유틸리티를 사용하여 데이터베이스 홈에 중간 업데이트를 적용합니다.
주:
절차 예에서 데이터베이스 홈 디렉토리는 /u02/app/oracle/product/12.1.0.2/dbhome_1이고 업데이트 번호는 26543344입니다.- My Oracle Support에서 적용 가능한 중간 업데이트를 가져옵니다.
- 업데이트
README.txt
파일의 정보를 검토합니다. 이 파일에는 업데이트를 성공적으로 적용하기 위해 따라야 할 추가 및/또는 사용자 정의 지침이 포함될 수 있습니다. - SCP 또는 SFTP를 사용하여 대상 데이터베이스에 업데이트를 배치합니다.
- 데이터베이스 홈에서 실행 중인 각 데이터베이스를 종료합니다.
srvctl stop database -db <db name> -stopoption immediate -verbose
- 대상 Oracle 홈을 가리키도록 Oracle 홈 환경 변수를 설정합니다.
sudo su - oracle export ORACLE_HOME=/u02/app/oracle/product/12.1.0.2/dbhome_1
- 업데이트를 배치한 디렉토리로 변경하고 업데이트의 압축을 풉니다.
cd <working directory where opatch is stored> unzip p26543344_122010_Linux-x86-64.zip
- 압축이 풀린 업데이트로 디렉토리로 변경하고 충돌이 있는지 확인합니다.
cd 26543344 $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -ph ./
- 갱신 적용.
$ORACLE_HOME/OPatch/opatch apply
- 업데이트가 성공적으로 적용되었는지 확인합니다.
$ORACLE_HOME/OPatch/opatch lsinventory -detail -oh $ORACLE_HOME
- 데이터베이스 홈에 데이터베이스가 포함된 경우 데이터베이스를 재시작합니다.
$ORACLE_HOME/bin/srvctl start database -db <db name>
그렇지 않으면 다음 명령을
root
사용자로 실행하십시오.# /u01/app/<db version>/grid/bin/setasmgidwrap o=/u01/app/oracle/product/<db version>/dbhome_1/bin/oracle
- readme에 업데이트에
sqlpatch
구성 요소가 있다고 나타나면 각 데이터베이스에 대해datapatch
명령을 실행합니다.datapatch
를 실행하기 전에 모든 PDB(플러그인할 수 있는 데이터베이스)가 열려 있는지 확인합니다. PDB를 열려면 SQL*Plus를 사용하여 PDB에 대해 다음을 실행할 수 있습니다.ALTER PLUGGABLE DATABASE <pdb name> OPEN READ WRITE
$ORACLE_HOME/OPatch/datapatch