当前位置: 首页 > news >正文

[20171102]视图v$session中process字段含义

[20171102]视图v$session中process字段含义.txt

--//被别人问及这个问题,自己也简单测试看看.我记忆里看warehouse的教学视频,好像提到的client端的进程号.

1.环境:

SCOTT@book> @ &r/ver1
PORT_STRING                    VERSION        BANNER
------------------------------ -------------- --------------------------------------------------------------------------------
x86_64/Linux 2.4.xx            11.2.0.4.0     Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

2.使用本地登录看看.

sqlplus scott/book

SCOTT@book> @ &r/spid
       SID    SERIAL# PROCESS                  SPID       PID  P_SERIAL# C50
---------- ---------- ------------------------ ------ ------- ---------- --------------------------------------------------
        54        611 12507                    12508       28        222 alter system kill session '54,611' immediate;

--//可以发现进程号是12508,PROCESS=12507.

$ cat spid.sql
SELECT s.sid, s.serial#, s.process, p.spid, p.pid, p.serial# p_serial#,'alter system kill session '''||s.sid||','||s.serial#||''''||' immediate;' c50
  FROM v$session s, v$process p
WHERE s.sid in (
        SELECT sid
          FROM v$mystat
WHERE rownum  = 1)
   AND s.paddr = p.addr;

$ ps -ef | grep 1250[78]
oracle   12507 12503  0 09:20 pts/7    00:00:00 /u01/app/oracle/product/11.2.0.4/dbhome_1/bin/sqlplus
oracle   12508 12507  0 09:20 ?        00:00:00 oraclebook (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))

--//可以发现使用本地连接通过beq协议连接,sqlplus的进程号12507,再通过这个进程连接数据库,对应进程号是12508.(注意其父进程是12507)

3.测试使用网络连接(注在本机):

sqlplus scott/book@book

SCOTT@book> @ &r/spid

       SID    SERIAL# PROCESS                  SPID       PID  P_SERIAL# C50
---------- ---------- ------------------------ ------ ------- ---------- --------------------------------------------------
        54        613 12601                    12603       28        223 alter system kill session '54,613' immediate;

--//可以发现进程号是12601,PROCESS=12601.

$ ps -ef | grep 1260[13]
oracle   12601 12597  0 09:34 pts/7    00:00:00 /u01/app/oracle/product/11.2.0.4/dbhome_1/bin/sqlplus
oracle   12603     1  0 09:34 ?        00:00:00 oraclebook (LOCAL=NO)

--//可以发现使用TCP连接,sqlplus的进程号12601,通过监听连接数据库,连接数据库的进程号是12508.(注意其父进程是1).

4.测试从client windows连接数据库.

sqlplus scott/book@192.168.100.78:1521/book:DEDICATED

SCOTT@192.168.100.78:1521/book:DEDICATED> @ &r/spid
       SID    SERIAL# PROCESS                  SERVER    SPID       PID  P_SERIAL# C50
---------- ---------- ------------------------ --------- ------ ------- ---------- --------------------------------------------------
        54        629 7132:3244                DEDICATED 12810       28        230 alter system kill session '54,629' immediate;

D:\tools\sysinternals>tasklist /FI "PID eq 7132"

映像名称                       PID 会话名              会话#       内存使用
========================= ======== ================ =========== ============
sqlplus.exe                   7132 Console                    1     17,952 K

--//3244来自那里呢?实际上tid,我对windows不是非常熟悉.
--//windows的工具包sysinternals中procexp可以找到对应tid.具体细节略.
$ ps -ef | grep   1281[0]
oracle   12810     1  0 10:03 ?        00:00:00 oraclebook (LOCAL=NO)

5.测试从client windows连接使用共享模式.

sqlplus scott/book@192.168.100.78:1521/book:shared

SCOTT@192.168.100.78:1521/book:shared> @ &r/spid
       SID    SERIAL# PROCESS                  SERVER    SPID       PID  P_SERIAL# C50
---------- ---------- ------------------------ --------- ------ ------- ---------- --------------------------------------------------
       261          3 3140:4464                SHARED    5752        20          1 alter system kill session '261,3' immediate;

D:\tools\sysinternals>tasklist /FI "PID eq 3140"
映像名称                       PID 会话名              会话#       内存使用
========================= ======== ================ =========== ============
sqlplus.exe                   3140 Console                    1     17,988 K      

$ ps -ef | grep   575[2]
oracle    5752     1  0 Nov01 ?        00:00:00 ora_s000_book

--//进程号5752对应是ora_s000_book.

相关文章:

  • [SDOI2010]大陆争霸
  • centos模板机制作前修改配置
  • 编程之用户体验
  • SQL UPDATE实现多表更新
  • 常用的JavaScript验证正则表达式
  • 在VMware Workstation上安装Ubuntu 16.04 Server操作系统
  • Linux安装yum源码包及相关操作
  • Windows Embedded CE链接RNDIS的奇怪问题
  • 10个完整的Android开源项目,值得大家学习借鉴
  • Ubuntu Mini1010所走过的路
  • snmp,mrtg安装和配置(2) mrtg安装
  • C#通过SharpSSH库与Linux服务器建立SSH连接并执行命令
  • 产品设计体会(3012)如何做好“老板项目”
  • Linux内核管理--内存(一)
  • 电脑一开机时出现A: Dirve error的解决办法
  • 5分钟即可掌握的前端高效利器:JavaScript 策略模式
  • co模块的前端实现
  • ES6核心特性
  • GDB 调试 Mysql 实战(三)优先队列排序算法中的行记录长度统计是怎么来的(上)...
  • oldjun 检测网站的经验
  • OSS Web直传 (文件图片)
  • Python代码面试必读 - Data Structures and Algorithms in Python
  • yii2权限控制rbac之rule详细讲解
  • 基于HAProxy的高性能缓存服务器nuster
  • 前端技术周刊 2019-01-14:客户端存储
  • 前端面试总结(at, md)
  • 小程序滚动组件,左边导航栏与右边内容联动效果实现
  • ionic入门之数据绑定显示-1
  • 第二十章:异步和文件I/O.(二十三)
  • 机器人开始自主学习,是人类福祉,还是定时炸弹? ...
  • 曜石科技宣布获得千万级天使轮投资,全方面布局电竞产业链 ...
  • #《AI中文版》V3 第 1 章 概述
  • #etcd#安装时出错
  • #git 撤消对文件的更改
  • (cos^2 X)的定积分,求积分 ∫sin^2(x) dx
  • (Git) gitignore基础使用
  • (MIT博士)林达华老师-概率模型与计算机视觉”
  • (定时器/计数器)中断系统(详解与使用)
  • (附源码)springboot 个人网页的网站 毕业设计031623
  • (九)c52学习之旅-定时器
  • (牛客腾讯思维编程题)编码编码分组打印下标题目分析
  • (区间dp) (经典例题) 石子合并
  • (一)spring cloud微服务分布式云架构 - Spring Cloud简介
  • ./configure、make、make install 命令
  • .NET 4.0网络开发入门之旅-- 我在“网” 中央(下)
  • .Net 6.0 处理跨域的方式
  • .Net CoreRabbitMQ消息存储可靠机制
  • .NET MVC第五章、模型绑定获取表单数据
  • .NET处理HTTP请求
  • .NET平台开源项目速览(15)文档数据库RavenDB-介绍与初体验
  • .Net中的集合
  • @Autowired多个相同类型bean装配问题
  • [2009][note]构成理想导体超材料的有源THz欺骗表面等离子激元开关——
  • [2015][note]基于薄向列液晶层的可调谐THz fishnet超材料快速开关——
  • [AIGC] Kong:一个强大的 API 网关和服务平台