読者です 読者をやめる 読者になる 読者になる

min117の日記

初期desireもち。趣味Mac,メインFedora,仕事xp。

LinuxのSQL*Plusでbashのhistory機能を使う(カーソル↑↓で履歴を呼び出す)

前記事でLinuxでsqlplusを使えるようにした(Oracle謹製Instant Clientを使用)。

min117.hatenablog.com

しかし、ヒストリ機能がない(Instant Clientだから?)。例えば矢印キー(↑や↓)を押しても、過去の履歴を表示できない。これじゃ実用に耐えない。

ーーー

同じ悩みを解決している記事があった。

d.hatena.ne.jp

手順は以下のとおり。

① readline-devel をインストールする

② rlwrap をインストールする

③ sqlplus でヒストリ機能(履歴機能)を試してみる。

上記記事では②はソースからmakeしてたけど、yumでインストールできた。

ーーー

まずは ① readline-devel をインストールするyumでインストールするだけ。

# sudo yum -y install readline-devel

f:id:min117:20161015213820p:plain

何事もなくインストール完了。

ーーー

次に ② rlwrap をインストールするfedoraではこちらもyumからインストールできた。

# sudo yum -y install 

f:id:min117:20161015213938p:plain

こちらも無事にインストールできた。

ーーー

いよいよ ③ sqlplus でヒストリ機能(履歴機能)を試してみるsqlplusを起動する前に rlwrap を呼べばいい。

rlwrap sqlplus scott/tiger@192.168.1.100:1521/MYDB01

ーーー

rlwrapで包んでいるので、履歴機能が使えるようになっている。

f:id:min117:20161015214857p:plain

上矢印を押して履歴が出る(赤枠部分)。

Ctrl + r を押して検索文字列(line)を打つと、履歴を見れる(青枠部分)。

ーーー

sqlplus で履歴が使えるとは。便利すぎる。WindowsOracle純正クライアント(sqlplus)より遥かに便利。さすがはLinux