[Oracle] sqlplus启动时会查找和加载的两个文件login.sql和glogin.sql

博客首页 » Oracle sqlplus启动时会查找和加载的两个文件login.sql和glogin.sql

发布于 10 Dec 2015 03:35
标签 blog
sqlplus启动时会查找和加载的两个文件login.sql和glogin.sql,这与Linux的profile、bash的.bash_profile类似
http://www.linuxidc.com/Linux/2014-09/106798.htm

sqlplus启动后的环境设置

sqlplus启动时会查找和加载的两个文件login.sql和glogin.sql。
其中glogin.sql文件默认存放在$Oracle_HOME/sqlplus/admin目录下,login.sql可以设置在SQLPATH中。

一、login.sql文件
login.sql文件可以存放sqlplus中能使用的任何命令,包括sqlplus命令和sql语句。
sqlplus启动时会首先查找当前目录下的login.sql文件,其次会在SQLPATH目录下查找。
如果找到glogin.sql文件,则在SQLPLUS显示"SQL>”前执行login.sql里的所有内容。
如果没找到login.sql文件,则停止查找。
所以可将个人喜欢的常用设置放在login.sql文件中,每次sqlplus启动时会自动加载。

设置SQLPATH
在ORACLE用户profile文件中加入SQLPATH环境变量。我的是.bash_profile
如:export SQLPATH=/data/app/sqlpath(此路径是你login.sql所在的目录)
当然也可启动sqlplus后,再执行该文件(使用@命令)。

二、glogin.sql
文件glogin.sql是ORACLE为所有的数据库用户建立默认的SQLPLUS设置,默认存放在$ORACLE_HOME/sqlplus/admin目录下。
sqlplus启动时也会在出现"SQL>”之前自动执行该文件的所有内容。所以也可将一些常用设置放在该文件里。

常用环境设置命令
1. 设置sqlplus登录的username和instance
SQL> set sqlprompt '_user @&_CONNECT_IDENTIFIER> '
SYS @demo >
2. 打开/关闭sql语句返回的记录条数
set feedback on/offset
3. 打开/关闭sql语句运行时间统计
set timing on/off
4. 打开/关闭系统时间显示
set time on/off

login.sql例子:

define _editor=vi                                         
 
set serveroutput on size 1000000                                     
 
set trimspool on
set long 5000
set linesize 100
set pagesize 9999
 
column plan_plus_exp format a80
 
set termout off
define gname=idle
column global_name new_value gname
select lower(user) || '@' || substr( global_name, 1, decode( dot, 0,
 length(global_name), dot-1) ) global_name
 from (select global_name, instr(global_name,'.') dot from global_name );
set sqlprompt '&gname> '
set termout on

本页面的文字允许在知识共享 署名-相同方式共享 3.0协议和GNU自由文档许可证下修改和再使用,仅有一个特殊要求,请用链接方式注明文章引用出处及作者。请协助维护作者合法权益。


系列文章

文章列表

  • Oracle sqlplus启动时会查找和加载的两个文件login.sql和glogin.sql

这篇文章对你有帮助吗,投个票吧?

rating: 0+x

留下你的评论

Add a New Comment