Oracle SqlPlus设置Login.sql的技巧
sqlplus在启动时会自动运行两个脚本:glogin.sql、login.sql这两个文件
执行顺序为
1.默认在在$ORACLE_HOME/sqlplus/admin路径下查找glogin.sql文件执行
2.默认在在当前路径下查找login.sql文件执行,若未查找到对应文件则执行3
3.判断是否设置SQLPATH环境变量,如果设置了该变量则在对应路径下查找并执行,未找到则停止查找
可以在login.sql文件中加入一些常用设置使用SQLPLUS时更便捷,以下试验在ORACLE11.2.0.1.0上进行
默认$ORACLE_HOME/sqlplus/admin路径下存在glogin.sql文件
当前用户的profile文件中设置SQLPATH环境变量exportSQLPATH=$ORACLE_HOME/sqlplus/admin:$SQLPATH
在默认路径下加入我们自己的login.sql文件,以下配置为常用配置
--SQLPLUS默认编辑器设置为vi define_editor=vi --默认打开DBMA_OUTPUT,这样不必要每次在输入这个命令,同时将默认缓冲池设置得尽可能大 setserveroutputonsize1000000 --假脱机输出文本时,会去除文本行两端的空格,而且行宽不定,如果设置为off(默认设置),假脱机输出的文本行宽度则等于所设置的linesize settrimspoolon --设置选择LONG和CLOB列时显示的默认字节数 setlong5000 --设置显示的文本宽为200个字符 setlinesize200 --设置SQLPLUS多久打印一次标题,将此参数设置大些这样每页只显示一次标题 setpagesize9999 --设置AUTOTRACE得到解释计划输出的默认宽度,一般80足够放下整个计划 columnplan_plus_expformata80 --设置SQLPLUS提示符,显示格式为用户@数据库名 columnglobal_namenew_valuegname settermoutoff definegname=idle columnglobal_namenew_valuegname selectlower(user)||'@'||substr(global_name,1,decode(dot,0,length(global_name),dot-1))global_name from(selectglobal_name,instr(global_name,'.')dotfromglobal_name); setsqlprompt'&gname>' settermouton
使用scott用户登录后如下
[oracle@RHEL65~]$sqlplusscott/oracle SQL*Plus:Release11.2.0.1.0ProductiononSatJan2300:11:262016 Copyright(c)1982,2009,Oracle.Allrightsreserved. Connectedto: OracleDatabase11gEnterpriseEditionRelease11.2.0.1.0-64bitProduction WiththePartitioning,OLAP,DataMiningandRealApplicationTestingoptions scott@ORCL>select*fromemp; EMPNOENAMEJOBMGRHIREDATESALCOMMDEPTNO ---------------------------------------------------------------------------------------- 7369SMITHCLERK79021980-12-1700:00:0080020 7499ALLENSALESMAN76981981-02-2000:00:00160030030 7521WARDSALESMAN76981981-02-2200:00:00125050030 7566JONESMANAGER78391981-04-0200:00:00297520 7654MARTINSALESMAN76981981-09-2800:00:001250140030 7698BLAKEMANAGER78391981-05-0100:00:00285030 7782CLARKMANAGER78391981-06-0900:00:00245010 7788SCOTTANALYST75661987-04-1900:00:00300020 7839KINGPRESIDENT1981-11-1700:00:00500010 7844TURNERSALESMAN76981981-09-0800:00:001500030 7876ADAMSCLERK77881987-05-2300:00:00110020 7900JAMESCLERK76981981-12-0300:00:0095030 7902FORDANALYST75661981-12-0300:00:00300020 7934MILLERCLERK77821982-01-2300:00:00130010 14rowsselected. scott@ORCL>setautottraceexpstat; scott@ORCL>select*fromemp; 14rowsselected. ExecutionPlan ---------------------------------------------------------- Planhashvalue:3956160932 -------------------------------------------------------------------------- |Id|Operation|Name|Rows|Bytes|Cost(%CPU)|Time| -------------------------------------------------------------------------- |0|SELECTSTATEMENT||14|532|3(0)|00:00:01| |1|TABLEACCESSFULL|EMP|14|532|3(0)|00:00:01| -------------------------------------------------------------------------- Statistics ---------------------------------------------------------- 0recursivecalls 0dbblockgets 8consistentgets 0physicalreads 0redosize 1630bytessentviaSQL*Nettoclient 524bytesreceivedviaSQL*Netfromclient 2SQL*Netroundtripsto/fromclient 0sorts(memory) 0sorts(disk) 14rowsprocessed scott@ORCL>
可以看到登录之后SQLPLUS按照login.sql文件进行相应设置
以上所述是小编给大家分享的OracleSqlPlus设置Login.sql的技巧,希望对大家有所帮助。