Oracle 11g宝典
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

2.5 连接、断开与数据库的连接

当启动SQL*Plus后,需要输入用户名、口令、连接标识符(或网络服务名),然后才能连接到数据库,进而操作数据库。在SQL*Plus中,如果要更换连接的用户,以不同用户管理其数据库对象,或用更大权限的用户进行数据库管理,可以使用CONNECT命令进行切换,使用DISCONNECT断开当前用户的连接。

2.5.1 CONN[ECT]命令

CONN[ECT]命令先无条件地断开当前用户的连接(无论新的连接是否成功),然后再为指定的用户建立新的连接。该命令的语法是:

      CONN[ECT] [username/[password][@<连接标识符>] [AS {SYSOPER|SYSDBA|SYSASM}]]

其中,“/”分隔用户名和口令;@后面的是连接标识符,如果省略了该标识符,SQL*Plus就会使用初始化变量DB_NAME的值定义的本地数据库。如果省略了用户名或口令,SQL*Plus就会提醒输入;AS后面是连接时使用的角色选项,它们都是DBA用户才有的角色。

一个使用CONN[ECT]命令的例子如图2-35所示,它表示了该命令的各种选项及其使用情况。

图2-35 使用CON[NECT]命令的例子

2.5.2 DISC[ONNECT]命令

通过SQL*Plus连接到数据库后,DBMS就会在服务器端建立一个连接并维护一个会话。这些都会占用服务器的资源。按照Oracle的许可证协议,一个数据库的并发会话数是受限制的,即同时连接到数据库的会话数不能超过参数LICENSE_MAX_SESSIONS的值所做的限制。所以没有必要会话时,就断开与数据库的连接和会话。

DISC[ONNECT]命令会断开当前的连接,但不会退出SQL*Plus。如果要退出SQL*Plus,返回到操作系统,就要使用EXIT或QUIT命令。

一个使用DISC[ONNECT]命令的例子如图2-36所示。

图2-36 使用DISC[ONNECT]命令的例子

如果要再次建立会话,需要使用CON[NECT]命令。