Oracle LinuxでSQL Developerを利用する方法

本ブログは、[オラクル・クラウドの個人ブログ](https://qiita.com/letian/items/10152a4fec813c1b7d98)の1つです。

# 初めに
SQL Developerは、オラクルが提供する便利なGUIツールです。Windows OSだけでなく、Linuxにも対応しています。これから、OCI LinuxインスタンスでSQL Developerを利用する方法を紹介したいと思います。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1121622/823870dd-59fe-f417-2276-a898b692014e.png", width="500">

__SQL Developerの基本情報__
最新バージョン：21.4.3 (2022年6月時点)
対応OS：Windows/Linux/MacOS/Other
料金：<font color=blue>無償</font>

__検証環境__

|項目|内容|
|--|--|
|OS|Oracle Linux 8 (OCI Compute Instance)|
|SQL Developer|21.4.3 (Linux RPM)|
|Java バージョン|1.8.0_333|
|VNC ソフト|[TigerVNC](https://tigervnc.org/) (v1.12)|
|SSH ソフト|OpenSSH (Option)|

SSHトンネルはVNC接続に必須ではありませんが、安全の通信を確保するため強くお勧めします。

__ステップ__
- [1. 事前準備](#1-事前準備)
- [2. JDK 8のインストール](#2-jdk-8のインストール)
- [3. SQL Developerのインストール](#3-sql-developerのインストール)
- [4. 設定ファイルにJDKパスを追加](#4-設定ファイルにjdkパスを追加)
- [5. SQL Developerの起動](#5-sql-developerの起動)

# 1. 事前準備
デフォルトでは、OCIでOracle Linuxインスタンスを作成した後、GUIデスクトップとVNCはインストールされません。SQL Developerを利用する前に、最初にそれらをインストールする必要があります。

Oracle Linuxインスタンスに、GNOMEデスクトップとVNCをインストールする方法については、下記のブログをご参照ください。
[VNCとSSHトンネルでOCI Linuxインスタンスに接続する方法](https://qiita.com/liu-wei/items/ea6bebe7ebb46bff84e9)

# 2. JDK 8のインストール
SQL Developerを利用するにはJDK 8または11が必要であるため、先にJDKのインストールをしておきます。

__JDK 8のダウンロード__
オフィシャル・サイトからのダウンロードできます。
ダウンロードURL: https://www.oracle.com/java/technologies/downloads/

"JDK 8 - Linux - x64 RPM Package"を選択します。
この例には`jdk-8u333-linux-x64.rpm`を使用しています。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1121622/8b35aa7f-fe02-a180-5301-ebedf2df760e.png", width="650">

__JDK 8のインストール__
RPMファイルをLinux VMに転送し、以下のコマンドでインストールします。

コマンド： `sudo rpm -ivh <Package_File_Name>`
```bash
[opc@linux8 Downloads]$ sudo rpm -ivh jdk-8u333-linux-x64.rpm
warning: jdk-8u333-linux-x64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY
Verifying...                          ################################# [100%]
Preparing...                          ################################# [100%]
Updating / installing...
   1:jdk1.8-2000:1.8.0_333-fcs        ################################# [100%]
Unpacking JAR files...
        tools.jar...
        plugin.jar...
        javaws.jar...
        deploy.jar...
        rt.jar...
        jsse.jar...
        charsets.jar...
        localedata.jar...
[opc@linux8 Downloads]$
```

__Java バージョンの確認__
```bash
[opc@linux8 Downloads]$ java -version
java version "1.8.0_333"
Java(TM) SE Runtime Environment (build 1.8.0_333-b02)
Java HotSpot(TM) 64-Bit Server VM (build 25.333-b02, mixed mode)
[opc@linux8 Downloads]$
```

# 3. SQL Developerのインストール
ダウンロードURL: https://www.oracle.com/tools/downloads/sqldev-downloads.html
"Linux RPM"を選択します。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1121622/0f0f883e-a6d4-a458-805c-a7f133220b59.png", width="450">

ダウンロードしたRPMファイルをLinux VMに転送し、以下のコマンドでインストールします。

コマンド： `sudo rpm -ivh <Package_File_Name>`
```bash
[opc@linux8 Downloads]$ sudo rpm -ivh sqldeveloper-21.4.3-063.0100.noarch.rpm
Verifying...                          ################################# [100%]
Preparing...                          ################################# [100%]
Updating / installing...
   1:sqldeveloper-21.4.3-063.0100     ################################# [100%]
[opc@linux8 Downloads]$
```

# 4. 設定ファイルにJDKパスを追加
設定ファイルのフルパス: `/home/<username>/.sqldeveloper/<version>/product.conf`
追加行: `SetJavaHome /usr/java/<jdk_version>`

編集後の例は、以下のようです。

```bash
[opc@linux8 21.4.3]$ pwd
/home/opc/.sqldeveloper/21.4.3
[opc@linux8 21.4.3]$ ll
total 4
-rw-rw-r--. 1 opc opc 2724 May 31 11:06 product.conf
[opc@linux8 21.4.3]$ cat product.conf | grep SetJavaHome
# SetJavaHome, can take '\' path separators.
# SetJavaHome /path/jdk
SetJavaHome /usr/java/jdk1.8.0_333-amd64
```

# 5. SQL Developerの起動
メニューかコマンドかどちらでもOKです。

__メニュー：__　Activiites -> Show Applications -> SQL Developer
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1121622/19e780c6-a9b3-ca8a-71c2-0b92c2cc28d6.png)

__コマンド：__ ターミナルから「<font color=blue>sqldeveloper</font>」を入力すれば起動できます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1121622/40b223ee-e1d7-280c-97bc-6fdba7bf3cf2.png)

次のようなウェルカム・ページが表示されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1121622/aa161b10-d262-5a9b-4d89-f1ef85ea9318.png)

以上です。

----
__関連記事__
[オラクル・クラウドの個人ブログ一覧](https://qiita.com/liu-wei/items/10152a4fec813c1b7d98)
[SQL Developerで各種なDBへの接続方法](https://qiita.com/liu-wei/items/08f2e2f6d90c08549cbf)
[VNCとSSHトンネルでOCI Linuxインスタンスに接続する方法](https://qiita.com/liu-wei/items/ea6bebe7ebb46bff84e9)