본문 바로가기
클라우드노트/오라클클라우드(OCI)

(12) 오라클 클라우드에서 무료로 제공하는 오라클 데이터베이스 ATP생성과 연결

by 테크한스 2024. 1. 13.

1 (1) 오라클 클라우드 Free Tier 가입 (VM2개,100G 하드, 10TB 트래픽 평생무료)
2 (2) 오라클 클라우드 Free Tier 무료계정에 linux,nginx,mariadb,PHP,wordpress 몽땅 쓸어넣자
3 (3) 오라클 클라우드에서 unbuntu, nginx, php7 설치
4 (4) 오라클 클라우드에서 mariadb, phpmyadmin 설치
5 (5) 오라클 클라우드에서 도메인 설정, 샌드메일 설치
6 (6) 오라클 클라우드에서 nginx, https 사용을 위한 무료 SSL인증서 설정
7 (7) 오라클 클라우드에서 사용하는 워드프레스(wordpress) 설정
8 (8) 오라클 클라우드에서 무료로 사용하는 워드프레스, DB 백업과복구
9 (9) 오라클 클라우드에서 무료로 사용하는 오브젝트스토리지(S3)+아카이브 20G
10 (10) 오라클클라우드에서 무료로 제공하는 블록볼륨을 연결해 보자
11 (11) 오라클클라우드 프리티어 마지막 혜택 - Ampere A1 4CPU 24G
12 (12) 오라클 클라우드에서 무료로 제공하는 오라클 데이터베이스 ATP생성과 연결

 

 

 

이번시간은 오라클 클라우드 프리티어 이야기 연재 중 추가적인 내용으로 구성합니다.

여기서는 바로 무료로 사용할 수 있는 오라클 데이터베이스 이야기 입니다.

 

로컬에 해당 오라클 데이트베이스를 설치하고 생성하여 사용할 수 있지만 여기서는

오라클 클라우드 이야기의 연재이기 때문에

 

오라클 클라우드 무료 서버(VM) 제공 외에 또 무료 없나요?

 

 

몇가지 대표적인 것(오브젝트스토리지, 블록볼륨, 백업 등)은 이전에 설명을 드렸고

그 다음 대표적인 무료서비스는 바로 무료 데이터베이스 서비스이다.

 

https://www.oracle.com/kr/cloud/free/

 

OCI 공식 프리티어 서비스 내역 중 데이터베이스 부분은 아래와 같다.

 

데이터베이스

Oracle Autonomous Transaction Processing, Autonomous Data Warehouse, Autonomous JSON Database 또는 APEX Application Development 가운데 선택할 수 있습니다. 총 2개를 선택할 수 있으며 각각 OCPU 1개**와 20GB 스토리지를 제공합니다.

NoSQL Database는 매월 1억 3300만 회의 읽기와 1억 3300만 회의 쓰기를 지원합니다. 최대 3개의 테이블이 제공되며 각각 25GB의 스토리지를 지원합니다.

 

이중에서 우리는 Oracle Autonomous Transaction Processing를 사용할 것이다.

이 글의 초입부분에서 오라클 데이터베이스를 설치한다면서요?

라고 다시 반문하는 분들이 있다면

그렇다 같은 거다.

 

(클라우드) Oracle Autonomous Transcation Processing = (온프렘 로컬) Oracle Database EE 정도?

 

여기서는 클라우드 오라클 데이터베이스를 설치할 것이기에 바로 Oracle ATP(앞으로 약자로 표기)를 설치하는 것이 

목적이다. 

 

오라클 클라우드 데이터베이스 ATP 는 Oracle Database 19C EE 버전을 사용한다고 이해하면 된다.

 

 

자, 다시 시작해 보자

 

궁극적으로 ATP DB 를 설치한 후에 DBeaver 와 SQL Developer로 연결까지 하는 것이 이글의 목표이다.

 

먼저 오라클 클라우드 운영 사이트에 가서 ATP 인스턴스를 만들어 보자

 

cloud.oracle.com 접속하자. (구체적인 접속 방법은 앞의 글을 참고하자)

 

접속 후에 ATP 생성 메뉴로 바로 들어가 보자

 

 

이 화면에서 우리가 확인해야 할 것은 해당 메뉴 상단의 Autonomous Database 이다.

그렇다 오라클 클라우드에서의 데이터베이스는 모두 이 키워드로 분류하고 시작된다.

 

즉,

 Autonomous Database = ATP 데이터베이스 = Oracle Database 19C EE 

 

 

이말이다. 그러므로 우리는 해당 화면에서 인스턴스를 생성하면 ATP 디비를 생성하는 것이 된다.

그런데 해당 화면에 이미 한개의 인스턴스가 존재한다.

그렇다. 내가 테스트를 위해 만들어 놓았으나, 여기서 OCI 프리티어는 무엇인가

 

총 2개를 선택할 수 있으며 각각 OCPU 1개**와 20GB 스토리지를 제공합니다.

 

 

2개까지의 서비스가 무료이지 않은가? 그냥 2번째 것을 만들어 보자 (사실 1번째 인스턴스를 다시 만들기가 귀찮아서)

이제 무료가 너무 당연한 것으로 생각하는 것이 문제이긴 하다. 

 

바로 만들어 보자

 

위의 화면에서 Create Autonomouse Database를 클릭하자

 

우선 위에서 Display name과 Database name을 각자 생각한 이름으로 작성한다.

그리고 workload type은 Transaction Processing을 선택한다 (이것이 ATP 데이터베이스 이다)

 

 

나머지는 그대로 스크롤 한다.

 

위의 ADMIN 사용자 이름에 대해 Password를 작성해 준다. (이것이 Oracle Database 설치시에 작성하는 admin 계정이다)

 

choose network access는 첫번째인 Secure access from everywhere 를 선택한다.

(everywhere라는 문구가 선택하게 만드는 무언가 있다)

 

 

하단의 Contact email에는 자신이 자주 확인하는 이메일 주소를 입력하자.

(입력한다고 돈달라고 하지 않으니 걱정 마시길. 광고 메일도 없다. 단지 해당 인스턴스를 오래 사용하지 않은면 삭제하겠다는 메일을 사용자 중 다수의 사용자가 받을 것이다. 나도 그런 메일은 수도 없이... )

 

생성 화면 하단의 Create Autonomus Database 버튼을 클릭해 보자

 

그러면 위의 화면처럼 PROVISIONING 한다고 좌측 이미지가 보이면서 시작할 것이다.

프로비전닝은 인스턴스를 만들어 클라우드에서 사용할 서비스를 준비한다는 의미로 이해하면 됩니다.

 

2분 채 안된 후에 아래와 같이 인스턴스가 쉽게 만들어진다.

 

그렇다 녹색(그린,green)이 보이면서 AVAILABLE로 확인 된다.

느낌이 오지 않는가 그렇다 이미 ATP디비는 생성이 완료가 되었다. (이렇게 빨리, 쉽게? )

그렇다.

 

아~ ATP 디비가 벌써 2개나 클라우드에 무료로 사용해 주세요 라고 READY 상태가 되었다.

무료가 좋긴하다. 이렇게 아무런 댓가 없이 무료로 주다니

 

 

그렇다면 이제 끝난거 아닌가?

그러나 이제부터 우리가 기존에 사용하는 온프렘 로컬 디비와는 다소 다른 환경 정보를 필요로 한다는 것을 이해할 것이다.

 

우선 접속하기 위한 클라우드 전용 WALLET 파일을 다운로드 받아보자.

화면에서 ATP디비 이름 밑에 Database Connection 버튼을 클릭하자

그럼 아래와 같은 팝업이 뜬다.

 

그리고 download client credentials (Wallet)에서 download wallet 버튼을 클릭해서 다운로드해 보자.

 

몇몇 디비접속툴에서 접속가능한 아이디 와 패스워드 설정을 위해 다시 패스워드를 입력한다.

 

로컬 피씨에 다운로드 받으면 된다.

 

설마 여기까지 어려운가?

흠...

 

바로 해당 WALLET파일을 원하는 위치에 복사를 하자.

 WALLET 파일이 사실상 Private 키와 같은 존재이므로 곱게곱게 중요한 위치에 저장하자

 

우리는 먼저 대중적인 DBeaver에서 접속을 시도할 것이다.

 

그렇다면 선수 작업으로 접속할 드라이버도 미리 다운로드 해보자

클라언트에서 접속을 위한 OJDBC 드라이버가 그 주인공이다.

 

https://www.oracle.com/database/technologies/appdev/jdbc-ucp-19c-downloads.html

 

JDBC and UCP Downloads page

Oracle JDBC Driver Implements JDBC 4.2 spec and certified with JDK8, JDK11, JDK17, and JDK19 Oracle JDBC driver except classes for NLS support in Oracle Object and Collection types. (4,527,737 bytes) - (SHA1: 49e96d558adfb8aab0916835850fecabd81eb0f1)

www.oracle.com

 

아까 위에서 언급했듯이 클라우드 ATP 디비가 Oracle Database 19C 이므로 해당 JDBC를 사용하는 것이다.

 

여기서 우리는 ojdbc10-full.tar.gz 를 다운로드한다.

각각 원하는 위치에 ZIP 파일 형태로 놓고 해당 위치에서 ZIP 파일을 풀어보자 (안에 뭐가 있나요?)

 

그리고 DBeaver 디비접속툴을 다운로드 해보자 

 

 

워낙 대중적인 디비툴이라서 설치되어 있는 분들도 많을 것이다.

무료는 DBeaver Commnunty 버전이 될 것이다. 

사용하는 OS가 원도우라면 installer 버전보다는 zip 파일 형태로 다운받아 사용한는 것이 깔끔한다. (installer사용해도 됨)

 

설치 후 바로 접속해 보자

 

오라클을 선택해 보자

 

보통 로컬 디비나 온프렘 디비는 여기서 접속을 하나 

여기서는 클라우드 WALLET형태로 접속을 해야 하기에 우리는 Connection Type 에서 Basic 이 아닌 Custom 을 선택한다.

 

 

Custom에 비어 있는 내용을 채워넣어야 한다.

 

jdbc:oracle:thin:@[TNS name]?TNS_ADMIN=[Wallet 경로]

 

위의 설정에 기반해서 내용을 작성해 보자.

여기에 있는 WALLET은 zip 파일 내부에 이미 private키 역할을 하고 있으므로 여기서 내용이 오픈되도 괜찮다

 

TNS name은 우리가 앞서 디비이름을 testdb2로 만들었음을 기억한다.

그런데 testdb2로 입력하며 안되고 클라우드 디비에 맞는 TNS Name을 사용해야 한다.

 

이전에 받은 WALLET zip 압축파일을 풀어보자

 

 

여기서 tnsnames.ora 파일을 열어보자

 

 

그렇다. WALLET파일을 이용해서 접속하기에 TNS이름도 여기에 있는 이름중에 선택해야 한다.

여기서는 testdb2_high를 선택하겠다. (high가 성능이 빠른 경우도 사용하기 위한 것)

 

jdbc:oracle:thin:@testdb2_high?TNS_ADMIN=D:\\Wallet_testdb2

 

(맥OS이나 리눅스OS는 / 슬래시를 사용한다)

그리고 WALLET 파일은 ZIP 파일위치가 필요하다. (ZIP파일 풀어놓은 위치를 설정하면 안됨)

 

Custom의 TNS 이름을 입력후에

클라우드 인스턴스 생성 시 만들었던 ADMIN 과 패스워드를 입력한다 (설마 기억이 없는가)

 

 

우리는 DBeaver에서 제공하는 기본 오라클 디비 드라이버를 모두 제거하고

아까 다운로드 받은 OJDBC10_FULL로 변경한다.

 

 

 

그런 후에 좌측 하단의 Test Connection을 클릭해 보자

 

 

접속성공이다.

 

마지막으로 해당 디비에서 테이블 조회해 보자

 

 

SELECT * FROM V$INSTANCE;

 

쿼리 실행 결과는 아래와 같다.

 

 

다른 디비툴도 접속하는데 이런 방법으로 가능할 것으로 판단된다.

마지막으로 SQL Developer에서도 접속해 보자 (DBeaver가 더 많이 사용할 텐데 굳이)

 

https://www.oracle.com/database/sqldeveloper/technologies/download/

 

Oracle SQL Developer Downloads

This archive. will work on a 32 or 64 bit Windows OS. The bit level of the JDK you install will determine if it runs as a 32 or 64 bit application. This download does not include the required Oracle Java JDK. You will need to install it if it's not already

www.oracle.com

 

에서 다운로드 받아서 실행해 보자

 

 

Oracle 접속해 보자

 

이름은 원하는 이름을 설정한다.

사용자 정보는 ADMIN 계정 정보를 DBeaver 처럼 입력한다.

 

다른점은 세부정보에서 전자지갑(WALLET ZIP파일)을 선택한다.

 

이것도 경로 넣고 하단의 테스트를 클릭한다.

 

상태가 성공으로 보인다.

테이블 조회도 해보자

 

모든 설정이 끝났다.

이제 여러분이 원하는 개발을 하며 클라우드에서 무료로 오라클 디비를 사용할 수 있다.

 

앞서도 언급했듯이 프리티어 버전에서는 일정 워크로드를 지속적으로 사용하지 않으면 해당 디비 리소스가 회수 당하게 되므로 바쁘더라도 테스트 용도로라도 접속해서 사용할 필요가 있다.

 

 

SQL Developer는 아주 오래된 디비툴이다. 이것을 설명하는 이유는 다른 디비툴에서도 가능하다는 점이 말하고 싶었고

SQL Developer는 SQL 레벨에서의 디버그가 가능한 툴이며 장점이 많으나

일반적인 사용에는 DBeaver 사용을 추천한다.

 

나는 지금 오라클 프리티어 ATP DB 2개의 인스턴스를 무료로 사용하고 있다.

 

 

 

* 오라클 클라우드 프리티어 - 데이터베이스 

 

Oracle Autonomous Transaction Processing, Autonomous Data Warehouse, Autonomous JSON Database 또는 APEX Application Development 가운데 선택할 수 있습니다.

총 2개를 선택할 수 있으며 각각 OCPU 1개**와 20GB 스토리지를 제공합니다.

 

 

이상으로 마칩니다.

 

 

 

1 (1) 오라클 클라우드 Free Tier 가입 (VM2개,100G 하드, 10TB 트래픽 평생무료)
2 (2) 오라클 클라우드 Free Tier 무료계정에 linux,nginx,mariadb,PHP,wordpress 몽땅 쓸어넣자
3 (3) 오라클 클라우드에서 unbuntu, nginx, php7 설치
4 (4) 오라클 클라우드에서 mariadb, phpmyadmin 설치
5 (5) 오라클 클라우드에서 도메인 설정, 샌드메일 설치
6 (6) 오라클 클라우드에서 nginx, https 사용을 위한 무료 SSL인증서 설정
7 (7) 오라클 클라우드에서 사용하는 워드프레스(wordpress) 설정
8 (8) 오라클 클라우드에서 무료로 사용하는 워드프레스, DB 백업과복구
9 (9) 오라클 클라우드에서 무료로 사용하는 오브젝트스토리지(S3)+아카이브 20G
10 (10) 오라클클라우드에서 무료로 제공하는 블록볼륨을 연결해 보자
11 (11) 오라클클라우드 프리티어 마지막 혜택 - Ampere A1 4CPU 24G
12 (12) 오라클 클라우드에서 무료로 제공하는 오라클 데이터베이스 ATP생성과 연결

 

댓글