安装rlwrap
rlwrap封装了readline,所以安装rlwrap之前需要安装readline库。可以通过yum方式安装,也可以下载源码包进行安装。官方网站:http://utopia.knoware.nl/~hlub/uck/rlwrap/
I. yum方式安装
CentOS系统默认的yum软件仓库中没有rlwrap这个包,需要通过第三方yum源安装。
a. 安装第三方yum源
# rpm -ivh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
# rpm --import/etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6 //导入key
默认会在/etc/yum.repos.d/下创建epel.repo和epel-testing.repo两个配置文件。
b. 安装rlwrap和readline
# yum install rlwrap readline readline-devel -y
II. 源码包安装
其他Linux发行版如果源里没有rlwrap和readline的(如SUSE企业版默认没有这两个包),要分别下载这两个源码包编译安装一下。
a. 安装readline
# wgetftp://ftp.gnu.org/gnu/readline/readline-6.2.tar.gz
# tar zxvf readline-6.2.tar.gz
# cd readline-6.2/
# ./configure
# make
# make install
b. 安装rlwrap
# wgethttp://utopia.knoware.nl/~hlub/rlwrap/rlwrap-0.37.tar.gz
# tar zxvf rlwrap-0.37.tar.gz
# cd rlwrap-0.37/
# ./configure
# make
# make install
./configure 报错:
rlwrap You need the GNU readlinelibrary(ftp://ftp.gnu.org/gnu/readline/ ) to build this program!
解决办法:
Centos 6.x
wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm rpm -ivh epel-release-6-8.noarch.rpm rpm -ivh remi-release-6.rpm
允许remi repository
vi /etc/yum.repos.d/remi.repo
编辑[remi]下的enabled选项从0设为1
[remi] name=Les RPM de remi pour Enterprise Linux 6 - $basearch #baseurl=http://rpms.famillecollet.com/enterprise/6/remi/$basearch/ mirrorlist=http://rpms.famillecollet.com/enterprise/6/remi/mirror enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi
至此,安装完成。
安装完运行yum报错:
Error: Cannot retrieve metalink for repository: epel. Please verify its path and try again
解决办法:
vi /etc/yum.repos.d/epel.repo
编辑[epel]下的baseurl前的#号去掉,mirrorlist前添加#号。正确配置如下:
[epel] name=Extra Packages for Enterprise Linux 6 - $basearch baseurl=http://download.fedoraproject.org/pub/epel/6/$basearch #mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch failovermethod=priority enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
再运行
yum makecache
yum install readline-devel -y
7.2 设置sqlplus的系统别名
# vim /home/oracle/.bash_profile
在尾部添加:
alias sqlplus='rlwrap sqlplus'
alias rman='rlwrap rman'
退出oracle用户再重新登录就OK了。现在Linux下的sqlplus用起来就像cmd中一样了。