Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
oracle会话id在*\u调度程序\u作业\u运行\u详细信息中表示什么_Oracle - Fatal编程技术网

oracle会话id在*\u调度程序\u作业\u运行\u详细信息中表示什么

oracle会话id在*\u调度程序\u作业\u运行\u详细信息中表示什么,oracle,Oracle,我不明白*\u调度程序\u作业\u运行\u详细信息中的会话\u ID代表什么 有两个值由coma分隔。第一个变化很大,第二个变化较小,fe。请看下面的示例: +------+------------+ | sid | session_id | +------+------------+ | 6072 | 6072,8980 | +------+------------+ 通过以下查询选择此选项: 选择s.sid ,j.SESSION_ID 从…起 v$s会话 左外连接 选择会话ID ,ca

我不明白*\u调度程序\u作业\u运行\u详细信息中的会话\u ID代表什么

有两个值由coma分隔。第一个变化很大,第二个变化较小,fe。请看下面的示例:

+------+------------+
| sid  | session_id |
+------+------------+
| 6072 | 6072,8980  |
+------+------------+
通过以下查询选择此选项:

选择s.sid ,j.SESSION_ID 从…起 v$s会话 左外连接 选择会话ID ,castsubsersession_ID,0,INSTRSESSION_ID',,'-1作为ID1的数字 ,castsubsersession_ID,INSTRSESSION_ID',“+1,LENGTHSESSION_ID-INSTRSESSION_ID',”作为ID2的编号 从所有调度程序作业运行详细信息j 关于j.ID1=s.sid 或j.ID2=s.sid ; 第一个数字似乎代表来自v$session的sid,它是会话标识符,但来自*\u调度程序\u作业\u运行\u详细信息的会话\u ID也是。但它似乎与v$sql中的sql_文本不相关-如果我从v$session中获取该sid的sql_id,那么该会话似乎是用户的会话,它完成了一些事情,而不是我的工作

==编辑==

我发现sid是可以重用的,所以它可以正常连接。会话id仅与较新的查询连接,然后与作业运行的查询连接。不过,这个“id”是否意味着什么…?它是否可以链接到旧查询的某些参数,例如serial?

是的,session\u id是sid,serial-该组合是数据库实例生存期内v$session中会话的唯一标识符。您可以在其他地方看到它,例如,如果您需要运行ALTER SYSTEM KILL SESSION,则必须为其提供组合sid+串行

因此,如果您的作业上周以会话_id='60728980'运行,但当前有人以sid=6072和serial=9504的v$session连接,您可以判断这是不同的会话,而不是运行作业的会话

v$session中的sql_id只显示该会话当前正在运行的sql,因此对于非活动会话,它将为null,因为它们现在没有运行。如果作业已完成,则在v$session中的任何位置都看不到其sql\u id