はじめに

みなさん、こんにちは。プラチナホルダーの小酒井です。

約1年ぶりの連載となります。
今回はOracle Autonomous Data Warehouse Cloud を使ってみましたので紹介したいと思います。

Oracle Autonomous Data Warehouse Cloud とは

Oracle Autonomous Database Cloud Service (ADW)は、Oracle Cloud Infrastructure(OCI)上に構成されるExadataを基盤とした自律型クラウド・サービスです。

詳細については、Oracle社の以下のページをご確認ください。
Oracle Autonomous Data Warehouse Cloud
https://cloud.oracle.com/ja_JP/datawarehouse
https://www.oracle.com/assets/oracle-autonomous-dw-cloud-4407840-ja.pdf

この連載では、ADWのメニュー画面を操作し、インスタンスの作成、ADWへのデータのロードまでを確認したいと思います。

ADWサービスメニューへのアクセス

任意のブラウザからhttps://cloud.oracle.com にアクセスし、Oracle Cloud のページで「Sign In」をクリックします。

Cloud Accountのページで、クラウドアカウント名(テナント名)を入力し、「Next」をクリックします。

クラウドユーザー名とパスワードを入力して「サイン・イン」をクリックし、Oracle Cloud アカウントにログインします。

ダッシュボード画面の左上のメニューから「サービス」をクリックすると、利用可能なサービスがリストされます。
今回は「Autonomous Data Warehouse」を選択します。

ADWのサービス画面に遷移したことを確認します。この画面で各ADWインスタンスの稼働状況を確認することができます。以下の画面は、まだサービスが作成されていない状態です。

ADWインスタンスのプロビジョニング

COMPARTMENTを選択後、「Create Autonomous Data Warehouse」をクリックします。

※ COMPARTMENTの詳細については、こちらのマニュアルをご参照ください。

以下の情報を入力し、「Create Autonomous Data Warehouse」をクリックしインスタンスを作成します。

DISPLAY NAME サービスメニュー画面での表示用
DATABASE NAME データベース名(最大長は14文字)
CPU CORE COUNT インスタンスに割り当てるoCPU数(インスタンス作成後でもオンラインで増減可能)
STORATE(TB) ストレージ容量(インスタンス作成後でもオンラインで増減可能)
Administrator Credentials インスタンスの管理ユーザーであるADMINスキーマのパスワードを指定
LICENSE TYPE 含まれているライセンスを使用するか、独自のライセンスを使用するかを選択
TAGS 利用しているテナント内で各種リソースを整理するために利用

インスタンスが無事作成できたことを確認します。
State列がProvisioning…からAvailableになっていれば完了です。

ADWインスタンスへの接続

ADWはセキュアコネクション経由でのデータベース接続のみを受け入れます。
最初に、クレデンシャルを含んだウォレットのダウンロードが必要です。

インスタンス一覧のページで、アクションメニューからService Consoleをクリックします。

「Administration」タブを選択し、「Download Client Credentials (Wallet)」からウォレットをダウンロードします。

ウォレットのパスワードを設定し、Downloadします。

SQL Developerを利用したデータベースへの接続

SQL Developer を使い、デフォルトの管理者アカウント(ADMIN)で接続してみます。

SQL Developer を起動し、画面左上の Create Connection のアイコンをクリックします。

「データベース接続の作成/選択」画面で以下の情報を入力します。

① 接続情報を入力、選択します。
 接続名:任意の名前
 ユーザー名:admin
 パスワード:インスタンス作成時に設定したパスワード
 接続タイプ:クラウド・ウォレット
 構成ファイル:ダウンロードしたウォレットファイルを選択
② 3種類のデータベースサービスが予めデータベースごとに設定されています。
 今回はadw1129_low を選択します。
③ テストをクリックし、接続を確認します。
④ テストに成功したら保存します。
⑤「接続」をクリックします。

ADWのデータベースに接続でき、スキーマ情報が確認することができました。

SQL*Plus を利用したデータベースへの接続

ダウンロードしたcredential.zipを展開します。
展開後のcredential.zip内にあるcwallet.ssoを配置します。
(例:$ORACLE_HOME/network/admin配下にコピー)

[oracle@ol76-183 admin]$ pwd
/opt/oracle/product/18c/dbhome_1/network/admin
[oracle@ol76-183 admin]$ ls -ltra
合計 44
-rw-r--r--. 1 oracle oinstall 1441 8月 27 2015 shrept.lst
drwxr-xr-x. 2 oracle oinstall 64 12月 10 23:45 samples
drwxr-xr-x. 10 oracle oinstall 4096 12月 10 23:45 ..
-rw-r-----. 1 oracle oinstall 342 12月 10 23:50 listener.ora
-rw-r-----. 1 oracle oinstall 6661 12月 12 15:42 cwallet.sso
-rw-r-----. 1 oracle oinstall 301 12月 15 12:29 sqlnet.ora
-rw-r-----. 1 oracle oinstall 975 12月 15 12:42 tnsnames.ora
drwxr-xr-x. 3 oracle oinstall 4096 12月 15 12:42 .
[oracle@ol76-183 admin]$

sqlnet.oraを編集します。(上記でcwallet.ssoを配置した場所を指定します)

[oracle@ol76-183 admin]$ cat sqlnet.ora
NAMES.DIRECTORY_PATH= (TNSNAMES, ONAMES, HOSTNAME)
WALLET_LOCATION=(SOURCE=(METHOD=file)(METHOD_DATA=(DIRECTORY="?/network/admin")))
SSL_SERVER_DN_MATCH=yes

tnsnames.oraを編集します。(展開後のcredential.zip内のtnsnames.oraから、接続先のサービスへの接続情報を転記します)

[oracle@ol76-183 admin]$ cat tnsnames.ora
adw1129_low =
(description=
(address=(protocol=tcps)(port=1522)
(host=adb.us-ashburn-1.oraclecloud.com))
(connect_data=(service_name=xxxxxxxxxx))
(security=(ssl_server_cert_dn="yyyyyyyyyy")))

上記で設定が完了しましたので、接続確認してみます。
以下のように、SQL*PlusでADWのデータベースに接続できることが確認できました。

[oracle@ol76-183 admin]$ sqlplus /nolog

SQL*Plus: Release 18.0.0.0.0 - Production on 土 12月 15 12:46:40 2018
Version 18.3.0.0.0

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

()> conn admin@adw1129_low
パスワードを入力してください:
接続されました。
ADMIN(adw1129_low)>

 

皆さんも確認できましたでしょうか。
今回はここまでです。

次回はサンプルデータセットを利用したデータベース操作から行います。
お楽しみに!

投稿者プロフィール

DBひとりでできるもん運営チーム
DBひとりでできるもん運営チーム
「DBひとりでできるもん」運営チームです。
「親しみやすさと技術力」をテーマに、技術情報・サービス・インフラ系資格取得に役立つ情報、社員等の情報をお届けします。
70名弱の事業部員で鋭意、執筆中です。
少しでも当社を知って頂けるよう、愛情込めて頑張ります!
※facebook、X(旧twitter)、インスタグラムでは「DBひとりでできるもん」の更新情報を発信しています。