Oracle Cloud Infrastructure(OCI) 初心者必見 DBaaSを使ったOracleDatabase作成と SQL Developer を用いた接続方法

お初にお目にかかります。今年でアラサーのk.otsukaです。
今回よりブログ作成に挑戦します。

今回は
Oracle Cloud Infrastructure(以下、OCI) を触って間もないころに苦戦した
DBaaSを使ったOracle Databaseの作成とそのアクセス方法について記載します。

今回の記事の目次

1. 本環境構築の構成

  • 本環境は以下の構成のもと、進めていきます。
    ・パブリック・サブネットが作成されていて、Windowsサーバのインスタンスを作成している
    ・リモートデスクトップを用いて、作成したWindowsサーバにアクセスができること
    ・プライベート・サブネットが作成されていること
    f:id:k_otsuka_atom:20190627113637p:plain
    本環境の簡易的なネットワーク構成

以下より、プライベート・サブネット内にあるデータベースの作成及び、その接続方法について記載していきます。

2. DBaaSとは

主にクラウドサービスで提供されているクラウド上で運用できるデータベースです。
DBaaSは
・データベースを設置するサーバの準備が不要
・サーバへのデータベースのインストールが不要で、簡単操作で作成可能
・カスタマイズ・管理・運用が容易
などといった特徴が挙げられます。

3. DBシステムの作成方法

  • リソース選択画面から、「ベア・メタル、VMおよびExadata」を選択します。

f:id:k_otsuka_atom:20190626091617p:plain
OCI リソース画面

  • 「DBシステムの起動」を押して、データベース作成画面に移りましょう。
    f:id:k_otsuka_atom:20190626091824p:plain
    DBシステム作成画面


  • 以下は本DBシステムの設定画面となります。
  • DBシステム情報
    表示名:OCI上で表示させるための名前です。任意の名前を入力しましょう。
    可用性ドメイン:リージョン内にあるデータセンター(Availability Domain(以下、AD))を選択できます。
     ※2019/06/25現在、東京リージョンでは1つしか選択できません。
    シェイプ:OCPUの数や、メモリ数などを選択できるパラメータです。
    Oracle Databaseソフトウェア・エディション:スタンダードエディションを軸に機能拡張版として4つのエディションが選択できます。
    使用可能なストレージ・サイズ(GB):データベース容量を選択できます。
    ライセンス・タイプ:OracleからDatabaseライセンスを購入していない場合は、「含まれるライセンス」を選択しましょう。

    f:id:k_otsuka_atom:20190626111633p:plain
    DBシステム情報 パラメータ画面

  • ネットワーク情報
    仮想クラウド・ネットワーク:DBを作成するVCNを選択しましょう。
    クライアントのサブネット:前提条件にもあるように、Windowsサーバからのみアクセスするよう設定したいので、プライベート・サブネットを選択しましょう。
     ※(リージョナル)は、異なるADにインスタンスなどを作成しても良いというサインです。
      現在の東京リージョンではあまり意味がありませんね。。。

    ホスト名接頭辞:任意の文字列を入力しましょう。

    f:id:k_otsuka_atom:20190626111834p:plain
    ネットワーク情報 パラメータ画面

  • データベース情報
    データベース名:作成するデータベースの名前を入力しましょう。
    データベース・バージョン:バージョンが4つから選択できるので、要件に応じて選択しましょう。今回は一番古いバージョン(11.2)を選択しています。
    データベース管理パスワード:データベースにアクセスするためのパスワードです。後ほど使用するので、条件に沿ったパスワードを入力しましょう。
    自動バックアップの有効化にチェックを入れると、データベースを自動でバックアップしてくれます。その場合、ルート表にサービス・ゲートウェイの設定が必要になります。

f:id:k_otsuka_atom:20190626112024p:plain
データベース情報 パラメータ画面

  • 必要な情報を入力したら、DBシステムを起動しましょう。
    ※1〜2時間ほどでデータベースが作成されます。

  • ちなみに、2019/06/25現在、Oracle Databese以外のデータベースを、OCIのDBaaSで作成することができません。今後に期待ですね。

  • 作成が完了すると、「プロビジョニング中」から「使用可能」へ表記が変わります。

    f:id:k_otsuka_atom:20190626112249p:plain
    DBシステム画面

4. DBシステムの接続方法

  • リソースから、データベースを選択し、作成したデータベースを選択します。

    f:id:k_otsuka_atom:20190626112412p:plain
    データベース選択画面

  • 「DB接続」を押すと、以下の画面が表示されます。 SQL Developerから接続する時に必要になるので、簡易接続の接続文字列を控えておきましょう。

    f:id:k_otsuka_atom:20190626100953p:plain
    DBシステム データベース接続詳細画面

  • 参考程度に、私の接続情報を記載します。
    ログインホスト:otsuka-db.privatesubnet.otsukanet.oraclevcn.com
    ポート:1521
    サービス名:OTSUKADB_nrt1z7.privatesubnet.otsukanet.oraclevcn.com

  • SQL Developerは、Oracleアカウントを作成しないとダウンロードできないので、以下のURLを参考に作成しておきましょう。
    www.oracle.com

  • アカウント作成が完了したら、Windowsサーバにログインをして、以下のURLからSQL Developerをダウンロードしましょう。
    www.oracle.com

    f:id:k_otsuka_atom:20190626101729p:plain
    SQL Developer ダウンロード画面

  • ダウンロードしたSQL Developerを起動すると、接続するDBへのパラメータを設定する画面が表示されます。 条件に合うようにパラメータを設定しましょう。
    Name:SQL Developerで表示させる名前
    ユーザ名:sys as sysdba
    パスワード:データベースを作成した時に設定したパスワード
    ログインホスト:控えておいたログインホスト名(otsuka-db.privatesubnet.otsukanet.oraclevcn.com)
    ポート:1521
    サービス名:控えておいたサービス名(OTSUKADB_nrt1z7.privatesubnet.otsukanet.oraclevcn.com)

f:id:k_otsuka_atom:20190626102618p:plain
SQL Developer パラメータ画面

しかし、現在の設定では、データベースにアクセスすることができませんでした。 アクセスできるようにするために、プライベート・サブネットのセキュリティ・リストを変更しましょう。

  • プライベート・サブネットのセキュリティ・リストから、以下の項目を追加しましょう。
    ソースCIDR:Windowsサーバのインスタンスを作成しているサブネット もしくはWindowsサーバのプライベートIPアドレス
     ※サブネット内にDB接続を可能にしたいサーバがたくさんある場合は、プライベート・サブネット丸ごと許可が良いかもしれません。
      今回は、作成したWindowsサーバのみアクセスできるよう設定しています。

    IPプロトコル:TCP
    宛先ポート範囲:1521
     ※ポート「1521」はOracle Database に接続するための規定のポート番号です。

f:id:k_otsuka_atom:20190626103406p:plain
セキュリティ・リスト ルール追加画面

  • セキュリティ・リストに条件を加えることで、Windowsサーバからアクセスができるようになります。

f:id:k_otsuka_atom:20190626103723p:plain
SQL Developer パラメータ画面 ログイン成功

以上で、パブリック・サブネットにあるWindowsサーバから、プライベート・サブネットに作成したデータベースへの接続設定は完了です。

見返してみると単純な設定ですが、 データベースにアクセスするためのデフォルトのユーザ名や、セキュリティ・リストの設定に気づくまでに時間がかかってしまいました。

もしよければ、本設定を参考にしてみてください。