SQL*Plus에서 Oracle Cloud 사용

6435 단어 오라클oraclecloud
이전에 SQL Developer에서 Oracle Cloud 사용을 작성했으므로 SQL * Plus에서 Oracle Autonomous Transaction Processing (ATP) 데이터베이스에 연결하는 방법을 확인합니다.

월렛 사용



월렛 다운로드 및 배포



SQL*Plus에서 ATP에 연결하려면 SQL Developer와 마찬가지로 월렛을 다운로드합니다. 해당 데이터베이스의 콘솔에서 DB 연결 버튼을 클릭합니다.



월렛 유형의 경우 인스턴스 월렛을 선택하고 월렛 다운로드 버튼을 클릭합니다. 그런 다음 다운로드된 zip 파일을 SQL*Plus를 실행하는 호스트에서 아무 곳이나 다운로드하여 배포합니다.
$ mkdir wallet
$ unzip Wallet_DB202003021003.zip -d wallet
Archive:  Wallet_DB202003021003.zip
  inflating: wallet/cwallet.sso
  inflating: wallet/tnsnames.ora
  inflating: wallet/truststore.jks
  inflating: wallet/ojdbc.properties
  inflating: wallet/sqlnet.ora
  inflating: wallet/ewallet.p12
  inflating: wallet/keystore.jks
$ cd wallet
$ ls
cwallet.sso  keystore.jks      sqlnet.ora    truststore.jks
ewallet.p12  ojdbc.properties  tnsnames.ora
$

파일 수정



배포된 파일에서 sqlnet.ora 파일을 수정합니다. WALLET_LOCATION 속성에 지정된 DIRECTORY 항목을 변경합니다. 기본적으로 "?/network/admin"으로 표시된 부분을 월렛을 다운로드한 디렉토리로 변경합니다.
$ cat sqlnet.ora
WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="?/network/admin")))
SSL_SERVER_DN_MATCH=yes
$
$ vi sqlnet.ora
  <<ファイルの修正>>

$ cat sqlnet.ora
WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="/home/oracle/wallet")))
SSL_SERVER_DN_MATCH=yes

환경 변수 설정



환경 변수 TNS_ADMIN을 지갑을 확장한 디렉토리로 지정합니다. 이렇게 하면 SQL*Plus가 sqlnet.ora 파일과 tnsnames.ora 파일을 찾을 수 있으며 sqlnet.ora 파일에 지정된 월렛을 사용할 수 있습니다.
$ export TNS_ADMIN=/home/oracle/wallet

SQL*Plus에서 연결



tnsnames.ora 파일의 내용



월렛을 확장한 디렉토리에는 tnsnames.ora 파일도 작성됩니다. 이 파일에는 ATP에 연결하는 여러 데이터베이스 서비스 이름이 들어 있습니다. 우선순위가 높은 서비스는 동시 실행 수가 제한되고 우선순위가 낮은 서비스는 병렬도가 제한되는 경향이 있습니다.


데이터베이스 서비스 이름
설명
병렬도
동시 실행 수


{데이터베이스 이름}_tpurgent
가장 우선 순위가 높은 서비스.
수동 변경 가능
100 x OCPUs

{데이터베이스 이름}_tp
OLTP의 일반적인 애플리케이션 연결 서비스
시리얼
100 x OCPUs

{데이터베이스 이름}_high
보고서 또는 일괄 처리에서 우선순위가 높은 서비스
모두 병렬 처리
3

{데이터베이스 이름}_medium
보고서 및 일괄 처리를 위한 서비스
시리얼
1.25 x OCPUs

{데이터베이스 이름}_low
보고서 또는 일괄 처리 시 우선순위가 낮은 서비스
4로 제한
100 x OCPUs


자세한 내용은 매뉴얼을 참조하십시오.

아래의 예에서는 URL 부분을 일부 변경하고 있습니다.
$ cat tnsnames.ora
db202003021003_high = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=adb.ap-tokyo-1.oraclecloud.com))(connect_data=(service_name={*******}_db202003021003_high.atp.oraclecloud.com))(security=(ssl_server_cert_dn="CN=adb.ap-tokyo-1.oraclecloud.com,OU=Oracle ADB TOKYO,O=Oracle Corporation,L=Redwood City,ST=California,C=US")))

db202003021003_low = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=adb.ap-tokyo-1.oraclecloud.com))(connect_data=(service_name={*******}_db202003021003_low.atp.oraclecloud.com))(security=(ssl_server_cert_dn="CN=adb.ap-tokyo-1.oraclecloud.com,OU=Oracle ADB TOKYO,O=Oracle Corporation,L=Redwood City,ST=California,C=US")))

db202003021003_medium = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=adb.ap-tokyo-1.oraclecloud.com))(connect_data=(service_name={*******}_db202003021003_medium.atp.oraclecloud.com))(security=(ssl_server_cert_dn="CN=adb.ap-tokyo-1.oraclecloud.com,OU=Oracle ADB TOKYO,O=Oracle Corporation,L=Redwood City,ST=California,C=US")))

db202003021003_tp = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=adb.ap-tokyo-1.oraclecloud.com))(connect_data=(service_name={*******}_db202003021003_tp.atp.oraclecloud.com))(security=(ssl_server_cert_dn="CN=adb.ap-tokyo-1.oraclecloud.com,OU=Oracle ADB TOKYO,O=Oracle Corporation,L=Redwood City,ST=California,C=US")))

db202003021003_tpurgent = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=adb.ap-tokyo-1.oraclecloud.com))(connect_data=(service_name={*******}_db202003021003_tpurgent.atp.oraclecloud.com))(security=(ssl_server_cert_dn="CN=adb.ap-tokyo-1.oraclecloud.com,OU=Oracle ADB TOKYO,O=Oracle Corporation,L=Redwood City,ST=California,C=US")))

SQL*Plus를 통한 연결



SQL*Plus에서 ADMIN 사용자, 암호 및 데이터베이스 서비스 이름을 지정하여 연결합니다. 온프레미스 연결과 동일합니다. ADMIN 사용자는 AS SYSDBA를 지정하는 연결을 수행할 수 없습니다.
$ sqlplus ADMIN/{password}@db202003021003_high AS SYSDBA

SQL*Plus: Release 19.0.0.0.0 - Production on Tue Mar 3 10:30:09 2020
Version 19.3.0.0.0

Copyright (c) 1982, 2019, Oracle.  All rights reserved.

ERROR:
ORA-01017: invalid username/password; logon denied


Enter user-name: ^C

$
$ sqlplus ADMIN/{password}@db202003021003_high

SQL*Plus: Release 19.0.0.0.0 - Production on Mon Mar 2 10:37:21 2020
Version 19.3.0.0.0

Copyright (c) 1982, 2019, Oracle.  All rights reserved.

Last Successful login time: Mon Mar 02 2020 10:30:49 +09:00

Connected to:
Oracle Database 18c Enterprise Edition Release 18.0.0.0.0 - Production
Version 18.4.0.0.0

SQL>
SQL> SELECT * FROM V$VERSION;

BANNER
--------------------------------------------------------------------------------
BANNER_FULL
----------------------------------------------------------------------------------------------------------------------------------------------------------------
BANNER_LEGACY                                                                        CON_ID
-------------------------------------------------------------------------------- ----------
Oracle Database 18c Enterprise Edition Release 18.0.0.0.0 - Production
Oracle Database 18c Enterprise Edition Release 18.0.0.0.0 - Production
Version 18.4.0.0.0
Oracle Database 18c Enterprise Edition Release 18.0.0.0.0 - Production                    0

SQL * Plus에서 Oracle Clound Autonomous Transaction Database에 연결할 수있었습니다.

좋은 웹페이지 즐겨찾기