简述
disql功能非常强大,有很多子命令可以使用,并且是命令行模式下唯一可以连接DM数据库进行查询SQL的工具,但是它的交互式命令行功能不够好:
- 无法使用左右键进行光标移动,以编辑输入命令;
- 无法使用上下按键进行历史输入的调出,方便快速执行命令
- 无法使用ctrl+r搜索历史交互命令
为了方便使用disql,可以利用rlwrap进行辅助,它可以对disql命令进行包装,在执行disql命令前加上rlwrap,然后在后续交互式使用时就能使用到上述功能。
安装方法
- 下载安装包
https://github.com/hanslub42/rlwrap/releases/download/v0.47.1/rlwrap-0.47.1.tar.gz
- 解压安装包
tar xf rlwrap-0.47.1.tar.gz
- configure配置
cd rlwrap-0.47.1 && ./configure --prefix=/usr/local/rlwrap --without-libptytty
可能在执行过程中会报错,提示依赖没有装,比如ncurses-devel, readline-devel等,按照对应的操作系统去使用yum或者apt安装即可
- 编译安装
make -j
sudo make install
#install这一步需要有root权限,否则无法安装到目标位置
- 配置用户的环境变量
在用户的~/.bash_profile文件中加上:
export PATH=/usr/local/bin:$PATH
然后source ~/.bash_profile让环境变量即时生效
- 执行命令验证是否可用:
rlwrap disql SYSDBA
可以在交互式模式下尝试使用上下左右键进行切换历史命令,编辑命令,ctrl+r搜索历史命令等常用操作