none
Store Procedure executado no Servidor RRS feed

  • Pergunta

  • Pessoal

         Veja se é muito complicado eu conseguir identificar a última ou todas store procedure, que foi executada em um banco de dados, algo +/- parecido com o que o profile do sql server identifica, conforme abaixo ?

    exec [dbo].[usp_Producao_Rel_Movimento] @id_Producao_Pri = 1

    quinta-feira, 5 de novembro de 2015 14:29

Respostas

  • Segue !

    SELECT  client_net_address AS [IP do cliente] ,
            p.hostname AS [Nome da máquina do cliente] ,
            [text] AS [Texto da consulta] ,
            DB_NAME(p.dbid) AS [Nome do BD no qual foi executada a query] ,
            p.[program_name] AS [Programa solicitante]
    FROM    sys.dm_exec_connections c
            INNER JOIN sys.sysprocesses p ON c.session_id = p.spid
            CROSS APPLY sys.dm_exec_sql_text(most_recent_sql_handle) AS ST


    Flávio Farias "May the Force be with you" Se foi resolvido clique "Marcar como resposta" e se foi útil "Votar como Útil"

    • Sugerido como Resposta Junior Galvão - MVPMVP sexta-feira, 6 de novembro de 2015 11:02
    • Marcado como Resposta neibala quinta-feira, 9 de março de 2017 02:22
    quinta-feira, 5 de novembro de 2015 15:00

Todas as Respostas

  • Segue !

    SELECT  client_net_address AS [IP do cliente] ,
            p.hostname AS [Nome da máquina do cliente] ,
            [text] AS [Texto da consulta] ,
            DB_NAME(p.dbid) AS [Nome do BD no qual foi executada a query] ,
            p.[program_name] AS [Programa solicitante]
    FROM    sys.dm_exec_connections c
            INNER JOIN sys.sysprocesses p ON c.session_id = p.spid
            CROSS APPLY sys.dm_exec_sql_text(most_recent_sql_handle) AS ST


    Flávio Farias "May the Force be with you" Se foi resolvido clique "Marcar como resposta" e se foi útil "Votar como Útil"

    • Sugerido como Resposta Junior Galvão - MVPMVP sexta-feira, 6 de novembro de 2015 11:02
    • Marcado como Resposta neibala quinta-feira, 9 de março de 2017 02:22
    quinta-feira, 5 de novembro de 2015 15:00
  • Flávio / Pessoal

        E uma dúvida na questão de administração de banco de dados, e por sua experiência, estas tabelas (sys.dm_exec_connections  sys.sysprocesses sys.dm_exec_sql_text), poderia estar liberadas para todos, ou tem algo que não seria indicado, mesmo que seja liberado apenas para select, conforme o script acima ?

       E o script acima funciona para todas as versões superiores a 2008 ?

     

    quinta-feira, 5 de novembro de 2015 15:18
  • Funciona sim nas versões superiores do 2008 !

    As dm´s estão no banco master, vc precisa permitir que seus usuários tenha acesso a opção "SERVER STATUS"

    use [master]
    GO
    GRANT VIEW SERVER STATE TO [<SpecifyUserName>]
    GO

    Não recomendo !!! Esse é o papel do DBA !!!

    O motivo está logo abaixo de acordo com o BOL

    Required Permissions

    To query a dynamic management view or function requires SELECT permission on object and VIEW SERVER STATE or VIEW DATABASE STATE permission. This lets you selectively restrict access of a user or login to dynamic management views and functions. To do this, first create the user in master and then deny the user SELECT permission on the dynamic management views or functions that you do not want them to access. After this, the user cannot select from these dynamic management views or functions, regardless of database context of the user.

    For information see, Dynamic Management Views and Functions (Transact-SQL)


    Flávio Farias "May the Force be with you" Se foi resolvido clique "Marcar como resposta" e se foi útil "Votar como Útil"

    quinta-feira, 5 de novembro de 2015 16:44
  • Veja se isso serve.

    select b.name, b.modify_date, a.last_execution_time, a.database_id, c.name from sys.dm_exec_procedure_stats as a
    inner join sys.objects as b on a.object_id = b.object_id
    inner join sys.databases as c on a.database_id = c.database_id
    where b.name like '%Nome_Procedure' and b.type = 'p' and c.name <> 'msdb' 
    order by a.last_elapsed_time 


    Vinícius Kleber

    quinta-feira, 5 de novembro de 2015 19:14
  • Flávio

       Era isto mesmo que estava procurando, coluna [Texto da consulta] .


    • Editado neibala domingo, 12 de março de 2017 20:23 texto incorreto.
    quinta-feira, 9 de março de 2017 02:23