启用 SQL 跟踪

在指定 user 作为 SQLTRACE 配置参数中的方式后,必须运行 SQL 管理 API task()admin() 函数来打开对特定用户的 SQL 历史记录跟踪。

必须以用户 gbasedbt 或其他授权用户身份连接 sysadmin 数据库。

无需启用全局 SQL 跟踪,即可对特定用户进行 SQL 跟踪。

要启用对特定用户的 SQL 跟踪,请运行使用 set sql tracing on 作为第一个自变量,用户会话标识作为第二个自变量的 task()admin() 函数。

要对除 rootgbasedbt 之外的所有用户启用用户 SQL 跟踪,可运行使用 set sql tracing on 自变量和定义这些用户的信息的 task()admin() 函数。

示例

以下示例对会话标识为 74 的用户启用 SQL 跟踪:
EXECUTE FUNCTION task("set sql user tracing on", 74); 

以下示例启用对当前连接到系统的用户(只要它们未以用户 rootgbasedbt 身份登录)的 SQL 语句跟踪。

dbaccess sysadmin -<<END
 execute function task("set sql tracing on", 1000, 1,"low","user");
  select task("set sql user tracing on", session_id)
 	FROM sysmaster:syssessions 	
  WHERE username not in ("root","gbasedbt");
END

有关 task()admin() 函数的更多信息,请参阅 GBase 8s 管理员参考