BASH-like command line history für Oracle
wer viel mit SQLPLUS oder RMAN an der Kommandozeile arbeitet vermisst sicherlich die aus der BASH bekannten History-Funktionen und so nützliche Tasten wie Pfeil-Hoch oder STRG+R (Suche in der History).
Folgende Tools bringen hier Abhilfe, beide sind Wrapper um die Oracle-Befehle sqlplus und rman und können parallel installiert werden:
-
rlwrap - bringt History und Bash-ähnliche Edit-Funktionen
-
gqlplus - bringt zusätzlich zu den Funktionen von rlwrap eine Tab-Completion für Tabellennamen usw. (das Tool wirft aber ab und an mal Fehler)
Installation von rlwrap (falls der Server down ist, hier der Download):
wget http://utopia.knoware.nl/~hlub/uck/rlwrap/rlwrap-0.28.tar.gz
tar xvfz rlwrap-0.28.tar.gz
cd rlwrap-0.28
./configure && make
jetzt muss man sich noch entscheiden, ob man das Tool systemweit braucht, oder ob eine Installation in das $ORACLE_HOME ausreicht.<br /> systemweite Installation (als root) installiert das Binary und die Man-Page:
make install
soll das nur in $ORACLE_HOME liegen, reicht folgendes (als User oracle):
cp src/rlwrap $ORACLE_HOME/bin/
um zukünftig mit dem Wrapper zu arbeiten muss er noch in die Datei ~/.bashrc des Oracle-Users als Alias eingetragen werden (einfach in die Datei einfügen):
alias sqlplus='rlwrap sqlplus'
alias rman='rlwrap rman'
Jetzt die Installation von gqlplus:
wget http://mesh.dl.sourceforge.net/sourceforge/gqlplus/gqlplus-1.12.tar.gz
tar xvfz gqlplus-1.12.tar.gz
cd gqlplus-1.12
./configure && make
cp gqlplus $ORACLE_HOME/bin/
gqlplus kann jetzt einfach als Ersatz zu sqlplus aufgerufen werden:
gqlplus / as sysdba