IBM Cloud で無償枠のDb2 on Cloudを使ってみる（パスワードの確認方法含む）

IBM Cloud の 無償枠（ライトプラン）でDb2 on Cloudの環境を作って利用することができます。
サービスの開始はとても簡単なのですが、ユーザーのIDとパスワードの確認方法がわかりにくかったのでまとめました。
あと、後半、SQLの実行やデータのロードについてもご紹介しています。

###0.前提事項
- 事前に [IBM Cloud](https://cloud.ibm.com/login) の アカウントを作成しておきます。

##### マニュアルはこちら
- [Db2 on Cloud の Knowledge Center](https://www.ibm.com/support/knowledgecenter/en/SSFMBX/com.ibm.swg.im.dashdb.kc.doc/welcome.html)

- [資格情報の追加および表示]
(https://cloud.ibm.com/docs/resources?topic=resources-service_credentials)


###1.IBM Cloud 上に db2 on Cloudの環境を作成する。
1-1.IBM Cloudにログインするとダッシュボードのページが表示されると思います。このダッシュボードのページの上の方にカタログ(使用できるサービス)の検索ボックスがあるので「Db2」と入力して「Db2」を選択します。
<img width="839" alt="db2oncloud_1.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435996/4f1744ec-a410-cc5b-19fb-cca3a255aa49.png">

1-2.サービス名はデフォルトでセットされます。お好きなサービス名をセットしてもOKです。デプロイする地域を選びます。
<img width="1211" alt="db2oncloud_2.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435996/1668463c-8908-711a-b248-5e773c3115c2.png">

1-3.下の方にスクロールして、Liteを選び「作成」をクリックします。
<img width="1213" alt="db2oncloud_3.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435996/d49d4399-b04a-2830-21e3-c443d798f0b6.png">

1-4.しばらくするとリソース・リストのページにリダイレクトします。Cloud Foundryの下に作成したDb2 on Cloudがありますのでクリックします。
<img width="1210" alt="db2oncloud_4.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435996/8d4676b8-4d44-f560-d4d6-2e01cfafc9da.png">

1-5.以下の画面が表示されます。「Open Console」をクリックします。
<img width="1210" alt="db2oncloud_5.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435996/073dcc14-177c-10e6-634f-da9ba3abccf5.png">

1-6.Db2 on Cloud の Webコンソールが表示されます。左上のハンバーガーメニューをクリックすると、使える機能の一覧を確認できます。このLiteアカウントで使用できる機能はUserの権限なので、Administrator権限で使用する機能のリンクは表示されていません（ユーザーの管理など）。
<img width="1213" alt="db2oncloud_6.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435996/c6b8346d-5f8a-9dbd-4c34-4ebdfe99e9b5.png">


###2.ユーザー情報を確認する。
2-1.さて、IBM Cloudの画面からジャンプしてログイン画面をスキップして表示されたこのDb2 on Cloudは一体どんなユーザーでログインしているのでしょうか。右上の人のアイコンをクリックすると「Signed in as」としてIBM CloudのIDが表示されると思います。
<img width="267" alt="db2oncloud_7.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435996/8c5c6035-ac55-fbc5-4082-2751ca474b0c.png">

しかしここで表示されているIBM CloudのIDは、Db2 on CloudへのログインのIDではないのです。

2-2.再び、以下のページを表示し（おそらく、ブラウザのタブが残っているはず・・）「サービス資格情報」をクリックします。
<img width="1209" alt="db2oncloud_8.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435996/d2b4e85a-850d-ea7f-26c0-c23702f5cda5.png">

2-3.「新規資格情報」をクリックします。
<img width="1212" alt="db2oncloud_9.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435996/c9c6150e-fb23-ad21-1d56-0e9e37537a9c.png">

2-4.以下の画面が表示されますので、「追加」をクリックします。
<img width="608" alt="db2oncloud_10.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435996/476f0eac-29a1-855d-f903-c3715f75ec4f.png">

2-5.資格情報が追加されますので「資格情報の表示」をクリックします。
<img width="913" alt="db2oncloud_11.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435996/ed496d8b-41a4-6f00-b478-f10392b00c0c.png">

2-6.「資格情報の表示」をクリックすると、以下の情報を確認することができ、その中にユーザーIDとパスワードの情報がセットされています。

"username": "qlh89557"
"password": "xxxxxxxxxx"
をおぼえておきます。

```json
{
  "hostname": "dashdb-xxx-xxx-xx-xxxxxx.services.dal.bluemix.net",
  "password": "xxxxxxxxxx",
  "https_url": "https://dashdb-xxx-xxx-xx-xxxxxx.services.dal.bluemix.net",
  "port": 50000,
  "ssldsn": "DATABASE=BLUDB;HOSTNAME=dashdb-xxx-xxx-xx-xxxxxx..services.dal.bluemix.net;PORT=50001;PROTOCOL=TCPIP;UID=qlh89557;PWD=xxxxxxx;Security=SSL;",
  "host": "dashdb-xxx-xxx-xx-xxxxxx.services.dal.bluemix.net",
  "jdbcurl": "jdbc:db2://dashdb-xxx-xxx-xx-xxxxxx.services.dal.bluemix.net:50000/BLUDB",
  "uri": "db2://qlh89557:xxxxxx@ddashdb-xxx-xxx-xx-xxxxxx.services.dal.bluemix.net:50000/BLUDB",
  "db": "BLUDB",
  "dsn": "DATABASE=BLUDB;HOSTNAME=dashdb-xxx-xxx-xx-xxxxxx.services.dal.bluemix.net;PORT=50000;PROTOCOL=TCPIP;UID=qlh89557;PWD=xxxxxx;",
  "username": "qlh89557",
  "ssljdbcurl": "jdbc:db2://dashdb-xxx-xxx-xx-xxxxxx.services.dal.bluemix.net:50001/BLUDB:sslConnection=true;"
}
```


###3.ログインページからログインしてみる。
3-1.先ほど確認したユーザーIDとパスワードを使ってDb2 on Cloudのログインページからログインしてみます。
以下の画面に戻り、「Sign out」をクリックします。
<img width="1212" alt="db2oncloud_12.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435996/c904a610-aaec-647a-2320-d4b0ea33bb1e.png">


3-2.ユーザーIDとパスワードを入力し「Sign in」をクリックします。
<img width="1050" alt="db2oncloud_13.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435996/de642c68-483d-fe73-11e7-bbc17436a7b0.png">

3-3.ログインできました。
<img width="1214" alt="db2oncloud_14.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435996/3810feea-4c1f-33a9-cd75-01a06bc6cdcb.png">


###4.表を作成してデータを入れてみる。

4-1.左上のハンバーガーメニューをクリックして「RUN SQL」をクリックすると、SQLを実行できるエディタが表示されます。
こちらからDDLを実行すると表が作成できます。
<img width="299" alt="db2oncloud_16.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435996/827e2fd0-973a-18de-f717-c73c14812295.png">

<img width="1210" alt="db2oncloud_17.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435996/6e32e8a8-7532-da95-7ead-52af4abb3262.png">

Insert文を実行してもいいのですが、この記事では、データのロード方法をご案内します。

4-2.データをロードします。左上のハンバーガーメニューをクリックして「LOAD」をクリックすると、データロードを実行できるページが表示されます。
<img width="302" alt="db2oncloud_18.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435996/a866ce51-737c-5b88-62f3-3943c3bfb22d.png">
<img width="1211" alt="db2oncloud_20.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435996/90507458-f4d9-b186-47c9-7207dcc38b1e.png">

4-3.データ用のファイルを準備します。
<img width="652" alt="db2oncloud_19.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435996/c87f878d-4b86-f1ef-2073-98c2bf5aa29a.png">

4-4.データロードの画面から「My Computer」を選び、ファイルをドラッグ＆ドロップします。ファイルがアップロードされるとSelected Fileにファイル名が表示されます。「NEXT」をクリックします。
<img width="1213" alt="db2oncloud_21.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435996/49d7c27d-877c-276c-14b8-24035d1bf034.png">

4-5.スキーマとテーブルを指定して「NEXT」をクリックします。スキーマはユーザー名と同じになります。
<img width="1212" alt="db2oncloud_22.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435996/b8eac51f-bf7d-9c8f-acfb-b9a1f7950694.png">

4-6.読み込み時の設定を確認します。csvファイルの1行目がヘッダーではない場合は、「Header in first row」をオフにします。「NEXT」をクリックします。
<img width="1214" alt="db2oncloud_23.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435996/4ec251f5-2c25-307f-bc14-2591dbc0b893.png">

4-7.「begin load」をクリックします。
<img width="1209" alt="db2oncloud_24.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435996/299ab48b-39db-06a3-7325-02e633c140e1.png">

4-8.ロードが終了しました。
<img width="1210" alt="db2oncloud_25.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435996/eaae6fe7-6e86-9aa0-2528-43983ae484b7.png">

4-9.RUN SQLに戻り、SQLを実行して結果を確認してみます。データがちゃんと入っているのを確認できました。
<img width="1208" alt="db2oncloud_26.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435996/8ce1853c-a9aa-8510-6432-c5c4d648d04f.png">


以上が、IBM Cloud で無償枠のdb2 on Cloudを使ってみる（パスワードの確認方法含む）、でした。
無償でつかえるのでDb2をさわってみたいなどがあればぜひ環境を作ってみるといいと思います:sparkles:
:smiley_cat: :smiley_cat: