Linux下SQLplus上下键不能显示历史命令问题的解决方法

发布时间:2020-03-23编辑:脚本学堂
在linux系统下,sqlplus中运行SQL语句之后,想用上下键把历史命令找出来,发现不支持,这里分享下我的解决方法,有需要的朋友可以参考下。

本节内容:
SQLplus上下键不能显示历史命令

linux的sqlplus中运行sql语句之后,想用上下键把历史命令找出来,发现不支持。

可以按照如下的步骤加以解决:

1,首先,从http://download.csdn.net/user/kkdelta下载 rlwrap软件。

2,安装rlwrap
 

复制代码 代码示例:
[root@jbxue]# tar -zxvf rlwrap-0.30.tar.gz 
[root@jbxue]# cd rlwrap-0.30 
[root@jbxue rlwrap-0.30]# ./configure 
[root@jbxue rlwrap-0.30]# make 
[root@jbxue rlwrap-0.30]# make install 
[root@jbxue rlwrap-0.30]# rlwrap 

如果有You need the GNU readline library(ftp://ftp.gnu.org/gnu/readline/ ) to build this program!错误,需要安装:
yum -y install readline*

3,使用rlwrap,rlwrap sqlplus / as sysdba
此时,熟悉的上下键功能又回来了。

4,设置别名,让sqlplus默认在rlwrap方式下运行。
[root@jbxue rlwrap-0.30]# vi /home/oracle/.bash_profile
添加:
alias sqlplus='rlwrap sqlplus'
alias定义中使用的是单引号,而不是TAB上面的那个,/home/oracle/是oracle用户的主目录。

上面的设置需要Oracle用户重新登录。

如此以上设置不起作用,可以设置在/home/oracle/.bashrc中,这样每次改变到bash的时候都会设置alias。

使用type sqlplus验证,如果显示以下信息证明alias设置成功:
sqlplus is aliased to ‘rlwrap sqlplus’