千家信息网

oracle中的v$process是什么

发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,这篇文章主要介绍"oracle中的v$process是什么"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"oracle中的v$process是什么"文章能帮助大
千家信息网最后更新 2025年11月07日oracle中的v$process是什么

这篇文章主要介绍"oracle中的v$process是什么"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"oracle中的v$process是什么"文章能帮助大家解决问题。

前言:

process:这个参数限制了能够连接到SGA的操作系统进程数(或者是Windows 系统中的线程数),这个总数必须足够大,从而能够适用于后台进程与所有的专用服务器进程,此外,共享服务器进程与调度进程的数目也被计算在内.此外,共享服务器进程与调度进程的数目也被计算在内.因此,在专用服务器环境中,这是一种限制并发连接数的方法。


介绍:

oracle提供了相应的视图v$process用来监视整个数据库的进程情况。

v$process进程官方文档的介绍:This view has one row for each Oracle process connected to the instance. The columns PGA_USED_MEM, PGA_ALLOC_MEM, PGA_FREEABLE_MEM and PGA_MAX_MEM can be used to monitor the PGA memory usage of these processes. 用于监视每个进程的内存使用情况;

详细的V$PROCESS视图如下:

Column
Datatype
Description
解释

ADDR
RAW(4 | 8)
Address of the process state object
可以和v$session的paddr字段关联

PID
NUMBER
Oracle process identifier

SPID
VARCHAR2(24)
Operating system process identifier
操作系统进程identifier

PNAME
VARCHAR2(5)
Name of this process
进程的名称(从中可以看到前台和后台进程)

USERNAME
VARCHAR2(15)
Operating system process username
运行此进程的操作系统的用户名称;

Note: Any two-task user coming across the network has "-T" appended to the username.

SERIAL#
NUMBER
Process serial number

TERMINAL
VARCHAR2(30)
Operating system terminal identifier
终端名称类似于v$session;

PROGRAM
VARCHAR2(48)
Program in progress
程序的名称

TRACEID
VARCHAR2(255)
Trace file identifier
跟踪文件的ID

TRACEFILE
VARCHAR2(513)
Trace file name of the process
跟踪文件的名称及路径

BACKGROUND
VARCHAR2(1)
1 for a background process; NULL for a normal process
值为1代表是后台进程

LATCHWAIT
VARCHAR2(8)
Address of the latch the process is waiting for; NULL if none
等待LATCH的情况

LATCHSPIN
VARCHAR2(8)
This column is obsolete

PGA_USED_MEM
NUMBER
PGA memory currently used by the process
PGA的消耗情况

PGA_ALLOC_MEM
NUMBER
PGA memory currently allocated by the process (including free PGA memory not yet released to the operating system by the server process)
当前PGA允许消耗的内存

PGA_FREEABLE_MEM
NUMBER
Allocated PGA memory which can be freed

PGA_MAX_MEM
NUMBER
Maximum PGA memory ever allocated by the process
进程中最大的PGA内存分配


延伸:

1、v$process进程中的SPID提供了每个进程对应的操作系统的PID,因此如果监控某个操作系统的PID有异常,可以通过这个视图去查找相应的SQL语句。

脚本如下:

SELECT /*+ ORDERED */ sql_text
FROM v$sqltext a

WHERE (a.hash_value, a.address) IN (
SELECT DECODE (sql_hash_value, 0, prev_hash_value,
sql_hash_value ),
DECODE (sql_hash_value, 0, prev_sql_addr, sql_address)
FROM v$session b
WHERE b.paddr = (SELECT addr
FROM v$process c
WHERE c.spid = TO_NUMBER ('&pid', 'xxxx')))
ORDER BY piece ASC/

2、在数据库查找有问题的session,然后在操作系统kill掉相应的进程,根据SESSION的SID查找相应的操作系统PID

SELECT A.SID,B.SPID,A.MACHINE,C.SQL_TEXT FROM v$SESSION A ,v$process B,V$SQL C

where a.paddr=b.addr

AND A.PREV_SQL_ID=C.SQL_ID

AND A.SID='&sid'

3、v$process和v$session的关系

oracle的连接数(sessions)与其参数文件中的进程数(process)相关,它们的关系如下:sessions=(1.1*process+5),若果资源允许,而当前process 数过小,那么可以适当增大processs 数( session 数依赖于process数,一般不去直接修改session数)。

Shared Server中的Process 一个对应着Oracle 中的一个或者一个以上的Session。Dedicated Server中,一个session对应一个process,但是一个process未必对应一个session。

4、修改v$process和v$session参数

以上的v$process和v$session参数的设置只是经验值,但是在实际的运行过程由于业务或者架构的改变可能实际的系统的session数量和process数量超过了v$process和v$session参数的值,直接导致后面连接的用户登录不了;

查看当前session配置:show parameter sessions;

查看当前process配置:show parameter processes;

修改参数:alter system set processes=1000 scope=spfile;该参数重启后生效。

关于"oracle中的v$process是什么"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注行业资讯频道,小编每天都会为大家更新不同的知识点。

进程 系统 操作系统 参数 名称 情况 服务器 服务 内存 后台 实际 文件 知识 视图 数据 数据库 数目 数量 方法 用户 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 信息网络安全目标 当前主流的关系数据库有哪些 幼儿园数据库开发背景 软件开发经营需要什么资质 安卓通讯录连接数据库 数据库原理技术与应用难吗 马鞍山师专计算机网络技术 默纳克没有服务器如何清理故障 网络安全课程建设 计算机三级数据库2020真题 软件开发技术评审步骤 博雅数据库高校分数线 福建调度服务器生产云空间云主机 数据库ssms创建数据库 f5北京网络安全大会 大专网络技术实习工资 配置与管理流媒体服务器 2019深信服网络技术大赛 服务器防护设备哪个好 数据库触发器玩出出租系统 手机提示服务器忙稍后再试 ibm官网服务器 有如下教师及课程的关系型数据库 华为初级网络安全工程师 如何连云端数据库 江苏前端软件开发哪家便宜 2u服务器机箱的u是什么意思 开展网络安全应急处置演练 一个战网同一个服务器 网络安全问题 论文题目
0