在Linux平台下,想在Oracle数据库的SQL*PLUS的命令行提示符下,利用键盘上的上下箭头,调出历史执行的SQL命令,可以考虑采用rlwrap这一开源工具。
 
现,简单记录一下安装过程(Red Hat Enterprise Linux as 5.4环境)。

① 首先下载rlwrap:
在如下地址打开后,在查找框输入rlwrap,并且在显示出来的列表中找到和自己系统对应的包点击进入下载即可:
http://rpm.pbone.net/index.php3

② 安装相关的包

libtermcap-devel-2.0.8-46.1.i386.rpm
readline-devel-5.1-1.1.i386.rpm

[root@server1 ~]# rpm -ivh libtermcap-devel-2.0.8-46.1.i386.rpm
warning: libtermcap-devel-2.0.8-46.1.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing...                ########################################### [100%]
1:libtermcap-devel       ########################################### [100%]

[root@server1 ~]# rpm -ivh readline-devel-5.1-1.1.i386.rpm
warning: readline-devel-5.1-1.1.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing...                ########################################### [100%]
1:readline-devel         ########################################### [100%]

③ 安装rlwrap包
[root@wwl ~]# rpm -ivh rlwrap-0.37-1.el5.i386.rpm
warning: rlwrap-0.37-1.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 217521f6
Preparing...                ########################################### [100%]
   1:rlwrap                 ########################################### [100%]
[root@wwl ~]#

④ 修改oracle 用户的配置文件
[root@wwl ~]# su - oracle
[oracle@wwl ~]$ vi .bash_profile

alias sqlplus='rlwrap sqlplus /nolog'    --(在最好添加这信息,并!wq保存退出)
[oracle@wwl ~]$ source .bash_profile

⑤ 这样就已经完成了,只需用oracle用户执行sqlplus就可以进入SQL*PLUS的命令行提示符,并且可以利用键盘的上下键调出之前执行过的历史命令。