您在这里:首页 > 学员专区 > 技术文章
Oracle视频
Oracle
CUUG课程

关于设置SQLPLUS提示符样式的方法

 


引题:大家在日常工作中,我想99%都是用到sqlplus来登陆数据库,对数据库进行管理、调优、配置。那么如果有很多台数据库的时候,我们在连接后全部是统一的SQL>,就有可能发生目前不知道连接那个库上了,当我们切换用户很频繁的时候也有可能不清楚当前在使用的是那个用户,下面我就给大家介绍一下,如何配置sqlplus的登陆配置文件

系统:RedHat Linux 5.4

数据库:oracle 10G

工具:sqlplus

 

一、全局模式

什么叫全局模式呢:当我们配置完sqlplus登陆配置文件后,无论在哪个目录下都登陆数据库,您设置【sqlplus提示符样子,在任何目录下进入sqlplus都会加载此提示符样子】的效果都可以呈现

1.glogin.sql 配置文件的位置

答:$ORACLE_HOME/sqlplus/admin/glogin.sql

用vim $ORACLE_HOME/sqlplus/admin/glogin.sql

2.添加的字符串,取默认变量

定位到这个文件的最后一行,回车另起一行的开头添加如下字符串

set sqlprompt "_user'@'_connect_identified> "

含义:_user 代表 当前登陆用户名    _connect_identified 连接串名 ,在glogin.sql中设置全局sqlplus提示符样子user和connect identified 是sqlplus默认变量

注:此时设置的是在所有目录下sqlplus提示符生效,  @替换【¥/#/&都可以】,从别的目录进入sqlplus也加载提示符变量

3.保存&退出

4.sqlplus  /  as   sysdba

看现在的sqlplus提示符已经变化了,sys表示当前登录的是管理员,mdsoss是我的数据库连接串名,这样的话我们在登录若干个数据库的时候就不会发生混洗的情况了。

sys@mdsoss>

 

 

二、局部模式

什么叫局部模式呢:只在当前目录有效,例如我们在当前目录下配置login.sql文件,那么就在当前目录下进入sqlplus会加载login.sql文件提示符会生效,其他目录不生效

1.在当前目录下创建login.sql文件

例子 vim /home/oracle/login.sql

2.编辑login.sql文件,添加一行字符串

set sqlprompt "_user'@'_connect_identified> "

含义:_user 代表 当前登陆用户名    _connect_identified 连接串名 ,在glogin.sql中设置全局sqlplus提示符样子user和connect identified 是sqlplus默认变量

注:此时设置的是在当前目录下sqlplus提示符生效,  @替换【¥/#/&都可以】,从别的目录进入sqlplus不加载提示符变量

3.保存&退出

4.sqlplus  /  as   sysdba

sys@mdsoss>

5.局部生效测试版

如果我们在其他目录下登录sqlplus,这是我们已经发现了不同点,恢复到原始状态

sqlplus  /  as   sysdba

SQL>

 

三、指定用户名和实例名方法

1.编辑glogin.sql 和 login.sql 文件,在最后面添加如下内容

set term off

define user_name=""

define instance_name=""

column user_name new_value user_name

column instance_name new_value instance_name

select lower(user) user_name, instance_name instance_name from v$instance;

set sqlprompt'&user_name@&instance_name>'    

注释: --user_name 代表登陆的用户名,instance_name 代表登陆的实例名sys@mdsoss> @可替换【¥/#/&都可以】

2.使用sqlplus登录数据库

这种方式在登陆和切换用户的时候,可指定用户名和实例名

enter value for user: liusheng

enter value for instance_name:leonarding

liusheng@leonarding>

 

小结:使用上述方法可以让我们在数据库海洋里游刃有余,平时练习的时候也可以加上,形成习惯,这样在连接不同的数据库时就不会导致不知道连接的是哪个库了。

 


(以上内容摘于网络,如有侵权,请告之,将第一时间删除)

相关文章 [上一篇] SPOOL 命令使用实例
010-88589926(88587026)
CUUG热门培训课程
Oracle DBA就业培训
CUUG名师
网络课程
技术沙龙
最新动态

总机:(010)-88589926,88589826,88587026 QQ讨论群:243729577 182441349 邮箱:cuug_bj@cuug.com
通信地址:北京市海淀区紫竹院路98号北京化工大学科技园609室(CUUG)邮政编码:100089 
中国UNIX用户协会 Copyright 2010  ALL Rights Reserved 北京神脑资讯技术有限公司
京ICP备11008061号  京公网安备110108006275号