DB 시스템 접속 개요
이 문서에서는 활성 DB 시스템에 연결하는 데 필요한 다양한 설정에 대해 소개합니다. 연결 방법은 사용하는 클라이언트 도구 또는 프로토콜, 연결 목적 및 클라우드 네트워크 설정 방법에 따라 달라집니다.
주: 네트워킹 개요에서는 다양한 네트워킹 시나리오에 대한 정보를 찾을 수 있지만, 클라우드에서 데이터베이스에 접속하는 방법에 대한 구체적인 권장 사항은 네트워크 보안 관리자에게 문의하십시오.
선행 조건
-
콘솔 또는 API를 사용하여 기본 관리 서비스 접속 문자열을 가져오려면 SDK, CLI 또는 기타 툴에서 콘솔을 사용하거나 REST API를 사용 중인지 여부에 관계없이 관리자가 작성한 정책에 필요한 유형의 액세스 권한을 부여받아야 합니다. 작업을 수행할 때 사용자에게 권한이 없거나 권한이 부여될 수 없음을 알리는 메시지가 표시되면, 자신에게 부여된 액세스 권한 유형과 작업할 구획이 있는지 관리자에게 확인하십시오.
-
데이터베이스에 접속하려면 DB 시스템의 퍼블릭 또는 프라이빗 IP 주소가 필요합니다.
전용 IP 주소를 사용하여 온프레미스 네트워크에서 또는 VCN(가상 클라우드 네트워크) 내에서 시스템에 연결할 수 있습니다. 여기에는 VPN 또는 FastConnect를 통해 VCN에 연결하는 온프레미스에 있는 호스트 또는 동일한 VCN에 있는 다른 호스트의 연결이 포함됩니다. 공용 IP 주소를 사용하여 VPN 없이 클라우드 외부에서 시스템에 연결할 수 있습니다. 다음과 같이 콘솔에서 IP 주소를 찾을 수 있습니다.
- DB 시스템 세부정보 페이지에서 노드 탭을 선택합니다.
- DNS name(DNS 이름), Public IP address(공용 IP 주소) 및 Private IP 주소가 테이블 열에 표시됩니다.
-
DB 시스템에 대한 SSH(보안 셸) 액세스의 경우 DB 시스템이 실행될 때 사용된 퍼블릭 키와 연관된 프라이빗 키가 포함된 파일의 전체 경로가 필요합니다.
연결에 문제가 있는 경우 연결 문제 해결을 참조하십시오.
데이터베이스 서비스 및 연결 문자열
데이터베이스 서비스를 사용하면 필요한 기능에 따라 데이터베이스 Instance에 대한 클라이언트 액세스를 제어할 수 있습니다. 예를 들어, 관리 목적으로만 데이터베이스에 액세스해야 하거나 응용 프로그램을 데이터베이스에 연결해야 할 수 있습니다. 연결 문자열은 데이터베이스 서비스에 한정됩니다.
DB 시스템을 프로비전하면 기본 데이터베이스 관리 서비스가 자동으로 생성됩니다. 12c 이상 Oracle 데이터베이스의 경우 이 서비스는 CDB 레벨에서 데이터베이스를 관리하기 위한 것입니다. 이 서비스는 제한된 기능을 제공하므로 응용 프로그램 연결에는 적합하지 않습니다. Oracle은 DB 시스템을 생성한 후 초기 데이터베이스에 대한 기본 애플리케이션 서비스를 생성할 것을 권장합니다. 12c 이상 Oracle 데이터베이스의 경우 애플리케이션 서비스가 PDB 레벨에서 연결됩니다. 다음은 애플리케이션 서비스가 제공할 수 있는 몇 가지 중요한 기능입니다.
- 작업 로드 식별
- 로드 밸런싱
- 애플리케이션 연속성 및 Transaction Guard
- 빠른 응용 프로그램 통지
- 서비스 이름을 기반으로 한 리소스 지정
이러한 기능 및 기타 고가용성 기능에 대한 자세한 내용은 고가용성 Oracle 데이터베이스를 위한 클라이언트 페일오버 모범 사례를 참조하십시오.
애플리케이션 서비스 생성
srvctl 유틸리티를 사용하여 응용 프로그램 서비스를 생성합니다. 서비스에 연결하려면 먼저 서비스를 시작해야 합니다.
다음 단계를 사용하여 PDB 또는 11g Oracle 데이터베이스에 대한 응용 프로그램 서비스를 생성할 수 있습니다.
- DB 시스템 호스트에
opc로 로그인합니다. -
oracle 유저로 전환하고 환경을 관리하려는 Oracle Database로 설정합니다.
sudo su - oracle . oraenvORACLE_SID = [oracle] ? <database_name> The Oracle base has been set to /u01/app/oracle -
데이터베이스에 대한 응용 프로그램 서비스를 생성합니다. PDB에 대한 애플리케이션 서비스를 생성하는 경우에만
pdb옵션을 포함합니다.srvctl add service -db <DB_unique_name> -pdb <PDB_name> -service <app_service_name> -role PRIMARY -notification TRUE -session_state dynamic -failovertype transaction -failovermethod basic -commit_outcome TRUE -failoverretry 30 -failoverdelay 10 -replay_init_time 900 -clbgoal SHORT -rlbgoal SERVICE_TIME -preferred <rac_node1>,<rac_node2> -retention 3600선호 옵션은 RAC에서 노드의 호스트 이름을 지정하는 다중 노드 데이터베이스에만 필요합니다.
-
응용 프로그램 서비스를 시작합니다.
srvctl start service -db <DB_unique_name> -s <app_service_name>
PDB의 서비스에 대한 자세한 내용은 PDB 관리를 참조하십시오.
데이터베이스 연결 문자열
데이터베이스 관리 또는 응용 프로그램 서비스에 액세스하려면 적절한 연결 문자열을 사용해야 합니다. 콘솔 또는 API를 사용하여 VCN 내에서 기본 관리 서비스에 연결하기 위한 문자열을 가져올 수 있습니다. 12c 이상 Oracle 데이터베이스의 경우 이 서비스는 CDB 레벨에서 데이터베이스를 관리하기 위한 것입니다. 이 문자열은 간단한 연결(Easy Connect)과 전체 연결 기술자(long) 형식으로 제공됩니다. 호스트 이름 분석을 사용할 수 없는 경우 연결에 긴 형식을 사용합니다. long 형식을 사용하여 tnsnames.ora 파일에 alias를 생성할 수도 있습니다.
VCN 내에서 데이터베이스 서비스에 액세스하기 위해 RAC(Real Application Cluster) DB 시스템의 연결 문자열은 SCAN(Single Client Access Name)을 사용하고 단일 인스턴스 DB 시스템의 연결 문자열은 호스트 이름을 대신 사용합니다.
전용 SCAN 이름은 2노드 RAC DB 시스템을 시작할 때 생성되는 Round Robin DNS 항목입니다. 전용 SCAN 이름은 VCN 내에서만 분석할 수 있습니다. 클라이언트와 데이터베이스가 동일한 VCN에 있는 경우 연결 방식은 온-프레미스 RAC 데이터베이스와 동일하며 서버측 로드 밸런싱 및 VIP 페일오버와 같이 VIP 및 SCAN VIP에서 제공하는 모든 기능을 사용할 수 있습니다.
주: DB 시스템에서 DB_UNIQUE_NAME, DB_DOMAIN 또는 리스너 포트를 수동으로 변경하는 경우 콘솔 또는 API에 표시되는 연결 문자열에 변경 사항이 반영되지 않습니다. 연결 시 이러한 파라미터의 실제 값을 사용해야 합니다.
접속 문자열 가져오기
콘솔을 사용하여 다음 단계를 통해 기본 관리 서비스에 대한 연결 문자열을 가져올 수 있습니다.
- DB 시스템 목록 페이지에서 작업할 데이터베이스가 포함된 DB 시스템을 선택합니다. 목록 페이지 또는 DB 시스템을 찾는 데 도움이 필요하면 DB 시스템 나열을 참조하십시오.
- 데이터베이스 탭에서 작업할 데이터베이스를 선택합니다.
- 데이터베이스 세부정보 페이지에서 연결 탭을 선택합니다. 연결 문자열 목록이 표시됩니다.
- 적용 가능한 링크를 선택하여 연결 문자열을 보기하거나 복사합니다.
기본 응용 프로그램 서비스 연결 문자열의 일부를 적용 가능한 값으로 바꾸어 다른 데이터베이스 서비스에 대한 연결 문자열을 파생시킬 수 있습니다.
연결 문자열 파생
PDB 관리 서비스 또는 애플리케이션 서비스에 대한 접속 문자열을 파생하려면 다음 단계를 수행합니다.
-
이 절차에 따라 기본 관리 서비스에 대한 간단한 연결 문자열을 가져옵니다. 해당 문자열의 형식은 다음과 같습니다.
<hostname\|SCAN>:1521/<DB_unique_name>.<DB_domain> -
해당 치환을 다음과 같이 하십시오.
-
PDB 관리 서비스의 경우
DB_unique_name을 PDB 이름으로 바꿉니다.<hostname\|SCAN>:1521/<PDB_name>.<DB_domain> -
응용 프로그램 서비스의 경우
DB_UNIQUE_NAME을 응용 프로그램 서비스 이름으로 바꿉니다.<hostname\|SCAN>:1521/<app_service_name>.<DB_domain>
-