无论是在SQL*Plus环境或其他的图形界面,Oracle系统只允许每次一个用户连接到一个数据库实例。

✿ 问题的提出

Oracle系统有多个用户,比如:默认情况有SYS、SYSTEM、SCOTT等用户。当你已经以某个用户连接到Oracle实例后,你也可能再以另外的用户连接到Oracle实例,那么如何在SQL*Plus以另外的用户连接Oracle实例呢?

✿ 实现技术

SQL*Plus提供一个CONNECT命令在SQL>下连接到另外的用户上。CONNECT命令的语法是:CONNECT user_name/[email protected],其中user_name为用户名称;password是用户的口令;而string是连接字符串。

✿ 实现步骤

在SQL>提示下,使用CONNECT命令可以以明口令的方式连接到Oracle,也可以以隐藏口令的方式连接到Oracle,如:

SQL > --查看当前用户名称
SQL > show user
USER 为"SCOTT"
SQL > --以明口令方式连接到SYSTEM 用户
SQL > connect system/[email protected]
已连接。
SQL > --以隐藏口令方式连接到SYSTEM 用户
SQL > connect scott
输入口令: **********
已连接。
SQL >

✿ 说明

连接到另外用户是一个常用的操作,可在不存在安全问题时采用明码口令,但建议采用隐藏口令方法。另外,在不使用Oracle系统时用EXIT断开连接。连接字符串是一个存在于tnsnames.ora文件中的字符串,当不能确定字符串是什么,可从Oracle环境的$ORACLE_HOME/network/admin路径中的tnsnames.ora文件找到。