sike03
V2EX  ›  问与答

如何查看 SQL Server 执行的历史 SQL 语句记录?

  •  2
     
  •   sike03 · Dec 5, 2018 · 9019 views
    This topic created in 2893 days ago, the information mentioned may be changed or developed.

    我使用下面的语句查询,虽然查到了历史 SQL 记录。

    SELECT st.text as sql_statement,
           qs.creation_time as plan_last_compiled,
           qs.last_execution_time as plan_last_executed,
           qs.execution_count as plan_executed_count,
           qp.query_plan
    FROM sys.dm_exec_query_stats qs
    CROSS APPLY sys.dm_exec_sql_text(qs.plan_handle) st
    CROSS APPLY sys.dm_exec_query_plan(qs.plan_handle) qp
    order by total_elapsed_time/execution_count desc
    

    但是由于我是参数化提交的 SQL 语句,所以只能查到类似 name=@name and phone=@phone 类型的语句。

    有没有办法查到 @name @phone 的真正的值?

    Supplement 1  ·  Dec 5, 2018
    我再补充下我的问题:

    之所以想查到这些数据,是因为系统在做数据更新时,条件发生了错误,所以导致数据没有被写入数据库。

    所以想找回这些数据,能弥补这个错误带来的损失。

    之前大家所说的办法,我理解的是在进行系统调试时,用来跟踪和监控 SQL 的,所以可能不能解决问题。

    期待能有好的办法,拜托了。
    10 replies  •  2018-12-06 11:34:17 +08:00
    Grapefruit
    Grapefruit
    Dec 5, 2018 via Android
    1
    SQL Server Profiler 跟踪下?
    sike03
    sike03
    OP
    Dec 5, 2018
    2
    @Grapefruit 想查的是没有 SQL Server Profiler 监控时产生的 SQL,所以好像不行。
    tomczhen
    tomczhen
    Dec 5, 2018 via Android
    3
    商业数据库都有审计功能的,找到使用方法开启就行了。
    sike03
    sike03
    OP
    Dec 5, 2018
    4
    @tomczhen 有没有办法找到开启审计之前的记录,因为没有预料到需要查询这些数据,所以之前也没有监控或者审计的准备。
    brotherlegend
    brotherlegend
    Dec 5, 2018 via iPhone
    5
    马克我也有这个需求
    zro
    zro
    Dec 5, 2018
    6
    记得是有自带工具监控查的啊。。
    tomczhen
    tomczhen
    Dec 5, 2018 via Android
    7
    profiler 是有性能代价的,比较好的做法是在应用层记录日志。

    CDC 可以采集到数据变更,不过不确定能否跟踪到区分用户。
    mmdsun
    mmdsun
    Dec 6, 2018 via Android
    8
    Lumigent Log Explorer 好像是可以查看的
    lcode
    lcode
    Dec 6, 2018
    9
    binlog 看不到吗
    sike03
    sike03
    OP
    Dec 6, 2018
    10
    @lcode sql server 好像不适用
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1839 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 37ms · UTC 03:58 · PVG 11:58 · LAX 19:58 · JFK 22:58
    ♥ Do have faith in what you're doing.