Fabrízio de Royes Mello

Blog sobre Tecnologia da Informação

Instalar/Configurar "Debugador" De PL/pgSQL (Pldebugger) No PostgreSQL 9.1 Usando Ubuntu


O passo-a-passo abaixo foi realizado no Ubuntu 10.04LTS com o PostgreSQL 9.1 instalado via ppa do Martin Pitti, mas creio que pode ser executado tranquilamente utilizando a última versão LTS do Ubuntu, a 12.04LTS.

1) Download dos fontes do PostgreSQL

$ wget -c http://ftp.postgresql.org/pub/source/v9.1.3/postgresql-9.1.3.tar.bz2


2) Precisamos instalar ferramentas necessárias para compilação da extensão

$ sudo apt-get update
$ sudo apt-get install build-essential libreadline-dev zlib1g-dev flex bison libssl-dev git-core


3) Compilar o PostgreSQL e a extensao pldebugger

$ tar jxvf postgresql-9.1.3.tar.bz2
$ cd postgresql-9.1.3
$ ./configure –prefix=/usr –includedir=/usr/include –mandir=/usr/share/man –infodir=/usr/share/info –sysconfdir=/etc –localstatedir=/var –libexecdir=/usr/lib/postgresql-9.1 –srcdir=. –mandir=/usr/share/postgresql/9.1/man –docdir=/usr/share/doc/postgresql-doc-9.1 –datadir=/usr/share/postgresql/9.1 –bindir=/usr/lib/postgresql/9.1/bin –libdir=/usr/lib/postgresql/9.1/lib –includedir=/usr/include/postgresql/ –enable-integer-datetimes –with-openssl
$ make
$ cd contrib
$ git clone git://git.postgresql.org/git/pldebugger.git
$ cd pldebugger
$ make
$ sudo make install

Obs: lembrando que, apesar de extenso, o “./configure” deve ser todo escrito na mesma linha

4) Após compilar e instalar a extensao pldebugger precisamos ativa-a no PostgreSQL

$ sudo vim /etc/postgresql/9.1/main/postgresql.conf

alterar
 
  #shared_preload_libraries = ”

para
 
  shared_preload_libraries = ‘$libdir/plugin_debugger’
 

5) Reiniciar PostgreSQL

$ sudo /etc/init.d/postgresql restart 9.1


6) Criar a EXTENSAO “pldbgpapi” na(s) base(s) de dados que deseja fazer debug de pls

$ psql -U postgres bdteste
psql (9.1.3)
Digite “help” para ajuda.


bdteste=# CREATE EXTENSION pldbgapi;
CREATE EXTENSION
bdteste=#


7) Pronto, agora vc pode usar o PGAdmin para “debugar” suas funções PL/pgSQL




Fabrízio Mello
fabriziomello [at] gmail.com


Comments

Fabrízio de Royes Mello
Olá Fábio,

Minha experiência com PostgreSQL nessa plataforma (Windows) é limitada, mas parece que nesse seu caso o problema é no seu "pg_hba.conf" (Host Based Authentication), ou seja, o arquivo de configuração das permissões para autenticação dos usuários na base de dados. Tente editá-lo e alterar os métodos de autenticação das regras (última coluna) para "trust", depois faça um reload no processo do PostgreSQL e tente novamente.

Também gostaria de comentar que esse não é o melhor local para vc tirar esse tipo de dúvida, então o convido para assinar nossa lista de discussão [1] da Comunidade Brasileira de PostgreSQL, onde temos muitas pessoas observando as dúvidas e ajudando. Faça um teste, se cadastre lá e envie um email com essa dúvida e vc verá como será.

Abraços,

[1] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Fabrízio de Royes Mello
Comunidade Brasileira de PostgreSQL
Fabio
Olá Fabrízio !! Estou com um problema no postgresql e estou na minha primeira instalação para começar a aprender…Na hora que estou criando o banco pela linha de comando ele pede senha e eu digito, mas apareçe uma mensagem tipo "postgres não conseguiu conectar com o database erro fatal, falha na autenticação da senha", no entanto já troquei a senha do usuario postgres diversas vezes e o erro persiste. Estou usando a ferramenta no windows seven 64bits(já tentei no XP tambem)… Poderia me ajudar? Desde já muito obrigado e valeu pela atenção!!!