OCI CLI(RDS)


https://docs.oracle.com/en-us/iaas/Content/Database/home.htm

https://oracle-japan.github.io/ocitutorials/database/

https://www.oracle.com/jp/cloud/price-list/#pricing-oracle-databases

 

(1) Autonomous Database [ADB]
https://docs.oracle.com/en-us/iaas/autonomous-database-serverless/index.html

→ 非ExaのAutonomous

ワークロード・タイプ
① データ・ウェアハウス
トランザクション処理
JSON
④ APEX


Free Tierあり
Two databases total, each with 1 OCPU** and 20 GB storage


Oracle Autonomous Transaction Processing - ECPU
¥47.04 ECPU per hour

oci db autonomous-database create [OPTIONS]


(2) Oracleベース・データベース [BaseDB]
https://docs.oracle.com/en-us/iaas/base-database/index.html

→ 非Exaの非Autonomous

Oracle Base Database Service – Standard
¥30.10 OCPU per hour

Oracle Base Database Service – Enterprise
¥60.214 OCPU per hour

Oracle Base Database Service on Arm - Enterprise
¥30.114 OCPU per Hour

oci db system launch [OPTIONS]
oci db pluggable-database create [OPTIONS]

 

(3) 専用インフラストラクチャ
https://docs.oracle.com/ja-jp/iaas/autonomous-database/index.html

→ ExaのAutonomous

Exadata Infrastructure

Autonomous Exadata VMクラスタ

Autonomous Container Database

使用コマンド(推定)
oci db cloud-exa-infra create [OPTIONS]
oci db cloud-autonomous-vm-cluster create [OPTIONS]
oci db autonomous-container-database create [OPTIONS]

 


(4) Oracle Exadata Database Service on Dedicated Infrastructure [ExaDB-D]
https://docs.oracle.com/ja-jp/iaas/exadatacloud/exacs/exadata-cloud-infrastructure-overview.html

→ Exaの非Autonomous

使用コマンド(推定)
oci db cloud-exa-infra create [OPTIONS]
oci db cloud-vm-cluster create [OPTIONS]


(5) Autonomous Database on Exadata Cloud@Customer
https://docs.oracle.com/en-us/iaas/exadata/doc/adb-on-exacc.html

→ ExaのAutonomous@Customer

使用コマンド(推定)
oci db exadata-infrastructure create [OPTIONS]
oci db autonomous-vm-cluster create [OPTIONS]
oci db autonomous-container-database create [OPTIONS]


(6) Oracle Exadata Database Service on Cloud@Customer
https://docs.oracle.com/ja-jp/iaas/exadata/doc/ecc-exadata-cloud-at-customer-overview.html

→ Exaの非Autonomous@Customer

使用コマンド(推定)
oci db exadata-infrastructure create [OPTIONS]
oci db vm-cluster create [OPTIONS]

 


------------------------------------------------------------

 


-- 1. Autonomous Database

-- 1.1 データベースの作成

oci db autonomous-database list \
--compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000 

oci db autonomous-database list \
--compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000 \
--display-name adb11 

 

oci db autonomous-database create \
--compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000 \
--admin-password 'passwordpassword' \
--backup-retention-period-in-days 1 \
--character-set AL32UTF8 \
--compute-count 2 \
--compute-model ECPU \
--data-storage-size-in-gbs 20 \
--db-name adb11 \
--db-version 19c \
--db-workload OLTP \
--display-name adb11 \
--is-auto-scaling-enabled FALSE \
--is-auto-scaling-for-storage-enabled FALSE \
--license-model LICENSE_INCLUDED \
--ncharacter-set AL16UTF16 \
--is-local-data-guard-enabled FALSE \
--is-mtls-connection-required FALSE \
--whitelisted-ips '[
"192.0.2.2"
]' 


★Always Freeの場合

oci db autonomous-database create \
--compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000 \
--admin-password 'passwordpassword' \
--db-name adb12 \
--db-version 19c \
--db-workload OLTP \
--display-name adb12 \
--is-auto-scaling-enabled FALSE \
--is-auto-scaling-for-storage-enabled FALSE \
--is-local-data-guard-enabled FALSE \
--is-mtls-connection-required FALSE \
--whitelisted-ips '[
"192.0.2.2"
]' \
--is-free-tier TRUE

 

 

 

oci db autonomous-database list \
--compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000 \
--query 'data[?"db-name"==`'adb11'`]."id" | [0]' \
--raw-output


oci db autonomous-database stop \
--autonomous-database-id ocid1.autonomousdatabase.oc1.iad.000000000000000000000000000000000000000000000000000000000000 

oci db autonomous-database start \
--autonomous-database-id ocid1.autonomousdatabase.oc1.iad.000000000000000000000000000000000000000000000000000000000000 


oci db autonomous-database list \
--compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000 \
--query 'data.{"db-name":"db-name","id":"id","lifecycle-state":"lifecycle-state"}' \
--output table


oci db autonomous-database delete \
--autonomous-database-id ocid1.autonomousdatabase.oc1.iad.000000000000000000000000000000000000000000000000000000000000 \
--force

 


-- 1.2 クレデンシャル・ウォレットで接続
https://oracle-japan.github.io/ocitutorials/database/adb104-connect-using-wallet/

※デフォルトポートは1522


cd

rm -rf  client_credentials
mkdir client_credentials

unzip Wallet_adb11.zip -d client_credentials

export TNS_ADMIN=~/client_credentials


cd ~/client_credentials

vim sqlnet.ora

WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="?/network/admin")))

WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY=$TNS_ADMIN)))

sqlplus admin/passwordpassword@adb11_low

 

 


---------------------------------------------------------------

-- 2. Oracleベース・データベース

https://oracle-japan.github.io/ocitutorials/database/dbcs101-create-db/

 

-- 2.1 DBシステムの作成

oci db version list \
--compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000 

oci db system-shape list \
--compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000 \
--query 'sort_by(data, &"name").{"name":"name","shape":"shape","available-core-count":"available-core-count"}' \
--output table

 

oci db system list \
--compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000 \
--query 'data.{"display-name":"display-name","id":"id","lifecycle-state":"lifecycle-state"}' \
--output table


oci db system launch \
--compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000 \
--admin-password 'passwordpassword' \
--availability-domain OEIw:US-ASHBURN-AD-3 \
--cpu-core-count 1 \
--database-edition STANDARD_EDITION \
--db-name db01 \
--db-version 19.21.0.0 \
--hostname orcl \
--shape VM.Standard2.1 \
--ssh-authorized-keys-file "$HOME/.ssh/id_rsa.pub" \
--subnet-id ocid1.subnet.oc1.iad.000000000000000000000000000000000000000000000000000000000000 \
--auto-backup-enabled false \
--character-set AL32UTF8 \
--cluster-name cluster01 \
--db-unique-name db01 \
--db-workload OLTP \
--disk-redundancy NORMAL \
--display-name db01 \
--domain subnet01.vcn01.oraclevcn.com \
--initial-data-storage-size-in-gb 256 \
--is-diagnostics-events-enabled false \
--is-health-monitoring-enabled false \
--is-incident-logs-enabled false \
--license-model LICENSE_INCLUDED \
--ncharacter-set AL16UTF16 \
--node-count 1 \
--pdb-name db01pdb01 \
--private-ip 10.0.1.10 \
--storage-management ASM \
--storage-performance BALANCED \
--time-zone "Asia/Tokyo" 



約2時間30分かかった


oci db system list \
--compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000 \
--query 'data.{"display-name":"display-name","id":"id","lifecycle-state":"lifecycle-state"}' \
--output table

 

oci db system terminate \
--db-system-id ocid1.dbsystem.oc1.iad.000000000000000000000000000000000000000000000000000000000000 \
--force 

 


-- 2.2 DB接続

ノードのパブリックIPを確認

 


ssh -i $HOME/.ssh/id_rsa opc@192.0.2.1

sudo su -

dbcli describe-system
dbcli list-databases

su - oracle
sqlplus / as sysdba

show pdbs
alter session set container = db01pdb01 ;

create user TESTUSER identified by passwordpassword ;
grant CREATE SESSION,CONNECT,RESOURCE,UNLIMITED TABLESPACE to TESTUSER ;
exit


lsnrctl status

sqlplus testuser/passwordpassword@10.0.1.10:1521/db01pdb01.subnet01.vcn01.oraclevcn.com

 

-- 2.3 データベースの作成

CreateDbHome is not allowed for dbSystems with VMDB shapes

データベースの追加はできない模様

 


-- 2.4 PDBの作成

CREATE PLUGGABLE DATABASE文でもPDBは作成可能の模様であるが、コンソールには反映されない。

 

oci db database list \
--compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000 \
--query 'data.{"db-name":"db-name","id":"id","lifecycle-state":"lifecycle-state"}' \
--output table

 

oci db pluggable-database create \
--container-database-id ocid1.database.oc1.iad.000000000000000000000000000000000000000000000000000000000000 \
--pdb-name db01pdb02 \
--pdb-admin-password 'passwordpassword' \
--tde-wallet-password 'passwordpassword' 

 

oci db pluggable-database stop \
--pluggable-database-id ocid1.pluggabledatabase.oc1.iad.000000000000000000000000000000000000000000000000000000000000 

oci db pluggable-database start \
--pluggable-database-id ocid1.pluggabledatabase.oc1.iad.000000000000000000000000000000000000000000000000000000000000 


oci db pluggable-database list \
--compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000 \
--query 'data.{"pdb-name":"pdb-name","id":"id","lifecycle-state":"lifecycle-state","open-mode":"open-mode"}' \
--output table

 


oci db pluggable-database delete \
--pluggable-database-id ocid1.pluggabledatabase.oc1.iad.000000000000000000000000000000000000000000000000000000000000 \
--force

 


-- 2.5 バックアップ
https://oracle-japan.github.io/ocitutorials/database/dbcs105-restore/


oci db backup list \
--compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000 


oci db backup create \
--database-id ocid1.database.oc1.iad.000000000000000000000000000000000000000000000000000000000000 \
--display-name db01backup01 


oci db backup list \
--compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000 \
--query 'data[].{"display-name":"display-name","id":"id","lifecycle-state":"lifecycle-state"}' \
--output table

★非常に時間がかかる見込みため、キャンセル(30分で10%進捗)