SQL Server Profiler 需要太多内存

标签 sql database trace sql-server-profiler

我正在使用 SQL Server Profiler 来记录软件的事件,该软件创建了一个约 50 GByte 的数据库,其中包含超过 300 个表(包括数据)。 Profiler 将跟踪日志保存到第二个数据库的表中,稍后将用于分析。

但是,SQL Server Profiler 的内存使用存在问题,因为应用程序在界面的表格中显示所有(!)跟踪。结果,应用程序在几分钟后需要超过 3 GByte。我没有超过 50 GByte 的内存!

有没有办法禁用这个表,只登录数据库中的一个表?还有一个能够记录相同信息的命令行工具会很棒。

最佳答案

有大量的存储过程/函数等用于创建跟踪,而无需使用 SQL Server 分析器 UI。太多了,无法在此处一一列举,但文档的根目录是 Introducing SQL Trace .您应该能够找到正确的组合来调用以获得您想要的跟踪。

这些服务器端跟踪必须存储到文件中,而不是存储到另一个表中,但如果您需要它们进行分析,您可以稍后将它们导入表中。

关于SQL Server Profiler 需要太多内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7253316/

相关文章:

sql - 优化 Hibernate Sequence ID 生成

数据库架构中的 Java 类

Python 模块 "trace": file path missing

c# - System.Diagnostics.Trace.WriteLine 使用哪个跟踪源?

java - 太多的 SQL 变量和 NOT IN 子句

sql - 如何在SQLite3中绑定(bind)LIKE通配符

android - SQLiteOpenHelper android中变量的可见性

mysql - 当外键指向其他内容时,也移动其他数据

oracle - 死锁的根本原因?

java - com.mysql.jdbc.Driver 在浏览器上显示 null