sábado, 16 de agosto de 2014

Dicas postgreSQL

Retornar o número de usuários conectados
select count(*) from pg_stat_activity
Mostrar uso dos índices dos bancos de dados:
select * from pg_statio_user_indexes;
select * from pg_stat_user_indexes;
Mostra estatística de uso das tabelas e manutenção:
select * from pg_stat_all_tables;
Mostra todas as tabelas do atual esquema do atual banco:
select * from pg_stat_user_tables;
Visualizar os processos do PostgreSQL:
ps auxww | grep ^postgres

Tamanho de Tabela, Banco ou Todos os Bancos - PostgreSQL

Tamanho de Banco de Dados:
select pg_database_size(‘nomebanco’);

Tamanho de Tabela
select pg_tablespace_size(‘nometabela’);

Tamanho de todos os bancos de dados do SGBD:
select (sum(relpages) * 8) / 1024 || ‘ MB’ as tamanho from pg_class where relowner > 1;
Ou
select (sum(relpages) / 2^7) :: int || ‘ MB’ as tamanho from pg_class where relowner > 1;

Dicas úteis no Postgres

Existem algumas mensagens de erro que são decorrentes de simples esquecimentos na hora de configurar o Postgres. Vejamos algumas:
Um erro ocorreu:
Error connecting to the server: FATAL: autenticação do tipo password falhou para usuário "postgres"
FATAL: autenticação do tipo password falhou para usuário "postgres"
Causa: O que ocorre é que o usuário postgres, embora exista no servidor, não possui uma senha criada no banco de dados.
Solução: Criar uma senha para o usuário postgres no SGBD.
  1. Logue-se como root (ou postgres) no servidor do SGBD
  2. Caso tenha se logado como root, torne-se usuário postgres com o comando:
    • su – postgres
  3. Digite:
    •  psql -c "ALTER ROLE postgresql WITH ENCRYPTED PASSWORD ‘senha‘;  
A autenticação do cliente é controlada pelo arquivo pg_hba.conf (host-based authentication). O formato geral do arquivo pg_hba.conf é um conjunto de registros, sendo um por linha.