- 以前、Windows10にSQL*Plusをインストールしました。
- rpmをダウンロードします。
- Alienコマンドでrpmパッケージをdebパッケージに変換します。
- SQL*Plusをインストールします。
- SQL*Plusを起動してみます。
- 失敗したこと
以前、Windows10にSQL*Plusをインストールしました。
ponsuke-tarou.hatenablog.com
RDSのOracleにEC2のUbuntuからSQL*Plusを使って接続したいと思います。
なので今回は、EC2のUbuntuにSQL*Plusをインストールしたいと思います。
rpmをダウンロードします。
インスタンスタイプが小さく動きが悪いのでダウンロードだけリモートデスクトップ接続で行い、あとはSSH接続してコマンドで実施します。
- リモートデスクトップ用ユーザーでUbuntuにリモートデスクトップ接続してブラウザを起動します。
- Oracleのサイトからからパッケージをダウンロードします。
- 32bit用 : Instant Client for Linux x86 (32-bit)
- 64bit用 : Instant Client for Linux x86-64 (64-bit) | Oracle 日本
- ダウンロードするにはOracleアカウント(無料)での認証が必要です。
- ダウンロードするファイル(xxxは32bitか64bitかによって違います)
- ダウンロード先 : リモートデスクトップ用ユーザーのDownloadsディレクトリ
Alienコマンドでrpmパッケージをdebパッケージに変換します。
Alienをインストールします。
Ubuntuは、Debian GNU/Linuxをベースとしたオペレーティングシステムです。
Debianでは、debパッケージでソフトウエアをインストールします。
Alienは、rpmをdebパッケージに変換してくれるプログラムです。
# 1. SSHでUbuntuに接続します。 $ ssh -i .ssh/秘密鍵.pem ubuntu@xx.xx.xx.xx Welcome to Ubuntu 18.04.4 LTS (GNU/Linux 4.15.0-1060-aws x86_64) * Documentation: https://help.ubuntu.com # ...省略... Last login: Fri Mar 6 12:27:00 2020 from 153.242.66.11 # 2. aptでAlienを検索します。 $ apt search alien Sorting... Done Full Text Search... Done alien/bionic 8.95 all # <<<<< これをインストールします。 convert and install rpm and other packages alien-arena/bionic 7.66+dfsg-4 amd64 Standalone 3D first person online deathmatch shooter # ...省略... # 3. Alienをインストールします。 $ sudo apt -y install alien Reading package lists... Done Building dependency tree Reading state information... Done # ...省略... Processing triggers for man-db (2.8.3-2ubuntu0.1) ... # 4. インストールされたことの確認にバージョンを確認します。 $ alien --version alien version 8.95
rpmパッケージをdebパッケージに変換します。
# 1. rpmのダウンロード先であるリモートデスクトップのユーザーのDownloadsディレクトリに移動します。 $ cd /home/ponsuke/Downloads/ $ ls -la | grep rpm -rw-rw-r-- 1 ponsuke ponsuke 26731248 Mar 6 21:42 oracle-instantclient12.2-basiclite-12.2.0.1.0-1.x86_64.rpm -rw-rw-r-- 1 ponsuke ponsuke 708104 Mar 6 21:44 oracle-instantclient12.2-sqlplus-12.2.0.1.0-1.x86_64.rpm # 2. rpmパッケージをdebパッケージに変換します。 $ sudo alien -c oracle-instantclient12.2-basiclite-12.2.0.1.0-1.x86_64.rpm oracle-instantclient12.2-basiclite_12.2.0.1.0-2_amd64.deb generated # -cオプション : パッケージのインストール時・アンインストール時に実行されるスクリプトも変換する $ sudo alien -c oracle-instantclient12.2-sqlplus-12.2.0.1.0-1.x86_64.rpm oracle-instantclient12.2-sqlplus_12.2.0.1.0-2_amd64.deb generated
SQL*Plusをインストールします。
dpkgコマンドでインストールします。
「dpkg」とはdebianのパッケージである「deb」ファイルを取り扱うコマンドである。名前の由来は「Debian Package」の略とされている。
Debianのパッケージ管理システムは他のディストリビューションに比べて最も高度な部類だ。
dpkg単体でもパッケージのインストールやアンインストールは一応に可能だが、実際にはパッケージの操作及び統合管理は「apt」系のコマンド「apt-get」や「aptitude」などで行なわれる。これにより依存関係の解決が行われ、必要なパッケージが自動的に導入される。
debファイルを扱うdpkgコマンドの使い方を簡単解説
# 1. dpkgコマンドでインストールします。 $ sudo dpkg -i oracle-instantclient12.2-basiclite_12.2.0.1.0-2_amd64.deb oracle-instantclient12.2-sqlplus_12.2.0.1.0-2_amd64.deb Selecting previously unselected package oracle-instantclient12.2-basiclite. (Reading database ... 157738 files and directories currently installed.) Preparing to unpack oracle-instantclient12.2-basiclite_12.2.0.1.0-2_amd64.deb ... Unpacking oracle-instantclient12.2-basiclite (12.2.0.1.0-2) ... Selecting previously unselected package oracle-instantclient12.2-sqlplus. Preparing to unpack oracle-instantclient12.2-sqlplus_12.2.0.1.0-2_amd64.deb ... Unpacking oracle-instantclient12.2-sqlplus (12.2.0.1.0-2) ... Setting up oracle-instantclient12.2-basiclite (12.2.0.1.0-2) ... Setting up oracle-instantclient12.2-sqlplus (12.2.0.1.0-2) ... Processing triggers for libc-bin (2.27-3ubuntu1) ... # 2. イントールされたことを確認します。 $ which sqlplus64 /usr/bin/sqlplus64
SQL*Plus用の環境変数を.profileに設定します。
- 参考
# 1. ログインユーザーのホームディレクトリに戻ります。 $ cd ~ $ ls -la | grep profile -rw-r--r-- 1 ubuntu ubuntu 807 Apr 4 2018 .profile # 2. インストール先を確認します。 $ find /usr/lib/oracle/12.2/client64/ -type d /usr/lib/oracle/12.2/client64/ /usr/lib/oracle/12.2/client64/lib /usr/lib/oracle/12.2/client64/bin # 3. SQL*Plus用の環境変数を.profileに設定します。 $ vi .profile # ↓ここから追記するところ # SQL*Plusのインストール場所を指定する環境変数。 export ORACLE_HOME=/usr/lib/oracle/12.2/client64 # UNIXおよびLinux上のライブラリの検索に使用するパスを指定する環境変数。 export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH # グローバリゼーション機能を指定する環境変数。 export NLS_LANG=Japanese_Japan.UTF8 export PATH=$ORACLE_HOME/bin:$PATH # ↑ここまで追記するところ # 4. 環境変数を反映します。 $ source .profile # 5. 環境変数を確認します。 $ printenv | grep -i oracle LD_LIBRARY_PATH=/usr/lib/oracle/12.2/client64/lib: ORACLE_HOME=/usr/lib/oracle/12.2/client64 PATH=/usr/lib/oracle/12.2/client64/bin:...省略...
SQL*Plusを起動してみます。
# 起動しました。 $ sqlplus64 SQL*Plus: Release 12.2.0.1.0 Production on 月 3月 9 14:17:17 2020 Copyright (c) 1982, 2016, Oracle. All rights reserved. ユーザー名を入力してください: