1. desc 描述 显示表、视图的列的定义
第三章:管理进程
当访问数据库时,需要建立连接和会话,并且会启动用户进程和服务器进程。 连接是用户进程和服务器进程之间的网络通信通道,会话是特定用户的连接。当用户应用连接到数据库时,在客户端会启动用户进程,并且用户进程会连接到服务器进程或者调度进程;当用户进程发出SQL语句时,服务器进程会执行SQL语句。
3.1使用专用连接和专用服务器进程
专用连接是指在用户进程和专用服务器进程之间的网络通信通道。每建立一个专用连接就会在服务器端位用户进程分配一个专用服务器进程。当执行批量作业(例如装载大量数据),使用RMAN执行备份、转储、恢复操作,或者并发用户较少时,应该使用专用连接。
下面通过orcl数据库配置网络服务名orcl1,使用该网络服务名建立三个并发连接,并检查服务器端进程总数为例,说明使用专用连接的方法。
实例1 在tnsnames.ora文件中配置网络服务ORCL1
ORCL1 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP) (HOST = abc)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl )
)
)
实例2 使用专用连接
sqlplus system/admin@orcl1
SELECT count(*) FROM v$process;
count (*)
--------------------------------
38
sqlplus system/admin@orcl1
SELECT count(*) FROM v$process;
count (*)
--------------------------------
39
sqlplus system/admin@orcl1
SELECT count(*) FROM v$process;
count (*)
--------------------------------
40
3 .2 使用共享连接和共享服务器进程
当使用共享连接时,用户进程连接到特定调度进程;当用户进程发出sql语句时,调度进程会将sql语句时,调度进程会将sql语句转发到公用请求队列;空闲的共享服务器从公用请求队列中按照请求的先后次序获得sql请求;共享服务器进程与SGA交互并执行sql操作;共享服务器进程将sql语句的结果放入特定调度进程的响应队列;调度进程从其响应队列中提取sql语句结果,并将结果返回到相应的用户进程。
注: 当在服务器本地未使用网络名连接时,只会使用专用连接;如果使用共享连接,则必须用网络名连接。
3.2.1 配置并使用共享服务器
1配置共享服务器
当配置共享服务器时,必须设置初始化参数shared_servers和dispatchers,并且参数DISPATCHERS只能通过PFILE文件设置。
实例3-3如下:
连接到数据库:sqlplus sys/admin as sysdba
建立PFILE: CREATE PFILE = ' initorcl.ora ' FROM SPFILE = 'spfileorcl.ora';
编辑pfile (追加参数行):
dispachers = '( PROTOCOL = TCP) ( DISP = 5)'
shared_servers = 10
.max_shared_servers = 20
.max_dispatchers = 20
关闭数据库 SHUTDOWN IMMEDIATE
建立spfile:CREATE SPFILE =' spfileorcl.ora ' FROM PFILE = 'initorcl.ora'