Oracle 데이터베이스 검색

  • 릴리스 버전: Xanadu
  • 업데이트 날짜 2024년 08월 01일
  • 읽기13분
  • 검색은 UNIX 또는 Windows 운영 체제에서 실행하는 Oracle 데이터베이스 인스턴스를 식별할 수 있습니다. 또한 Real Application Clusters(RAC)를 실행하는 Oracle 클러스터웨어를 찾을 수도 있습니다.

    패턴은 Oracle 설치의 검색을 수행합니다. 이러한 패턴은 새 인스턴스에 대해 여러 프로브를 대체합니다. 프로브를 계속 사용하려면 가로 검색 프로브를 비활성화하여 패턴을 시행한 다음 필요한 프로브를 활성화합니다.
    주:
    UNIXOracleWindowsOracle은 RAC 단일 노드 검색을 지원하지 않습니다.
    검색에서는 데이터베이스 카탈로그라고 하는 Oracle 데이터베이스 자체를 검색하지 않습니다.
    주:
    프로브-패턴 마이그레이션에 대한 자세한 내용은 지식 문서 KB0694477을 참조하십시오.

    자격 증명

    다음 자격 증명을 구성합니다.
    자격 증명 유형 추가 정보

    애플리케이션 자격 증명

    애플리케이션 자격 증명은 다음 두 가지 사용 사례에 필수입니다.
    • 원격 Oracle DB 인스턴스에 대해 SQL 쿼리 실행
    • 데이터베이스 링크에 대한 연결 생성
    • 활성화 상태의 소프트웨어 자산 관리
    Oracle 데이터베이스를 설치하는 동안 구성한 데이터베이스 사용자를 추가해야 합니다. CI 유형으로 Oracle 인스턴스 [cmdb_ci_db_ora_instance]를 지정합니다.

    또한 사용자는 tnsnames.ora 매개변수 파일에 액세스할 수 있어야 합니다. tnsnames.ora가 올바르게 구성되어 있고 대상 Windows 호스트의 Oracle 경로에 있어야 합니다. 또한 활용한 검색 자격 증명이 tnsnames.ora 파일을 읽을 수 있는지 검증합니다.

    사용자는 SQL*Plus 명령줄 도구에 대한 권한과 다음 테이블에 대해 SELECT 쿼리를 실행할 수 있는 권한이 필요합니다.
    • PRODUCT_COMPONENT_VERSION
    • V$VERSION
    • V$DATABASE
    • V$PARAMETER
    Windows 자격 증명 또한 애플리케이션 자격 증명 외에 Windows 및 SSH 자격 증명을 사용할 수 있습니다. Windows 자격 증명의 경우 사용자에게 tnsnames.ora 파일에 대한 읽기 권한이 있어야 합니다. SSH 자격 증명에서 oratab 파일에 대한 읽기 권한과 시스템 매개변수 파일에 대한 읽기 권한을 허용해야 합니다.

    및 에 필요한 검색 권한 있는 명령 목록은 조직에서 Unix 기반 호스트를 검색하고 매핑하기 위해 승격된 권한이 필요한 명령 목록을 참조하십시오권한이 있는 사용자를 필요로 하는 서비스 매핑 명령.서비스 매핑

    SSH 자격 증명

    추가 요구 사항

    검색은 ora_pmon_으로 시작하는 프로세스에서 UNIX의 실행 중인 Oracle 데이터베이스 인스턴스를 식별합니다. 이 프로세스가 쓰기 검색을 위해 지정한 IP 범위에서 실행되고 있는지 확인합니다. 검색은 oracle.exe 프로세스에서 Windows의 실행 중인 Oracle 데이터베이스 인스턴스를 식별합니다. 이 프로세스가 지정된 IP 범위에서 실행되도록 하십시오.

    Oracle 클러스터웨어의 경우 호스트 이름을 IP 주소와 연결하는 /etc/hosts/ 파일을 읽을 수 있는 권한도 필요합니다.

    다음 명령은 Oracle 클러스터웨어에 대해 실행됩니다.
    명령 설명

    ps -ef | grep 'crsd.bin' |grep -v grep

    Oracle CRS 프로세스가 실행 중인지 확인합니다.

    ps -ef |grep 리스너 | grep -v $$ | 머리 -1 | awk '{print $8}'

    Oracle 홈을 가져옵니다.

    /u01/앱/12.1.0.2/그리드/bin/olsnodes -c | egrep -v '오류|코드 반환'

    Oracle CRS 클러스터 이름을 가져옵니다.

    /u01/app/12.1.0.2/grid/bin/crsctl 쿼리 crs softwareversion| egrep -v '오류|코드 반환'

    Oracle CRS 클러스터 ID를 가져옵니다.

    /u01/app/12.1.0.2/grid/bin/crsctl 쿼리 crs softwareversion| egrep -v '오류|코드 반환'

    Oracle CRS 버전을 가져옵니다.

    /u01/앱/12.1.0.2/그리드/bin/olsnodes | egrep -v '오류|코드 반환'

    Oracle CRS 노드를 가져옵니다.

    /u01/app/12.1.0.2/grid/bin/crsctl 상태 서버 | egrep -v '오류|코드 반환'

    Oracle CRS 노드 상태를 가져옵니다.

    /u01/app/12.1.0.2/grid/bin/crsctl stat res -f | tr '\n' '#'

    Oracle CRS 자원을 가져옵니다.
    /u01/app/12.1.0.2/grid/bin/crsctl stat res -p | grep -v CHECK_R |grep -v error |grep -v failed Oracle CRS VIP 자원을 가져옵니다.

    /u01/app/12.1.0.2/grid/bin/srvctl config scan | tr '\n' ‘ '

    Oracle RAC SCAN VIP 구성을 가져옵니다.

    /u01/app/12.1.0.2/grid/bin/srvctl 구성 vip -node ol7-121-rac1| egrep ' 이름' | awk '{print $3}'

    Oracle CRS VIP 이름을 가져옵니다.

    /u01/app/12.1.0.2/grid/bin/srvctl 구성 vip -node ol7-121-rac1| grep ' IPv4 주소:' | awk '{print $4}'

    Oracle CRS VIP ip_addres를 가져옵니다.
    실행할 Sudo 권한: sudo /u01/app/12.1.0.2/grid/bin/ocrcheck | egrep -v 'error|return code'

    분류 규칙, 패턴 및 프로브

    검색에서는 Oracle 데이터베이스 검색의 다음 분류 규칙, 프로브 및 패턴을 사용합니다.
    분류 규칙 프로브 트리거 패턴
    Oracle 인스턴스
    • 가로 검색 프로브: 패턴 시작
    • Powershell-Oracle - 인스턴스 PFile(Windows 용)*
    • Powershell-Oracle - 인스턴스 버전(Windows 용)*
    • SSHCommand-Oracle - 인스턴스 상세 정보(Linux 용)*
    애플리케이션 패턴:
    • Windows 기반 Oracle DB 패턴
    • UNIX 기반 Oracle DB 패턴

    다음은 Linux 서버 패턴에서 사용하는 공유 라이브러리 패턴입니다.

    UNIX 클러스터 - ORACLE 클러스터웨어
    주:
    이 공유 라이브러리 패턴은 crsd.bin 프로세스가 Oracle 데이터베이스 서버에서 실행 중인 경우 트리거됩니다.
    Oracle Listener SSHCommand-Oracle - 수신기 세부 정보 없음
    * 새 인스턴스에서 비활성화되는 프로브입니다.

    패턴을 사용하려면 분류 규칙의 수평 패턴 프로브에 올바른 패턴이 지정되어 있는지 검증합니다. 지침은 분류 규칙에 수평 패턴 프로브 추가 문서를 참조하십시오.

    수집된 데이터

    다음 데이터는 UNIX 및 Windows의 Oracle 인스턴스 [cmdb_ci_db_ora_instance] 테이블에 수집됩니다.
    표 1. UNIX 컴퓨터의 수집된 데이터
    레이블 필드 이름 추가 정보
    SID sid Ora_pmon_으로 시작하는 프로세스의 이름에서 받습니다.
    설치 디렉터리 install_directory ORA_HOME 경로에서 받습니다.
    버전 version 받는 순서:
    • ORA_HOME/bin/sqlplus/NOLOG 명령의 출력에서
    • ORA_HOME/bin/lsnrctl 상태 명령의 출력에서
    • ORA_HOME 경로에서
    매개변수 파일 Pfile 다음 위치에서 시스템 매개변수 파일의 위치를 탐색합니다. 탐색한 위치 중 하나에 이 파일이 없는 경우 검색을 통해 파일을 찾을 수 없으며 오류를 보고합니다.
    • oracle_home/dbs/spfileSID.ora
    • oracle_home/dbs/spfile.ora
    • oracle_home/dbs/initSID.ora
    Oracle 홈 oracle_home ORATAB 파일에서 받습니다.
    에디션 edition context.xml 파일에서 받습니다.
    이름 name SID 이름과 호스트 이름을 SID@HOST_NAME 형식으로 조합합니다.
    TCP 포트 tcp_port tnsnames.ora 파일 또는 lsnrctl 상태 명령에서 받습니다. 유효한 정보가 검색되지 않은 경우 기본 포트 1521이 할당됩니다.
    주:
    패턴 확장과 수집된 추가 정보는 Oracle 옵션 문서를 참조하십시오.
    표 2. Windows 컴퓨터의 수집된 데이터
    레이블 필드 이름 추가 정보
    SID sid Oracle.exe 프로세스에 전달되는 프로세스 매개변수에서 받습니다.
    설치 디렉터리 install_directory
    버전 version ORA_HOME/bin/sqlplus.exe -V 명령 출력에서 받습니다.
    매개변수 파일 Pfile 다음 위치에서 시스템 매개변수 파일의 위치를 탐색합니다. 탐색한 위치 중 하나에 이 파일이 없는 경우 검색을 통해 파일을 찾을 수 없으며 오류를 보고합니다.
    • oracle_home\database\spfileSID.ora
    • oracle_home\database\spfile.ora
    • oracle_home\database\initSID.ora
    Oracle 홈 oracle_home oracle.exe 경로에서 구문 분석됩니다.
    에디션 edition
    주:
    패턴 확장과 수집된 추가 정보는 Oracle 옵션 문서를 참조하십시오.

    Oracle 옵션

    또한 검색은 인스턴스에서 사용할 수 있는 Oracle 옵션을 찾을 수도 있습니다. 옵션에 대한 자세한 내용은 Oracle 웹 사이트 https://docs.oracle.com/en/에서 확인하십시오. 검색은 Oracle 옵션 [samp_oracle_options] 테이블에 다음 항목을 저장합니다.
    레이블 필드 이름
    인스턴스 instance
    옵션 option
    라이센스 가능 licensable
    현재 사용 중 currently_used
    첫 번째 사용 날짜 first_usage
    마지막 사용 날짜 last_usage
    마지막 샘플 날짜 last_sample
    탐지된 사용량 detected_usage
    샘플 간격 sample_interval
    테이블 권한 필요 추가 정보
    UNIXWindows에 대한 Oracle 옵션 확장의 일부로 다음 테이블에 액세스할 수 있습니다.
    • DBA_FEATURE_USAGE_STATISTICS
    • CDB_FEATURE_USAGE_STATISTICS
    • V$DATABASE
    • V$VERSION
    • GV$PARAMETER
    • V$CONTAINERS
    • V$INSTANCE
    다음 패턴 확장에서는 Oracle의 스크립트 options_packs_usage_statistics. sql을 사용합니다. 이 sql 스크립트는 DB Server 버전 11.2 이상을 위한 것입니다. 스크립트를 실행하려면 사전 선택 권한이 필요합니다. 사용 스크립트에 대한 자세한 내용은 https://support.oracle.com/portal/에서 지원 문서 ID 13172651.1을 참조하십시오.
    • UNIX용 Oracle 옵션 확장
    • Windows용 Oracle 옵션 확장
    표 3. 클러스터웨어의 수집된 데이터
    테이블 레이블 및 필드 이름
    Unix 클러스터 [cmdb_ci_unix_cluster]

    이름 [name]

    클러스터 상태 [cluster_status]

    클러스터 유형 [cluster_type]

    IP 주소 [ip_address]

    짧은 설명 [short_description]

    클러스터 ID [cluster_id]

    클러스터 버전 [cluster_version]

    cmdb_ci_unix_cluster_node

    이름 [name]

    노드 상태 [node_state]

    IP 주소 [ip_address]

    노드 상태 [node_status]

    cmdb_ci_unix_cluster_resource

    이름 [name]

    자원 유형 [resource_type]

    자원 상태 [resource_status]

    속성 [properties]

    cmdb_ci_cluster_vip

    이름 [name]

    IP 주소 [ip_address]

    클러스터 이름 [클러스터_이름]

    클러스터 ID [cluster_id]

    Dependency Views에서 Oracle 데이터베이스 서버의 +1은 해당 서버가 클러스터의 일부임을 의미합니다.

    Oracle 인스턴스 포함 확장

    주:
    검색은 Oracle 인스턴스 포함 확장을 사용하여 인스턴스에 대한 추가 속성을 찾을 수도 있습니다. 옵션에 대한 자세한 내용은 Oracle 웹 사이트(https://docs.oracle.com/en/)를 참조하십시오. 검색은 이러한 속성을 Oracle 인스턴스 [cmdb_ci_db_ora_instance] 테이블에 저장합니다.
    레이블 필드 이름
    인스턴스 instance
    호스트 이름 host_name
    IS_CDB cdb_yn
    DB 고유 이름 db_unique_name
    DB 이름 database_name
    복제 사용 replication_enabled
    테이블 권한 필요 추가 정보
    UNIXWindows에 대한 Oracle 인스턴스 포함 확장의 일부로 다음 테이블에 액세스할 수 있습니다.
    • V$DATABASE
    • V$INSTANCE
    Oracle 인스턴스 포함 확장을 설치해야 합니다. 이 확장은 검색 및 서비스 매핑 패턴 애플리케이션 버전 1.0.72 이상에 포함되어 있으며 ServiceNow Store에서 다운로드할 수 있습니다.

    가상 컴퓨터의 Oracle 인스턴스

    Oracle 인스턴스가 가상 머신에서 호스트되면 시스템은 CI 간의 관계를 생성합니다.
    CI 관계 CI
    Oracle 인스턴스 Hosted on 컴퓨터 [cmdb_ci_computer] 또는 서버 [cmdb_ci_server]
    주:
    가상 머신입니다. Is virtual 필드는 True입니다.
    컴퓨터 [cmdb_ci_computer] 또는 서버 [cmdb_ci_server]
    주:
    가상 머신입니다. Is virtual 필드는 True입니다.
    Virtualized by 컴퓨터 [cmdb_ci_computer] 또는 서버 [cmdb_ci_server]
    주:
    가상 머신이 아닙니다.

    AWS 또는 Azure 클라우드에서 호스팅되는 가상 머신의 Oracle 인스턴스

    기본 클래스 관계 종속 클래스
    Oracle 인스턴스 Hosted on 컴퓨터 [cmdb_ci_computer]
    주:
    가상 머신입니다. Is virtual 필드는 True입니다.
    컴퓨터 [cmdb_ci_computer]
    주:
    가상 머신입니다. Is virtual 필드는 True입니다.
    Virtualized by 컴퓨터 [cmdb_ci_computer]
    주:
    가상 머신이 아닙니다.
    컴퓨터 [cmdb_ci_computer]
    주:
    가상 머신입니다. Is virtual 필드는 True입니다.
    Virtualized by 가상 머신 인스턴스 [cmdb_ci_vm_instance]
    주:
    이 테이블에 vCPU 수가 채워집니다.
    가상 머신 인스턴스 [cmdb_ci_vm_instance] Hosted on AWS 데이터센터 [cmdb_ci_aws_datacenter] 또는 Azure 데이터센터 [cmdb_ci_azure_datacenter]

    클러스터웨어 관계

    CI 관계 CI
    Unix 클러스터 [cmdb_ci_unix_cluster] Virtualizes::Virtualized by 클러스터 가상 IP [cmdb_ci_cluster_vip]
    Unix 클러스터 자원 [cmdb_ci_unix_cluster_resource] Defines resources for::Gets resources from Unix 클러스터 노드 [cmdb_ci_unix_cluster_node]
    클러스터 가상 IP [cmdb_ci_cluster_vip] Uses::Used by Unix 클러스터 노드 [cmdb_ci_unix_cluster_node]
    Unix 클러스터 노드 [cmdb_ci_unix_cluster_node] Cluster of::Cluster Unix 클러스터 [cmdb_ci_unix_cluster]
    Unix 클러스터 노드 [cmdb_ci_unix_cluster_node] Hosted on:Hosts Unix 클러스터 [cmdb_ci_unix_cluster]
    Unix 클러스터 자원 [cmdb_ci_unix_cluster_resource] Defines resources for::Gets resources from Unix 클러스터 [cmdb_ci_unix_cluster]

    Unix 클러스터 [cmdb_ci_unix_cluster]

    Hosts::Hosted on Linux 서버 [cmdb_ci_linux_server]
    Unix 클러스터 노드 [cmdb_ci_unix_cluster_node] Hosted on::Hosts Linux 서버 [cmdb_ci_linux_server]