[OCI]プライベート・アクセス・チャネルを使用してOracle Analytics CloudからMySQL DBシステムに接続してみた

# はじめに

Oracle Analytics Cloud（OAC）に追加されたプライベート・アクセス・チャネルの機能を利用して、Oracle Analytics Cloudからプライベート・エンドポイントのみを持つMySQL DBシステムに接続してみました。

# 1.VCNの作成

VCN：
名前：VCN_MDS
CIDR：10.0.0.0/16

Subnet：
名前：Subnet_MDS
CIDR：10.0.0.0/24
セキュリティ・リスト：Default Security List for VCN_MDS

VCN内からのMySQL DBシステムへのアクセス可能にするために、セキュリティ・リスト「Default Security List for VCN_MDS」に以下のイングレス・ルールを追加
ソースタイプ：CIDR
ソースCIDR：10.0.0.0/16
IPプロトコル：TCP
宛先ポート：3306

# 2.MySQL DBシステムの作成
「コンソールメニュー」→「MySQL DBシステム」

仮想クラウド・ネットワーク：VCN_MDS
サブネット：Subnet_MDS
ホスト名：mysqlds
IPアドレス：10.0.0.100
MySQLポート：3306
MySQL Xプロトコル・ポート：33060

MySQL DBシステムが作成できたら、以下のコマンドをMySQLクライアントから実行して、Analytics Cloudからアクセスするためのテストデータを準備します。

```
CREATE DATABASE testdb;
CREATE USER 'test' IDENTIFIED BY 'Demo#1Demo#1';
GRANT ALL ON testdb.* TO 'test';
USE testdb

CREATE TABLE dept (
deptno INT ,
dname VARCHAR(14),
loc VARCHAR(13) ,
PRIMARY KEY  (deptno) 
);

INSERT INTO dept VALUES (10,'ACCOUNTING','NEW YORK');
INSERT INTO dept VALUES (20,'RESEARCH','DALLAS');
INSERT INTO dept VALUES (30,'SALES','CHICAGO');
INSERT INTO dept VALUES (40,'OPERATIONS','BOSTON');
COMMIT;

CREATE TABLE emp(  
  empno    INT,  
  ename    VARCHAR(10),  
  job      VARCHAR(9),  
  mgr      INT,  
  hiredate DATE,  
  sal      DECIMAL(7,2),  
  comm     DECIMAL(7,2),  
  deptno   INT,  
  PRIMARY KEY (empno),  
  FOREIGN KEY fk_deptno  (deptno) REFERENCES dept (deptno)  
);

INSERT INTO emp VALUES(7839, 'KING', 'PRESIDENT', null, '1981-11-17', 5000, null, 10);
INSERT INTO emp VALUES(7698, 'BLAKE', 'MANAGER', 7839, '1981-5-1', 2850, null, 30);
INSERT INTO emp VALUES(7782, 'CLARK', 'MANAGER', 7839, '1981-6-9', 2450, null, 10);
INSERT INTO emp VALUES(7566, 'JONES', 'MANAGER', 7839, '1981-4-2', 2975, null, 20);
INSERT INTO emp VALUES(7788, 'SCOTT', 'ANALYST', 7566, '1987-7-13', 3000, null, 20);
INSERT INTO emp VALUES(7902, 'FORD', 'ANALYST', 7566, '1981-12-3', 3000, null, 20);
INSERT INTO emp VALUES(7369, 'SMITH', 'CLERK', 7902, '1980-12-17', 800, null, 20);
INSERT INTO emp VALUES(7499, 'ALLEN', 'SALESMAN', 7698, '1981-2-20', 1600, 300, 30);
INSERT INTO emp VALUES(7521, 'WARD', 'SALESMAN', 7698, '1981-2-22', 1250, 500, 30);
INSERT INTO emp VALUES(7654, 'MARTIN', 'SALESMAN', 7698, '1981-9-28', 1250, 1400, 30);
INSERT INTO emp VALUES(7844, 'TURNER', 'SALESMAN', 7698, '1981-9-8', 1500, 0, 30);
INSERT INTO emp VALUES(7876, 'ADAMS', 'CLERK', 7788, '1987-7-13', 1100, null, 20);
INSERT INTO emp VALUES(7900, 'JAMES', 'CLERK', 7698, '1981-12-3', 950, null, 30);
INSERT INTO emp VALUES(7934, 'MILLER', 'CLERK', 7782, '1982-1-23', 1300, null, 10);
COMMIT;
```

# 3.Oracle Analytics Cloudインスタンスの作成
「コンソールメニュー」→「アナリティクスとAI」→「アナリティクス・クラウド」

「インスタンスの作成」をクリック
![スクリーンショット 2021-07-01 21.20.43.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/784824/7ec03aca-025b-8879-55e9-a4d3bd9baad8.png)

アナリティクス・インスタンスのパラメータを入力し、完了したら「作成」をクリック
名前：TestOAC
機能セット：Enterprise Analytics
容量：OCPU/2
ライセンス・タイプ：ライセンス込み
ネットワークアクセス：パブリック

![スクリーンショット 2021-07-01 20.37.26.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/784824/7a9712c6-ca35-29d7-ab6d-a15ab77a14be.png)
しばらくまつと、Oracle Analytics Cloudのインスタンスが作成されます。
![スクリーンショット 2021-07-01 20.53.08.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/784824/28f1b56c-cd42-a4b3-24b5-4498e63d42b8.png)


# 4.プライベート・アクセス・チャネルの作成
リソース欄の「プライベート・アクセス・チャネル」をクリックします。
![スクリーンショット 2021-07-01 20.54.56.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/784824/fc2824e0-caad-7f59-2503-ce54d6f156fa.png)
「プライベート・アクセス・チャネルの構成」をクリックします。
![スクリーンショット 2021-07-01 20.55.11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/784824/cf259166-7b2c-adc7-1d4b-ba07438d854c.png)
プライベート・アクセス・チャネルの構成情報を入力し、「構成」をクリックします。

仮想クラウド・ネットワーク、サブネットには、MySQL DBシステムを配置した仮想クラウド・ネットワーク、およびサブネットを指定します。
名前：Private_Access_Channel_for_MDS
仮想クラウド・ネットワーク：VCN_MDS
サブネット：Subnet_MDS
DNSゾーンとしての仮想クラウドネットワークのドメイン名のチェックをオン
![スクリーンショット 2021-07-01 20.57.45.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/784824/e6809a84-55f9-a562-3bad-984dc850e80a.png)

しばらく待つと、プライベート・アクセス・チャネルが構成されます。
![スクリーンショット 2021-07-01 21.13.35.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/784824/bcd5a34a-7653-d67d-d1c5-faedd2745d78.png)

# 5.MySQL DBシステムへの「接続」の作成（OAC上）
アナリティクス・インスタンスの詳細ページの「分析ホームページ」をクリックして、OACにアクセスします。
![スクリーンショット 2021-07-01 20.53.08のコピー.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/784824/6987666c-1d88-4239-68ba-5f09bcdafaa9.png)

OACの画面が表示されます。
![スクリーンショット 2021-07-01 21.35.33.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/784824/5b875a5c-c2f1-8948-d4a0-429ae56d0ee4.png)
画面右上の「作成」をクリックし、「接続」をクリックします。
![スクリーンショット 2021-07-01 21.35.57.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/784824/2dc5b236-0aff-2d1b-2adb-28e411caee16.png)
接続の作成ウィザードが表示されます。
![スクリーンショット 2021-07-01 21.38.52.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/784824/802eb3a1-b2e5-fe55-73db-7f4cf0b27c97.png)
下にスクロールし、「MySQL」をクリックします。
![スクリーンショット 2021-07-01 21.39.51.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/784824/b9d6e203-ec8e-4440-a34c-48aecc793778.png)
作成したMySQLの情報を入力し、「保存」をクリックします。
![スクリーンショット 2021-07-01 21.42.04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/784824/8d45f845-d44c-8de3-372b-f03e146b4d37.png)
画面右上の「作成」をクリックし、「データ・セット」をクリックします。

# 6.データセットの作成
画面右上の「作成」をクリックし、「接続」をクリックします。
![スクリーンショット 2021-07-01 21.46.12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/784824/8333178d-2d37-827f-5237-02ea199103bf.png)
データ・セットの作成ウィザードが表示されます。
![スクリーンショット 2021-07-01 21.49.02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/784824/72b0e435-e751-fbfd-84f9-8dfabfdcc87b.png)
先ほど作成した接続「MySQL DS」をクリックします。
![スクリーンショット 2021-07-01 21.49.13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/784824/f4f58840-85a2-ab87-8519-6f06bb568619.png)
MySQL DBシステムの内容が表示されます。
![スクリーンショット 2021-07-01 21.51.10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/784824/2990ecd1-0930-c4fd-f34c-3e6e45b34889.png)
testdbをクリックして、testdbの内容を表示します。
![スクリーンショット 2021-07-01 21.51.28.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/784824/732686c1-a870-d3aa-bb56-33a176486d5d.png)
「dept」表と「emp」表を選択します。
![スクリーンショット 2021-07-01 21.51.41.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/784824/5bea5757-a07b-0dab-fbac-d3afb2d2a54f.png)
「dept」表と「emp」表を場面右側の白い部分にドラッグ＆ドロップします。
![スクリーンショット 2021-07-01 21.52.46.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/784824/39c6ca10-6074-656d-0c74-170475b9b906.png)

Oracle Analytics Cloudから、プライベート・アクセス・チャネルを経由してMySQL DBシステム内のデータを参照することができました。