![]() |
Como obtener el SID y SERIAL# desde el SP actual En Oracle, cuando ejecuto un SP necesito saber cual es su SID y Serial# pero desde dentro de ese SP, estos valores los utilizo para saber cual es el proceso que debo matar (kill) durante la ejecución de SP (es una carga de datos masiva), mediante un botón "cancelar Proceso" en una aplicacion web. por ejemplo en sqlserver existe el comando @@spid, que lo puedo llamar dentro de un SP y saber cual es su spid (process id). Espero sus comentarios. Gracias. |
Re: Como obtener el SID y SERIAL# desde el SP actual Pues basicamente debes hacer una join entre V$SESSION y V$PROCESS. De V$SESSION vas a sacar el SID y el SERIAL#, para hacer el Kill Session y de V$PROCESS sacas el SPID, para hacer el KILL -9 si lo necesitas La join sería esta : V$PROCESS.addr(+) = V$SESSION.paddr Si tienes mas dudas pregunta. |
Re: Como obtener el SID y SERIAL# desde el SP actual Cita:
Ok ya obtuve los valores que necesito para matar el proceso SID y SERIAL con esto: SELECT sid,serial# FROM v$session WHERE audsid = USERENV('sessionid'); otra variante seria: SELECT sid,serial# FROM sys.v_$session WHERE audsid = USERENV('sessionid'); El problema ahora es que al implementarlo dentro del SP me lanza el error: PL/SQL: ORA-00942: table or view does not exist Será alguna restricción de permisos del usuario??? y que por ello no logra ver la vista o la tabla ? como podría solucionarlo, yo no soy el DBA. Grax. |
Re: Como obtener el SID y SERIAL# desde el SP actual pues es eso, el usuario que estas usando no tiene privilegios para ver v_$session, necesita los privilegios o necesita el sinonimo, si solo fuera sinonimo usando sys. deberia de funcionar |
Re: Como obtener el SID y SERIAL# desde el SP actual Cierto. Las vistas del diccionario de datos solo pueden verlas los usuarios DBA's o un usuario normal al que se le otorguen permisos de select sobre esas vistas. De todas maneras si solo te da permisos de select sobre las vistas, no vas a poder hacer nada ya que el KILL SESSION solo lo pueden hacer los DBA's |
| La zona horaria es GMT -6. Ahora son las 00:40. |
Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.