在Linux下使用sqlplus曆史回調功能

來源:互聯網
上載者:User

當在Linux Shell中運行SQL*Plus的時候,並不提供瀏覽曆史命令列的功能。相反的,在Windows作業系統上,當在DOS命令視窗中運行SQL*Plus的時候,可以使用向上,向下鍵來跳回之前已經執行過的SQL語句。你可以 根據需要修改他們,然後按[Enter]重新提交執行。

為了在Linux中達到同樣的目的,你可以安裝rlwrap,這個程式本身是個Shell,可以運行任何你提供給它的命令包括參數,並添加命令曆史瀏覽功能。 The rlwrap program is under the GPL license。

1:安裝
rlwrap-0.28.tar.gz:http://utopia.knoware.nl/~hlub/uck/rlwrap/

1):解壓縮安裝檔案
[Oracle@Channel-MQ3 ~]$gunzip rlwrap-0.28.tar.gz
[oracle@Channel-MQ3 ~]$tar xvf rlwrap-0.28.tar

2):切換到root使用者,執行下面的命令
[root@Channel-MQ3 ~]# cd /home/oracle/rlwrap-0.28
[root@Channel-MQ3 rlwrap-0.28]# ls
aclocal.m4 completions configure INSTALL README TODO
AUTHORS config.h configure.ac Makefile src tools
bash30-005.patch config.h.in COPYING Makefile.am stamp-h1
BUGS config.log distribution Makefile.in test
ChangeLog config.status doc NEWS test.log
[root@Channel-MQ3 rlwrap-0.28]#./configure
[root@Channel-MQ3 rlwrap-0.28]#make
[root@Channel-MQ3 rlwrap-0.28]#make install

2:使用
$ rlwrap [-options]
[oracle@Channel-MQ3 ~]$ which rlwrap
/usr/local/bin/rlwrap
[oracle@Channel-MQ3 ~]$ rlwrap sqlplus / as sysdba

SQL*Plus: Release 10.2.0.1.0 - Production on Wed Jul 18 10:31:11 2007
Copyright (c) 1982, 2005, Oracle. All rights reserved.

Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options

SQL> select * from v$sga;

NAME VALUE
-------------------- ----------
Fixed Size 1219856
Variable Size 121635568
Database Buffers 310378496
Redo Buffers 7168000

-- 使用向上鍵調回最後執行的命令,按[Enter]重新執行或修改後按[Enter]執行
SQL> select * from v$sga;

NAME VALUE
-------------------- ----------
Fixed Size 1219856
Variable Size 121635568
Database Buffers 310378496
Redo Buffers 7168000

另外rlwrap還有很多選項可以設定
eg:
−l, −−logfile file
Append command’s output (including echo’ed user input) to file (creating file when it doesn’t exist).

測試如下
[oracle@Channel-MQ3 ~]$ rlwrap -l benbotest.log sqlplus / as sysdba

SQL*Plus: Release 10.2.0.1.0 - Production on Wed Jul 18 10:34:50 2007
Copyright (c) 1982, 2005, Oracle. All rights reserved.

Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options

SQL> select * from v$version;

BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod
PL/SQL Release 10.2.0.1.0 - Production
CORE 10.2.0.1.0 Production
TNS for Linux: Version 10.2.0.1.0 - Production
NLSRTL Version 10.2.0.1.0 - Production

SQL> exit
Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
[oracle@Channel-MQ3 ~]$ cat benbotest.log

[rlwrap] Wed Jul 18 10:34:50 2007
SQL*Plus: Release 10.2.0.1.0 - Production on Wed Jul 18 10:34:50 2007
Copyright (c) 1982, 2005, Oracle. All rights reserved.

Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options

SQL> select * from v$version;

BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod
PL/SQL Release 10.2.0.1.0 - Production
CORE 10.2.0.1.0 Production
TNS for Linux: Version 10.2.0.1.0 - Production
NLSRTL Version 10.2.0.1.0 - Production

SQL> exit
Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
[oracle@Channel-MQ3 ~]$

當然,如果嫌每次敲rlwrap不爽,可以在/etc/profile或者自己的~/.bashrc裡面添加alias sqlplus='rlwrap sqlplus'。其他發行版的朋友可以選擇rpm包或者乾脆從源碼自己編譯。

其它選擇參考manpage。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.