5

刚刚将平台从 mySQL 迁移到 firebird 后,我发现很难找到一种可接受的方法来捕获从 Java .jar 应用程序传递到数据库服务器 (Firebird) 的 SQL 命令。我需要分析命令以及在执行时间等方面传递的查询的“成本”。

使用 MySQL 可以使用maatkit 工具包,但不幸的是,这似乎不适用于 Firebird。

有没有人对火鸟的 maatkit 有适当且可比较的方法?还是使用 strace 或类似的?

4

1 回答 1

3

您可以使用 Firebird 跟踪工具及其 API 来生成此信息。有关详细信息,请参阅Firebird 2.5 发行说明中的​​跟踪和审计服务以及 Firebird 2.5 中的审计和跟踪服务

您可以配置写入日志文件的服务器端跟踪会话,或使用服务 API 执行用户跟踪会话(取决于您的权限,您只会看到自己的查询或所有内容)。

firebird 安装包括一个用于访问用户跟踪 API (fbtracemgr.exe) 的命令行工具。Jaybird 2.2 包含对用户跟踪 API 的基本访问,但老实说,它还不是真正的用户友好(而且有点脆弱)。有几个(商业)第三方工具可以以更加用户友好的方式访问 Trace API:

于 2012-11-02T14:56:30.813 回答