sqlplus初始化login.sql

来源:互联网 发布:海量数据存储与管理 编辑:程序博客网 时间:2024/06/10 12:41

    define_editor=vim

    set serveroutput on size 100000

    set trimspool on

    set long 5000

    set linesize 120

    set pagesize 9999

    column plan_plus_exp format a80

    column global_name new_value gname

    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

将上面代码存成文件login.sql 放在 $ORACLE_HOME/sqlplus/admin 目录下面 然后打开sqlplus 发现不一样了

    SQL*PLUS在启动时会自动运行两个脚本:glogin.sql、login.sql.文件glogin.sql是ORACLE为所有的数据库用户建立的、默认的SQLPLUS设置,存放在目录$ORACLE_HOME/sqlplus/admin/下。而用户可以将个人喜欢的常用设置放在login.sql文件中,每次sqlplus启动时会自动加载。

    SQL*PLUS在启动时先运行glogin.sql文件,再运行login.sql文件。查找glogin.sql只是在默认路径下找。查找login.sql文件的顺序是:先在当前路径下查找,如果找到则运行,运行后停止查找。如果没找到,再查找是否设置了SQLPATH环境变量,如果已经设置了该环境变量,就在该变量所对应的路径下查找,如果找到则运行,运行后停止查找。如果没有找到也会停止查找,不会再继续查找。如果没有设置SQLPATH环境变量同样停止查找,不会再继续查找。

    设置SQLPATH环境变量:

    vi ~/.bash_profile

    加入:

    SQLPATH=/home/oracle/admin/sql:$ORACLE_HOME/sqlplus/admin; export SQLPATH

     比如 存放 脚本 的地方 
      /oracle/product/10.2.0/DB_1/sqlplus/admin 
      idmp@idmp-192.168.2.101> @ /oracle/product/10.2.0/DB_1/sqlplus/admin/login.sql;

    加入环境变量需要重新打开终端再打开sqlplus