rlwrap, 可以帮助sqlplus通过上下翻行来浏览历史记录的工具。通过RHEL EPEL, 可以非常方便的安装rlwrap
1. 测试环境
Oracle Linux 5.8
2. EPEL: Extra package for Enterprise Linux
URL: http://fedoraproject.org/wiki/EPEL
3. 设置oracle public yum server
http://public-yum.oracle.com/
4. 下载EPEL的rpm package
URL: http://ftp.iij.ad.jp/pub/linux/fedora/epel/5/i386/epel-release-5-4.noarch.rpm
wget http://ftp.iij.ad.jp/pub/linux/fedora/epel/5/i386/epel-release-5-4.noarch.rpm
# 如果不能访问,请检查是否设置了代理服务器
# echo $HTTP_PROXY
5. 安装 EPEL package
[root@node1 yum.repos.d]# rpm -ivh ./epel-release-5-4.noarch.rpm
warning: ./epel-release-5-4.noarch.rpm: Header V3 DSA signature: NOKEY, key ID 217521f6
Preparing… ########################################### [100%]
1:epel-release ########################################### [100%]
[root@node1 yum.repos.d]# ls
epel-release-5-4.noarch.rpm
epel.repo epel-testing.repo public-yum-el5.repo
6. 安装rlwrap
[root@node1 yum.repos.d]# yum install rlwrap
Loaded plugins: rhnplugin, security
This system is not registered with ULN.
ULN support will be disabled.
epel | 3.7 kB 00:00
epel/primary_db | 3.8 MB 00:13
Setting up Install Process
Resolving Dependencies
–> Running transaction check
—> Package rlwrap.x86_64 0:0.37-1.el5 set to be updated
–> Finished Dependency Resolution
Dependencies Resolved
=============================================================================================================================
Package Arch Version Repository Size
=============================================================================================================================
Installing:
rlwrap x86_64 0.37-1.el5 epel 92 k
Transaction Summary
=============================================================================================================================
Install 1 Package(s)
Upgrade 0 Package(s)
Total download size: 92 k
Is this ok [y/N]: y
Downloading Packages:
rlwrap-0.37-1.el5.x86_64.rpm | 92 kB 00:00
warning: rpmts_HdrFromFdno: Header V3 DSA signature: NOKEY, key ID 217521f6
epel/gpgkey | 1.7 kB 00:00
Importing GPG key 0x217521F6 "Fedora EPEL <epel@fedoraproject.org>" from /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL
Is this ok [y/N]: y
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : rlwrap 1/1
Installed:
rlwrap.x86_64 0:0.37-1.el5
Complete!
7. rlwrap rpm 依赖于以下三个rpm
– readline
– readline-devel
– libtermcap-devel
8. 编辑oracle用户的profile (~/.bash_profile), 追加
alias sqlplus = ‘ rlwrap sqlplus’
这个办法在OL 6依然适用。
下面的两个blog演示了如何编译rlwrap的source
http://qing.weibo.com/tj/6647644533001yy3.html
http://martincarstenbach.wordpress.com/2011/09/01/compiling-rlwrap-for-oracle-linux-6-1-x86-64/