解决SQLPLUS无法使用上下箭头

1 问题描述

SQLPLUS中使用上下箭头无法获取历史命令,如下图所示:

在这里插入图片描述

按上下箭头会显示^[[A/^[[B

2 解决方案

需要安装rlwrap,可以的话可以用包管理器安装,笔者环境CentOS,这里从源码编译安装。

2.1 下载源码

官方Github可以戳这里,目前最新的版本为0.43

在这里插入图片描述

2.2 安装

上传到服务器后,解压编译安装:

tar -zxvf rlwrap-0.43.tar.gz
cd rlwrap-0.43
./configure
make 
make install

笔者在./configure这步遇到以下错误:

在这里插入图片描述

安装一个库解决:

yum install readline-devel

再次./configure就没有问题了:

在这里插入图片描述

2.3 测试

使用rlwrap sqlplus代替原来的sqlplus登录:

rlwrap sqlplus xxx/xxx as sysdba

这样就可以使用上下箭头了。

因为笔者在root上进行测试,在oracle用户上进行测试可能会出现权限问题,如图:

在这里插入图片描述

到对应目录下创建该文件:

cd /home/oracle
sudo touch .sqlplus_history

创建了之后还是不能执行:

在这里插入图片描述

修改组权限即可:

sudo chmod g+w .sqlplus_history

在这里插入图片描述

2.4 别名

为了方便使用可以加上一个别名:

alias sp='rlwrap sqlplus'

这样下次就可以使用

sp xxx/xxx as sysdba

登录了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值