sqlplus提示

edwardking888發表於2010-07-06
在一些線上資料庫,sqlplus登入資料庫的時候,能提示一些像下面這樣詳細登入的資訊:
1.登入的使用者名稱。當你的資料庫中有多個使用者時,它能告訴你當前登入的是哪個使用者。
2.登入的例項名。如果登入的rac,用這個能知道當前登入在哪個node。
3.登入主機的IP。有的時候,你可能登入在2臺資料庫主機上,2個資料庫使用者名稱相同,instance相同,只是資料庫存在在不同的主機上——往往在資料庫遷移的時候會遇到這樣的情況。那麼通過知道資料庫主機的IP,將能防止你出錯。
 
可以在$ORACLE_HOME/sqlplus/admin/glogin.sql檔案中新增以下語句。
define_editor=vi
set timing on
set serveroutput on size 100000
set linesize 100
set trimspool on
set long 5000
set termout off
default gname=idle
column global_name new_value gname
SELECT lower(USER) || '@' ||upper(instance_name)||'('||nvl(UTL_INADDR.GET_HOST_ADDRESS, SYS_CONTEXT('userenv', 'ip_address'))||')' GLOBAL_NAME FROM v$instance;
set sqlprompt '&gname> '
set termout on
 
顯示效果如下:
 
不過在64位WIN7下使用無線網路卡的時候,貌似有點問題:
變成十六進位制了,嘿嘿
 
注:修改$ORACLE_HOME/sqlplus/admin/glogin.sql檔案請慎重,有些第三方的備份軟體(如HP-DP)在登入的時候,會先sqlplus /nolog,再進行使用者的切換conn user/pwd。當我們修改了glogin.sql檔案後,如果通過sqlplus /nolog登入,必須先敲擊一次回車,再conn user/pwd,但是在某些第三方的備份軟體卻沒有這個敲擊一次回車的功能,因此備份會報錯。
 
 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8183550/viewspace-667384/,如需轉載,請註明出處,否則將追究法律責任。

相關文章