无法在 AWS Redshift 控制台上查看所有查询

Sid*_*ain 1 amazon-redshift aws-cli

我无法看到从命令行工具或 aws 控制台上的其他一些 dbhelper 运行的所有查询。特别是我在仪表板中没有看到任何放置命令。aws redshift 是否过滤/采样仪表板上显示的查询?

我们可以使用 aws-cli 列出在集群上运行的所有查询吗?或者是否有其他地方可以获取已运行的所有查询的列表?

Nic*_*las 5

AWS 控制台对我来说有点奇怪:默认情况下,它有一个过滤器设置为仅显示过去 24 小时发出的查询,但事实上,它忘记了一些。如果我指定更窄的日期范围(例如最后一小时),我会得到更多结果。尝试一下,我猜当有太多需要返回时,亚马逊会删除与其他查询相比相对较快的查询。而且我认为我从未在“查询”选项卡中看到过 DDL 语句。

如果您想始终查看所有这些,请改为通过 SQL 连接到集群。集群本身内部有几个表,用于记录任何工具向集群发出的查询:

  • STL_DDLTEXTCREATE、、DROPALTER、视图和模式)。
  • STL_QUERYTEXT(所有典型的 SQL 查询,例如SELECTINSERTCOPY
  • STL_UTILITYTEXT(实用程序查询,如EXPLAINTRUNCATE)。

SVL_STATMENTTEXT是一个将所有查询分组的视图,因此您应该能够在那里看到所有查询。