Arquivo da categoria: PostgreSQL

PostgreSQL – A simple SQL Query Builder

Share and Enjoy !

0Shares
0 0

Verificar e finalizar conexões ativas no PostgreSQL

Como verificar conexões ativas no PostgreSQL

Para conseguir listar o número de conexões ativas no PostgreSQL utilize o comando:

select * from pg_stat_activity;

conexoes_postgresql_mini

Você pode utilizar o comando count() para contar as conexões.

select count(*) from pg_stat_activity;

É possível filtrar por Banco de Dados colocando na clausula “where” o banco desejado.

Ex.:

select * from pg_stat_activity where datname = ‘NOME_DO_BANCO’;

Finalizar Conexões

Para finalizar conexões você pode utilizar a função abaixo passando como parâmetro o número do pid. O pid é obtido através do select na tabela pg_stat_activity.

Atenção: Esse comando não existe em versões do PostgreSQL  inferiores a 8.4.

select pg_terminate_backend(pid);

Obs.: A coluna “pid” em versões inferiores a 9.2 do PostgreSQL tinha o nome de “procpid”.

É possível finalizar todas as conexões menos a sua conexão através da query abaixo.

SELECT pg_terminate_backend(pid)
FROM pg_stat_activity
WHERE pid <> pg_backend_pid();

Share and Enjoy !

0Shares
0 0

ruby on rails value Rails reset ALL Postgres sequences?

ActiveRecord::Base.connection.tables.each do |table|
  result = ActiveRecord::Base.connection.execute("SELECT id FROM #{table} ORDER BY id DESC LIMIT 1") rescue ( puts "Warning: not procesing table #{table}. Id is missing?" ; next )
  ai_val = result.any? ? result.first['id'].to_i + 1 : 1
  puts "Resetting auto increment ID for #{table} to #{ai_val}"
  ActiveRecord::Base.connection.execute("ALTER SEQUENCE #{table}_id_seq RESTART WITH #{ai_val}")
end
https://code-examples.net/en/q/1b64931

Share and Enjoy !

0Shares
0 0