Visualizar consultas correntes no Postgresql
Para que seja possível visualizar uma consulta corrente no postgresql, não é necessário nenhuma solução milagrosa, pelo contrário, é muito simples.
Primeiramente é necessário habilitar o parâmetro stats_command_string com o valor true no arquivo de configuração postgresql.conf.
stats_command_string = true
Esta configuração pode ser alterada com o banco de dados ativo, sem necessidade de reiniciá-lo. Para isto basta executar o seguinte comando após realizar a alteração.
pg_ctl reload
Ao ser habilitado o parâmetro stats_command_string o postgresql passa a armazenar em pg_stat_activity a query que está sendo executada.
É importante notar que esta alteração irá causar algum retardo e perda de performance, adicionando uma sobrecarga adicional aos comandos do banco de dados, portanto é necessário avaliar o benefício trago por esta modificação.
Para que você possa visualizar a consulta que esta sendo realizada no momento, realize a seguinte query.
select datname, procpid, query_start, current_query, client_addr
from pg_stat_activity
o resultado será algo como:
datname | procpid | query_start | current_query --------+---------+---------------------+----------------------- banco1 | 49111 | 2008-06-12 14:40:37 | select * from tabela1 banco2 | 49112 | 2008-06-12 14:53:37 | select * from tabela2
Pronto, agora você consegue saber exatamente a consulta corrente que está sendo executada no postgresql.
Tags: postgresql, sql
You can comment below, or link to this permanent URL from your own site.