Forum Stats

  • 3,770,761 Users
  • 2,253,163 Discussions
  • 7,875,579 Comments

Discussions

ADB HOL #3-2 : SQL*plus で接続してみよう

TakeshiNagakubo-Oracle
TakeshiNagakubo-Oracle Posts: 18 Employee
edited May 28, 2021 12:30AM in Social Groups

目次に戻る : チュートリアル : Oracle Cloud Infrastructure を使ってみよう

>ADBコンテンツ一覧に戻る

SQL*plusを利用したAutonomous Databaseへの接続方法を確認しましょう。

クレデンシャル・ウォレット(Credential.zipファイル)の扱いに慣れてしまえば、Autonomous だからと言って特別なことはありません。

この章ではの手順で作成した仮想マシンにTera Termを利用してアクセスすることを前提に記載しています。

また事前に接続先となるADBインスタンスのクレデンシャル・ファイルをご用意ください。

作業の流れ

  1. 設定ファイルの編集
  2. ADBに接続

所要時間 : 約10分

1. 設定ファイルの編集

     1. 事前準備しておいた仮想マシンにopcユーザでログインします。

     2. クレデンシャル・ファイルを仮想マシン上にアップロードします。

          ※ここではTeratermを前提に記載しています。

     2-1. Tera Term を起動し、仮想マシンにopcユーザでログインします。

     2-2. クレデンシャル・ファイル(wallet_atp01.zip)をTera Termのウィンドウ画面上にドラッグ・アンド・ドロップします。

     2-3. 送付先のフォルダは特に指定せずに、そのまま SCP をクリックします。

pastedImage_67png

     2-4. opcユーザのホームディレクトリを確認し、Wallet_atp01.zip が転送されたことを確認します。(ファイルが存在すればOKです。)

          $ ls 

        3. 先ほどアップロードしたクレデンシャル・ファイルをoracleユーザの配下に移動し、ファイルの所有者をoracleユーザに変更します。

               (* 本ハンズオンラボでは特に指定のない限りoracleユーザを利用して各種操作を体験いただきます。)

           $ sudo mv Wallet_atp01.zip /home/oracle/labs/wallets/.
           $ sudo chown oracle:oinstall /home/oracle/labs/wallets/Wallet_atp01.zip

4. oracleユーザにスイッチします。

$ sudo -s
$ su - oracle

     (一旦rootユーザにスイッチしてから、oracleユーザにスイッチしています)

5. zipファイルをディレクトリ「wallet_atp01」の下に展開します。

$ unzip  /home/oracle/labs/wallets/Wallet_atp01.zip -d ~/labs/wallets

6. TNS_ADMIN環境変数をディレクトリ「wallet_atp01」に設定します。

$ export TNS_ADMIN=/home/oracle/labs/wallets
NOTE)アプリ毎に接続するインスタンスを切り替えたい場合は、インスタンス毎にwallets_atp01といったようにディレクトリを定義し、アプリ毎に環境変数TNS_ADMINのパスを切り替えると簡単です。

7. $HOME/walletsディレクトリに移動します。

$ cd ~/labs/wallets/

8. 解凍されたファイルの中から sqlnet.ora ファイルの以下を編集します

               編集前: WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="?/network/admin")))

               編集後: WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY=$TNS_ADMIN)))

$ vi sqlnet.ora
<< viにて編集 >>
$ cat sqlnet.ora
WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY=$TNS_ADMIN)))
SSL_SERVER_DN_MATCH=yes

[参考] viの使い方

   上下左右キー   カーソルの場所を移動する

     i    カーソルの場所から編集する(InsertModeに入る)

    ESCキー InsertModeを抜ける

     x   カーソルの場所を一文字消す

    :wq   ファイルを保存して閉じる

    :q    ファイルを閉じる(それまでの編集は破棄される)

    :q!   強制的に終了する

2. ADBに接続

     1. 以下を参考にADBにSQL*Plusを起動します。

 $ sqlplus admin/Welcome12345#@atp01_low

                    username : admin

                    password : Welcome12345#(インスタンス作成時に指定した値)

                    conn_string : atp01_low (接続サービス名 )

               * 接続サービスに関する詳細は技術詳細、もしくはを参照ください。

     2. 試しにサンプルコマンドを実行します。ここでは例としてこのインスタンスのバージョンを確認しています。

SQL> select version from v$instance ;

     3. エラーなく接続出来たらSQL*Plusを終了します。

SQL> exit

3. SQLcl で ADBに接続してみよう

SQLclは、無料のコマンドラインツールです。(SQLclについてはこちら

SQL*Plusに似ていますがSQL*Plusよりも多くの機能が備わっており、

Autonomous Databaseにも簡単に接続できるようになっています。

1. SQLclを起動します。

$ sql /nolog

2. ウォレットを指定します。

SQL> set cloudconfig /home/oracle/labs/wallets/Wallet_atp01.zip

3. 接続します。

SQL> connect admin/Welcome12345#@atp01_low


以上で、この章の作業は終了です。

次の章にお進みください。