Windows Server 2019 에서 Oracle Database 19c for Microsoft Windows x64 설치 하기

Oracle Database 19c의 소프트웨어를 Windows Server 2019에 설치하고 데이터베이스 인스턴스 작성/기동/정지 방법을 소개합니다.

Oracle 12c(12.1.0.2) 버전 부터는 인스턴스 종류도 다음 두가지 구조중 하나를 선택해서 설치 할 수 있도록 변경되었습니다.

  • 일반 데이터베이스 인스턴스(General Purpose Database Instance)
    • 하나의 데이터베이스 인스턴스에 하나의 데이터베이스를 갖는 기존 구조
  • 콘테이너 데이터베이스 인스턴스(Container Database Instance)
    • 하나의 데이터베이스 인스턴스에 여러 개의 데이터베이스를 갖는 구조
    • 하나 이상의 사용자 정의 데이터베이스 개체 (PDB Instance)를 포함
    • PDB Instance는 독립적인 데이터베이스 개체
    • CDB Instance와 공유되는 메타데이터와 리소스를 사용

그래서 이 글에서는 작성할 데이터베이스 인스턴스 종류로 콘테이너 데이터베이스 인스턴스(Container Database Instance)안에 포함된 사용자 정의 데이터베이스 개체 (PDB Instance)를 선택했습니다.

소프트웨어 다운로드 및 설치 환경

edelivery 사이트 다운로드에는 다음과 같이 오라클 계정이 필요합니다. 없는경우 다음 화면 최 하단의 [계정 만들기]부터 시작하십시오

참고로 V982656-01.zip와 WINDOWS.X64_193000_db_home.zip를 비교하면 파일 이름만 다른 같은 파일입니다.

소프트웨어 설치하기

Optimal Flexible Architecture(OFA)는 Oracle홈으로 설치합니다. Oracle 홈은 Oracle 소프트웨어를 포함하는 디렉토리입니다. 그리고 Oracle Database 19c의 Oracle 홈 기본값은 다음과 같습니다.

<Oracle Base Directory>\product\19.3.0\dbhome_1
( C:\app\oracle\product\19.3.0\dbhome_1 )

Oracle Database 18c부터는 Oracle Database 소프트웨어의 설치 및 구성은 이미지 기반 설치로 변경 되었습니다. Oracle Database를 설치하려면 새 Oracle 홈을 만들고 이미지 파일을 새로 만든 Oracle 홈에 배치한 다음 구성 마법사를 실행하여 Oracle Database 제품을 등록합니다.

V982656-01.zip 또는 WINDOWS.X64_193000_db_home.zip의 압축을 풀어서 C:\app\oracle\product\19.3.0\dbhome_1 에 배치한 다음 setup파일을 실행합니다.

V982656-01.zip 또는 WINDOWS.X64_193000_db_home.zip 압축을 푼 결과를 C:\app\oracle\product\19.3.0\dbhome_1에 이동할 것

기본 선택되어 있는 [데스크톱 클래스(D)]에서 [다음(N)]버튼을 클릭합니다. 이 선택은 ORCL의 기본 데이터베이스 인스턴스를 생성합니다.

기본 선택되어 있는 [가상 계정 사용]에서 [다음]버튼을 클릭합니다.

Oracle Base입력창의 값을 다음과 같이 변경 하면 소프트웨어 위치 데이터베이스 파일 위치도 자동으로 다음과 같이 변경 됩니다. 데이터베이스 버전은 Enterprise Edition을 선택했습니다. [다음]버튼을 클릭합니다.

비밀번호는 권장 표준의 따르지 않아도 되지만 다음과 같이 경고 메시지가 표시되면 []버튼을 눌러 무시하고 다음 단계로 넘어 갈 수 있습니다. 이 글에서는 비밀번호에 password를 지정했습니다.

설치 구성 사항을 표시하기 위한 검사를 진행 하는데 시간이 걸립니다. 검사가 완료되고 [다음]버튼이 활성화 되면 버튼을 클릭합니다.

설치 프로그램의 설정 정보 데이터베이스 정보 요약이 표시됩니다. [설치(I)]버튼을 클릭합니다.

중요사항) 전역 데이터베이스 이름에 orcl.localdomain가 지정되어 있음을 기억하십시오.나중에 외부에서 sqlplus로 접속할 때 서비스명으로 사용됩니다.

프로그램 설치의 진행 진척을 표시합니다.

설치가 완료되면 다음과 같이 성공 화면이 표시됩니다.

Oracle Enterprise Manager Database Express URL: https://localhost:5500/em

환경 변수 확인

[Oracle Database 19c InstallShield 마법사]는 자동으로 관련 환경 변수를 설정합니다. 이를 regedit.exe명령을 실행해 확인하면 다음과 같습니다.

[Windows 로고 키Windows Key] + [R] 키를 눌러 “실행”대화 상자를 열고 “regedit”를 입력 실행 해서 [레지스트리 편집기] 화면을 표시합니다.

[컴퓨터\HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraDB19Home1]을 선택 하면 오른쪽 영역에 환경 변수 NLS_LANG, ORACLE_HOME, ORACLE_SID, ORACLE_BASE가 설정되어 있음을 확인 할 수 있습니다. 참고로NLS_LANG에 대해서는 ORA-12705: Cannot access NLS data files or invalid environment specified 글을 참조하십시오.

실행 파일의 %PATH%경로 확인하기

명령 프롬프트에서 환경변수 %PATH%값을 echo명령으로 확인하면 환경 변수 PATH에 Oracle실행 파일 패스[C:\app\oracle\product\19.3.0\dbhome_1\bin;]가 지정되어 있는 것을 확인 할 수 있습니다. 이로 인해 Oracle명령이 실행하는 경로에 존재하지 않아도 Oracle명령을 실행 할 수 있습니다.

[ Windows 로고 키Windows Key + R ] -> 실행 창 -> cmd를 입력한 후 [확인] 버튼을 클릭

특수 환경 변수 %PATH%에 대해서는 “Windows MS-DOS 환경 변수 설정 방법” 과 “Windows MS-DOS 특수 환경 변수 %PATH%” 글을 참조 하십시오

메뉴 등록 확인하기

[Windows 로고 키Windows Key]를 클릭하여 다음과 같이 설치된 소프트웨어 리스트를 확인 할 수 있습니다.

데이터베이스 서비스 확인

[ Windows 로고 키Windows Key  + R] -> [실행] 창 -> [services.msc] 입력 후 엔터 키를 눌러 [서비스]화면을 표시합니다.

서비스 일람에서 OracleServiceORLOracleOraDB19Home1TNSListener서비스가 실행 중 상태임을 확인합니다.

Oracle 사용자 인증 설정 확인하기

다음과 같이 C:\app\oracle\product\19.3.0\dbhome_1\network\admin\sqlnet.ora파일 내용에서 SQL.NET.AUTOracleHENTICATION_SERVICES에 NTS가 설정 되어있는 것을 확인합니다.이 설정은 Oracle Database 소프트웨어 설치 시의 기본 값입니다.
NTS 값으로 정의 되어있을 경우, 이것은 Windows의 사용자 인증 정보를 이용하겠다는 의미로, Oracle Instance에 대한 접속 여부를 현재 로그인 된 Windows의 사용자 권한으로 판단하겠다는 것을 의미합니다.
이 경우, 현재 접속 중인 사용자 계정이 ORA_DBA 그룹에 속해 있다면 “sqlplus / as sysdba” 명령을 사용해 접속할 수 있습니다.

# sqlnet.ora Network Configuration File: C:\app\oracle\product\19.3.0\dbhome_1\NETWORK\ADMIN\sqlnet.ora
# Generated by Oracle configuration tools.
# This file is actually generated by netca. But if customers choose to 
# install "Software Only", this file wont exist and without the native 
# authentication, they will not be able to connect to the database on NT.
SQLNET.AUTHENTICATION_SERVICES= (NTS)
NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)

참고로 SQLNET.AUTHENTICATION_SERVICES 대한 자세한 내용을 sqlplus / as sysdba 명령으로 접속이 안될 때 (ORA-01017) 글을 참조 하십시오.

Listener 상태확인

명령 프롬프트에서 다음 명령으로 Oracle Listener 상태를 확인합니다.

C:\>lsnrctl status
LSNRCTL for 64-bit Windows: Version 19.0.0.0.0 - Production on 09-11월-2021 17:24:28
Copyright (c) 1991, 2019, Oracle.  All rights reserved.
(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521)))에 연결되었습니다
... 중간 생략 ...
끝점 요약 청취 중...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1521ipc)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=SERVER-001)(PORT=5500))(Security=(my_wallet_directory=C:\APP\ORACLE\admin\orcl\xdb_wallet))(Presentation=HTTP)(Session=RAW))
서비스 요약...
"52448234712340b69f274bcc790ecfe0.localdomain" 서비스는 1개의 인스턴스를 가집니다.
  "orcl" 인스턴스(READY 상태)는 이 서비스에 대해 1 처리기를 가집니다.
"5ee59e2f343849bea1401047602915d4.localdomain" 서비스는 1개의 인스턴스를 가집니다.
  "orcl" 인스턴스(READY 상태)는 이 서비스에 대해 1 처리기를 가집니다.
"CLRExtProc" 서비스는 1개의 인스턴스를 가집니다.
  "CLRExtProc" 인스턴스(UNKNOWN 상태)는 이 서비스에 대해 1 처리기를 가집니다.
"orcl.localdomain" 서비스는 1개의 인스턴스를 가집니다.
  "orcl" 인스턴스(READY 상태)는 이 서비스에 대해 1 처리기를 가집니다.
"orclXDB.localdomain" 서비스는 1개의 인스턴스를 가집니다.
  "orcl" 인스턴스(READY 상태)는 이 서비스에 대해 1 처리기를 가집니다.
"orclpdb.localdomain" 서비스는 1개의 인스턴스를 가집니다.
  "orcl" 인스턴스(READY 상태)는 이 서비스에 대해 1 처리기를 가집니다.
명령이 성공적으로 수행되었습니다

주의사항) Oracle을 설치한 후 Listener상태를 확인하면 localhost 또는 127.0.0.1 가 기본 호스트명으로 설정되어 있습니다. 이 상태로는 외부에서 접속할 수 없습니다. 외부에서 접속가능한 컴퓨터명 (예:SERVER-001) 또는 IP Address (예: 192.168.220.130 ) 를 지정해 주십시오. 지정방법은 다음과 같습니다.

우선 다음과 같이 Oracle Listener를 정지합니다.

C:\>lsnrctl stop
LSNRCTL for 64-bit Windows: Version 19.0.0.0.0 - Production on 09-11월-2021 18:54:24
Copyright (c) 1991, 2019, Oracle.  All rights reserved.
(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521)))에 연결되었습니다
명령이 성공적으로 수행되었습니다

다음으로 listener.ora 파일에서 (HOST =localhost ) 부분을 다음과 같이 수정합니다.

C:\>notepad C:\app\oracle\product\19.3.0\dbhome_1\NETWORK\ADMIN\listener.ora
# listener.ora Network Configuration File: C:\app\oracle\product\19.3.0\dbhome_1\NETWORK\ADMIN\listener.ora
# Generated by Oracle configuration tools.

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = CLRExtProc)
      (ORACLE_HOME = C:\app\oracle\product\19.3.0\dbhome_1)
      (PROGRAM = extproc)
      (ENVS = "EXTPROC_DLLS=ONLY:C:\app\oracle\product\19.3.0\dbhome_1\bin\oraclr19.dll")ㅅ
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.220.130)(PORT = 1521))
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
  )

수정 후 컴퓨터의 재 기동 하거나 다음과 같이 Oracle Listener를 재 기동 합니다.

C:\>lsnrctl start
LSNRCTL for 64-bit Windows: Version 19.0.0.0.0 - Production on 09-11월-2021 18:54:32
Copyright (c) 1991, 2019, Oracle.  All rights reserved.
시작 tnslsnr: 잠시만 기다리세요...
TNSLSNR for 64-bit Windows: Version 19.0.0.0.0 - Production
시스템 매개변수 파일은 C:\app\oracle\product\19.3.0\dbhome_1\network\admin\listener.ora 입니다
C:\app\oracle\diag\tnslsnr\WIN-8BV8FTTLTE4\listener\alert\log.xml (으)로 로그 메시지를 기록했습니다
리스닝이: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.220.130)(PORT=1521)))
리스닝이: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1521ipc)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.220.130)(PORT=1521)))에 연결되었습니다
... 중간 생략 ...
끝점 요약 청취 중...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.220.130)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1521ipc)))
서비스 요약...
"CLRExtProc" 서비스는 1개의 인스턴스를 가집니다.
  "CLRExtProc" 인스턴스(UNKNOWN 상태)는 이 서비스에 대해 1 처리기를 가집니다.
명령이 성공적으로 수행되었습니다

lsnrctl start 실행 직후에는 CLRExtProc인스턴스만 리스트에 존재하지만 몇분 정도 지나서 확인 하면 다음과 같이 모든 인스턴스가 확인됩니다.

C:\>lsnrctl status
LSNRCTL for 64-bit Windows: Version 19.0.0.0.0 - Production on 09-11월-2021 19:01:49
Copyright (c) 1991, 2019, Oracle.  All rights reserved.
(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.220.130)(PORT=1521)))에 연결되었습니다
... 중간 생략 ...
끝점 요약 청취 중...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.220.130)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1521ipc)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=SERVER-001)(PORT=5500))(Security=(my_wallet_directory=C:\APP\ORACLE\admin\orcl\xdb_wallet))(Presentation=HTTP)(Session=RAW))
서비스 요약...
"52448234712340b69f274bcc790ecfe0.localdomain" 서비스는 1개의 인스턴스를 가집니다.
  "orcl" 인스턴스(READY 상태)는 이 서비스에 대해 1 처리기를 가집니다.
"5ee59e2f343849bea1401047602915d4.localdomain" 서비스는 1개의 인스턴스를 가집니다.
  "orcl" 인스턴스(READY 상태)는 이 서비스에 대해 1 처리기를 가집니다.
"CLRExtProc" 서비스는 1개의 인스턴스를 가집니다.
  "CLRExtProc" 인스턴스(UNKNOWN 상태)는 이 서비스에 대해 1 처리기를 가집니다.
"orcl.localdomain" 서비스는 1개의 인스턴스를 가집니다.
  "orcl" 인스턴스(READY 상태)는 이 서비스에 대해 1 처리기를 가집니다.
"orclXDB.localdomain" 서비스는 1개의 인스턴스를 가집니다.
  "orcl" 인스턴스(READY 상태)는 이 서비스에 대해 1 처리기를 가집니다.
"orclpdb.localdomain" 서비스는 1개의 인스턴스를 가집니다.
  "orcl" 인스턴스(READY 상태)는 이 서비스에 대해 1 처리기를 가집니다.
명령이 성공적으로 수행되었습니다

sqlplus.exe명령으로 로컬 접속 확인하기

명령 프롬프트에서 sqlplus system/password로 접속할 수 있는지 확인합니다. 접속에 문제 없다면 다음과 같이 접속결과를 표시합니다.

C:\>sqlplus system/password
SQL*Plus: Release 19.0.0.0.0 - Production on 화 11월 9 17:10:21 2021
Version 19.3.0.0.0
Copyright (c) 1982, 2019, Oracle.  All rights reserved.
다음에 접속됨:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0

외부 컴퓨터에서 sqlplus.exe명령으로 원격 접속 확인하기

외부 컴퓨터에서 sqlplus명령으로 원격 접속하면 다음과 같이 Error가 발생합니다.

C:\>sqlplus system/password@192.168.220.130/orcl.localdomain
SQL*Plus: Release 12.2.0.1.0 Production on Sun Sep 19 17:28:01 2021
Copyright (c) 1982, 2016, Oracle.  All rights reserved.
ERROR:
ORA-12170: TNS:Connect timeout occurred
Enter user-name:

“ORA-12170: TNS:Connect timeout occurred” Error를 해결하기 위해서는 다음과 같이 Windows Defender 방화벽에 Oracle Listener Port 1521을 허가합니다.

[제어판\모든 제어판 항목] 화면에서 “Windows Defender 방화벽” 아이콘을 클릭해서[제어판\모든 제어판 항목\ Windows Defender 방화벽]설정 화면을 표시합니다.

그리고 [제어판\모든 제어판 항목\ Windows Defender 방화벽]설정 화면의 왼쪽 메뉴에서 [고급 설정] 링크를 눌러 [고급 보안이 포함된 Windows Defender 방화벽] 화면을 표시합니다.

제어판\모든 제어 항목\Windows Defender 방화벽

마지막으로 [고급 보안이 포함된 Windows Defender 방화벽] 화면의 인바운드 규칙에서 [새 규칙…]을 눌러 [새 인바운드 규칙 마법사]화면을 표시합니다.

[새 인바운드 규칙 마법사]화면의 [단계:규칙 종류]에서 [포트(O)]를 선택해 [다음(N)]버튼을 눌러 다음 화면으로 진행합니다.

[새 인바운드 규칙 마법사]화면의 [단계:프로토콜 및 포트]에서 [TCP(T)]를 선택, [특정 로컬 포트(S)]에서 1521 값을 입력하고 [다음(N)]버튼을 눌러 다음 화면으로 진행합니다.

[새 인바운드 규칙 마법사]화면의 [단계:작업]에서 [연결 허용(A)]를 선택하고 [다음(N)]버튼을 눌러 다음 화면으로 진행합니다.

[새 인바운드 규칙 마법사]화면의 [단계:프로필]에서 [도메인(D)], [개인(P)], [공용(U)] 모두 체크를 하고 [다음(N)]버튼을 눌러 다음 화면으로 진행합니다.

[새 인바운드 규칙 마법사]화면의 [단계:이름]에서 [이름(N)]과 [설명(옵션)(D)]을 입력하고 [마침(N)]버튼을 눌러 [고급 보안이 포함된 Windows Defender 방화벽] 화면으로 돌아갑니다.

[새 인바운드 규칙 마법사]화면의 인바우드 규칙에서 오른쪽 마우스 클릭하면 [새로 고침]콘텍스트 메뉴가 표시됩니다. 여기서 [새로 고침]을 눌러 Oracle 인바운드 규칙이 추가 되었음을 확인합니다.

Windows Defender 방화벽에 Oracle Listener Port 1521을 허가함으로서 다음과 같이 외부 컴퓨터에서 sqlplus명령으로 원격 접속됨을 확인 할 수 있습니다.

C:\>set nls_lang=KOREAN_KOREA.KO16MSWIN949
C:\>sqlplus system/password@192.168.220.130/orcl.localdomain
SQL*Plus: Release 12.2.0.1.0 Production on 화 11월 9 19:26:20 2021
Copyright (c) 1982, 2016, Oracle.  All rights reserved.
마지막 성공한 로그인 시간: 화 11월 09 2021 17:10:21 +09:00
다음에 접속됨:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production

orcl.localdomain 컨테이너 데이터베이스(CDB)에 연결하기

다음과 같이 컨테이너 데이터 베이스(CDB)의 Root 컨테이너 CDB$ROOT에 접속 합니다. 그리고 데이터베이스에서 사용 가능한 서비스를 v$services에서 표시합니다.

C:\>sqlplus / as sysdba
SQL> COLUMN name FORMAT A15
     COLUMN pdb FORMAT A10
     SELECT name, pdb FROM v$services;
NAME            PDB
--------------- ----------
orclXDB          CDB$ROOT
SYS$BACKGROUND   CDB$ROOT
SYS$USERS        CDB$ROOT
orclpdb          ORCLPDB

orcl.localdomain CDB$ROOT
SQL>

show con_nameshow con_id 명령으로 현재 컨테이너 이름과 ID를 표시합니다.

SQL> show con_name
CON_NAME
------------------------------
CDB$ROOT

SQL> show con_id
CON_ID
------------------------------
1

현재 컨테이너가 CDB인경우 show pdbs 명령으로 모든 플러그인할 수 있는 데이터베이스(PDB)를 표시합니다. PDB$SEED는 신규 PDB를 만들기위한 템플릿 PDB 입니다. 현재 사용할 수 있는 플러그인 컨테이너는 ORCLPDB 입니다.

SQL> show pdbs
    CON_ID CON_NAME                       OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
         2 PDB$SEED                       READ ONLY  NO
         3 ORCLPDB                        MOUNTED

주의사항) 플러그인 컨테이너 ORCLPDBMOUNTED 상태에서는 사용할 수 없습니다. 다음 명령으로 이용 가능한 상태로 변경해야 합니다.

SQL> alter pluggable database orclpdb open;
SQL> show pdbs
    CON_ID CON_NAME                       OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
         2 PDB$SEED                       READ ONLY  NO
         3 ORCLPDB                        READ WRITE NO

orcl.localdomain 컨테이너 데이터 베이스(CDB) 기본 정보

Oracle Default 사용자 확인하기

다음 명령으로 기본적으로 작성된 Oracle 사용자 명, 계정 상태 , 적용 Profile 를 확인할 수 있습니다.

C:\>sqlplus / as sysdba
SQL*Plus: Release 19.0.0.0.0 - Production on 화 11월 9 20:02:11 2021
Version 19.3.0.0.0
Copyright (c) 1982, 2019, Oracle.  All rights reserved.
다음에 접속됨:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
SQL> COLUMN username format A23;
     COLUMN account_status format A17;
     COLUMN profile FORMAT A16;
     SET PAGESIZE 100;
     SELECT username,account_status,profile FROM dba_users;
USERNAME                ACCOUNT_STATUS    PROFILE
----------------------- ----------------- ----------------
SYS                     OPEN              DEFAULT
SYSTEM                  OPEN              DEFAULT
... 중간 생략 ...
ORDPLUGINS              LOCKED            DEFAULT
SI_INFORMTN_SCHEMA      LOCKED            DEFAULT
36 행이 선택되었습니다.
SQL>

Oracle 사용자의 default profile설정값을 확인하기

다음 SQL문으로 Oracle 사용자의 default profile설정값을 확인할 수 있습니다. 다음은 로그인 실패 허용 횟수(FAILED_LOGIN_ATTEMPTS)에 대한 각각의 profile설정값을 확인하고 있습니다.

C:\>sqlplus / as sysdba
SQL> COLUMN profile FORMAT A16;
     COLUMN resource_type FORMAT A13;
     COLUMN limit FORMAT A6;
     SELECT profile,resource_type,limit 
       FROM dba_profiles 
      WHERE resource_name='FAILED_LOGIN_ATTEMPTS';
 PROFILE          RESOURCE_TYPE LIMIT
 ---------------- ------------- ------
 DEFAULT          PASSWORD      10
 ORA_STIG_PROFILE PASSWORD      3

Oracle ORCL초기 파라미터 정보

다음 SQL문으로 Oracle 인스턴스 작성 직후의 초기 파라미터 정보를 확인할 수 있습니다. oracle19c_orcl_v$parameter.txt 파일의 자세한 내용은 여기를 참조하십시오.

C:\>sqlplus / as sysdba
SQL> spool oracle19c_orcl_vSparameter.txt
     set linesize 146
     SET PAGESIZE 500
     COLUMN value FORMAT A95
     COLUMN name FORMAT A45
     select name , value FROM v$parameter;
NAME                                VALUE
----------------------------------- ------------
lock_name_space
processes                           300
sessions                            472
timed_statistics                    TRUE
timed_os_statistics                 0
... 중간 생략 ...
pdb_template
shrd_dupl_table_refresh_rate        60
multishard_query_data_consistency   strong
multishard_query_partial_results    not allowed
443 행이 선택되었습니다.
SQL> spool off

ORCLPDB 플러그인 데이터베이스(PDB)에 연결하기

sqlplus /@localhost:1521/orclpdb.localdomain as sysdba 명령으로 orclpdb.localdomain 서스비에 접속 함으로써 ORCLPDB 플러그인 데이터베이스를 사용할 수 있습니다. port번호 1521은 생략할 수 있습니다. 또는 alter session set container = orclpdb;명령으로도 플러그인 데이터베이스(PDB) 를 사용 할 수 있습니다.

C:\>sqlplus /@localhost:1521/orclpdb.localdomain as sysdba
SQL> COLUMN name FORMAT A15
     COLUMN pdb FORMAT A10
     SELECT name, pdb FROM v$services;
NAME            PDB
--------------- ----------
orclpdb          ORCLPDB
SQL>

show con_nameshow con_id 명령으로 현재 컨테이너 이름과 ID를 표시합니다.

SQL> show con_name
CON_NAME
------------------------------
ORCLPDB

SQL> show con_id
CON_ID
------------------------------
3

현재 컨테이너 가 PDB인경우 show pdbs 명령으로는 현재 컨테이너 ORCLPDB 만 표시됩니다.

SQL> show pdbs
    CON_ID CON_NAME                       OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
         3 ORCLPDB                         READ WRITE NO

ORCLPDB 플러그인 데이터베이스(PDB) 기본 정보

sqlplus /@localhost:1521/orclpdb.localdomain as sysdba 명령 접속으로 위 CDB$ROOT 컨테이너 데이터 베이스(CDB) 기본 정보와 같은 SQL문을 사용했을 때의 차이점은 다음과 같습니다.

Oracle Default 사용자 확인하기

C:\>sqlplus /@localhost:1521/orclpdb.localdomain as sysdba
또는
C:\>sqlplus system/password@localhost:1521/orclpdb.localdomain
SQL> COLUMN username format A23;
     COLUMN account_status format A17;
     COLUMN profile FORMAT A16;
     SET PAGESIZE 100;
     SELECT username,account_status,profile FROM dba_users;
USERNAME                ACCOUNT_STATUS    PROFILE
----------------------- ----------------- ----------------
SYS                     OPEN              DEFAULT
SYSTEM                  OPEN              DEFAULT
... 중간 생략 ...
HR                      EXPIRED & LOCKED  DEFAULT
PDBADMIN                OPEN              DEFAULT
... 중간 생략 ...
MDDATA                  LOCKED            DEFAULT
37 행이 선택되었습니다.

Oracle 사용자의 default profile설정값을 확인하기

실행 결과는 CDB$ROOT 컨테이너 데이터 베이스(CDB) 결과 값과 같습니다.

Oracle ORCL 초기 파라미터 정보

다음 파라미터 값에만 차이 점이 있습니다.

CDB$ROOT 컨테이너 데이터 베이스(CDB) 경우

parallel_servers_target                       40
common_user_prefix                            C##

ORCLPDB 플러그인 데이터베이스(PDB)

parallel_servers_target                       16
common_user_prefix                            

ORCL Instance의 기본 값 확인하기

다음 SQL문으로 기본적으로 작성된 Oracle User를 확인 할 수 있습니다.

기본으로 작성된 Oracle Default 사용자 확인하기
Oracle Database 12c 이상에서 기본으로 설정된 Oracle 사용자 목록을 확인하고 계정 상태 및 적용된 프로필을 검토하는 방법을 알아봅니다. SQL 쿼리를 사용하여 Oracle Default 사용자를 확인하세요.

다음 SQL문으로 Oracle User에 연결된 profile에 대해서 각각의 resource 설정 값을 확인할 수 있습니다.

Oracle 사용자의 default profile설정값을 확인하기
Oracle 사용자의 기본 프로파일 설정을 확인하는 방법을 알아보세요. 특히, Oracle Database 12.2.0.1.0 for Microsoft Windows x64에서 SQL 쿼리를 사용하여 허용된 로그인 실패 횟수를 확인합니다.
제목과 URL을 복사했습니다