[pgbr-geral] AUTO_INCREMENT

2009-06-19 Por tôpico Leonardo Barbosa
Salve Galera!
Sou iniciante em Pg... e tou tendo algumas dificuldades em colocar a chave
primaria como auto_increment
Percebi que seria necessário criar uma 'Sequence'... Criei essa sequence mas
não sei como relacionar ao campo da tabela que eu quero este atributo.
Podem me ajudar?

-- 
Atenciosamente,

Leonardo Barbosa
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] AUTO_INCREMENT

2009-06-19 Por tôpico Leandro Cavalari Soares
Bom Dia Leonardo!

Uma vez criada a sequencia, basta vc setar o valor default da sua PK como
nextval('sequencia'). Em [1] você encontrará um exemplo.

T+!

[1] http://archives.postgresql.org/pgsql-sql/2006-09/msg00157.php

2009/6/19 Leonardo Barbosa leo...@gmail.com

 Salve Galera!
 Sou iniciante em Pg... e tou tendo algumas dificuldades em colocar a chave
 primaria como auto_increment
 Percebi que seria necessário criar uma 'Sequence'... Criei essa sequence
 mas não sei como relacionar ao campo da tabela que eu quero este atributo.
 Podem me ajudar?

 --
 Atenciosamente,

 Leonardo Barbosa


 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




-- 
Leandro Cavalari Soares
Analista de Sistemas / DBA
Veltrac - Tecnologia em Logística
(43) 2105-5614 / (43) 9922-8095 - Londrina / PR
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] AUTO_INCREMENT

2009-06-19 Por tôpico Leonardo Barbosa
Leandro,Obrigado pela ajuda
Mas ainda não consegui, dá um erro sql acusando que a sequencia informada
não existe, mas ela existe!
segue codigo que utilizei para criar a sequencia:

CREATE SEQUENCE Jogador_Matricula_Seq
  INCREMENT 1
  MINVALUE 1
  MAXVALUE 9223372036854775807
  START 1
  CACHE 1;
ALTER TABLE Jogador_Matricula_Seq OWNER TO postgres;

O erro é gerado quando executo:

ALTER TABLE Jogador
ALTER COLUMN Matricula
SET DEFAULT NEXTVAL(Jogador_Matricula_Seq);

Erro:
ERROR:  relation jogador_matricula_seq does not exist

2009/6/19 Leandro Cavalari Soares lcs.sini...@gmail.com

 Bom Dia Leonardo!

 Uma vez criada a sequencia, basta vc setar o valor default da sua PK como
 nextval('sequencia'). Em [1] você encontrará um exemplo.

 T+!

 [1] http://archives.postgresql.org/pgsql-sql/2006-09/msg00157.php

 2009/6/19 Leonardo Barbosa leo...@gmail.com

  Salve Galera!
 Sou iniciante em Pg... e tou tendo algumas dificuldades em colocar a chave
 primaria como auto_increment
 Percebi que seria necessário criar uma 'Sequence'... Criei essa sequence
 mas não sei como relacionar ao campo da tabela que eu quero este atributo.
 Podem me ajudar?

 --
 Atenciosamente,

 Leonardo Barbosa


 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




 --
 Leandro Cavalari Soares
 Analista de Sistemas / DBA
 Veltrac - Tecnologia em Logística
 (43) 2105-5614 / (43) 9922-8095 - Londrina / PR

 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




-- 
Atenciosamente,

Leonardo Barbosa
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] AUTO_INCREMENT

2009-06-19 Por tôpico Rafael Domiciano
Bom Dia Leonardo,
tente colocar o nome da sequence entre aspas simples ('), quando você passa
aspas duplas o Postgres entende que Jogador_Matricula_Seq é uma tabela
(relation) ou uma coluna.

Atenciosamente

2009/6/19 Leonardo Barbosa leo...@gmail.com

 Leandro,Obrigado pela ajuda
 Mas ainda não consegui, dá um erro sql acusando que a sequencia informada
 não existe, mas ela existe!
 segue codigo que utilizei para criar a sequencia:

 CREATE SEQUENCE Jogador_Matricula_Seq
   INCREMENT 1
   MINVALUE 1
   MAXVALUE 9223372036854775807
   START 1
   CACHE 1;
 ALTER TABLE Jogador_Matricula_Seq OWNER TO postgres;

 O erro é gerado quando executo:

 ALTER TABLE Jogador
 ALTER COLUMN Matricula
 SET DEFAULT NEXTVAL(Jogador_Matricula_Seq);

 Erro:
 ERROR:  relation jogador_matricula_seq does not exist

 2009/6/19 Leandro Cavalari Soares lcs.sini...@gmail.com

 Bom Dia Leonardo!

 Uma vez criada a sequencia, basta vc setar o valor default da sua PK
 como nextval('sequencia'). Em [1] você encontrará um exemplo.

 T+!

 [1] http://archives.postgresql.org/pgsql-sql/2006-09/msg00157.php

 2009/6/19 Leonardo Barbosa leo...@gmail.com

  Salve Galera!
 Sou iniciante em Pg... e tou tendo algumas dificuldades em colocar a
 chave primaria como auto_increment
 Percebi que seria necessário criar uma 'Sequence'... Criei essa sequence
 mas não sei como relacionar ao campo da tabela que eu quero este atributo.
 Podem me ajudar?

 --
 Atenciosamente,

 Leonardo Barbosa


 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




 --
 Leandro Cavalari Soares
 Analista de Sistemas / DBA
 Veltrac - Tecnologia em Logística
 (43) 2105-5614 / (43) 9922-8095 - Londrina / PR

 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




 --
 Atenciosamente,

 Leonardo Barbosa


 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] AUTO_INCREMENT

2009-06-19 Por tôpico JotaComm
Olá,

Em vez de: SET DEFAULT NEXTVAL(Jogador_Matricula_Seq); você deve fazer:
SET DEFAULT NEXTVAL('Jogador_Matricula_Seq');


2009/6/19 Leonardo Barbosa leo...@gmail.com

 Leandro,Obrigado pela ajuda
 Mas ainda não consegui, dá um erro sql acusando que a sequencia informada
 não existe, mas ela existe!
 segue codigo que utilizei para criar a sequencia:

 CREATE SEQUENCE Jogador_Matricula_Seq
   INCREMENT 1
   MINVALUE 1
   MAXVALUE 9223372036854775807
   START 1
   CACHE 1;
 ALTER TABLE Jogador_Matricula_Seq OWNER TO postgres;

 O erro é gerado quando executo:

 ALTER TABLE Jogador
 ALTER COLUMN Matricula
 SET DEFAULT NEXTVAL(Jogador_Matricula_Seq);

 Erro:
 ERROR:  relation jogador_matricula_seq does not exist

 2009/6/19 Leandro Cavalari Soares lcs.sini...@gmail.com

 Bom Dia Leonardo!

 Uma vez criada a sequencia, basta vc setar o valor default da sua PK
 como nextval('sequencia'). Em [1] você encontrará um exemplo.

 T+!

 [1] http://archives.postgresql.org/pgsql-sql/2006-09/msg00157.php

 2009/6/19 Leonardo Barbosa leo...@gmail.com

  Salve Galera!
 Sou iniciante em Pg... e tou tendo algumas dificuldades em colocar a
 chave primaria como auto_increment
 Percebi que seria necessário criar uma 'Sequence'... Criei essa sequence
 mas não sei como relacionar ao campo da tabela que eu quero este atributo.
 Podem me ajudar?

 --
 Atenciosamente,

 Leonardo Barbosa


 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




 --
 Leandro Cavalari Soares
 Analista de Sistemas / DBA
 Veltrac - Tecnologia em Logística
 (43) 2105-5614 / (43) 9922-8095 - Londrina / PR

 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




 --
 Atenciosamente,

 Leonardo Barbosa


 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral



[]s
-- 
JotaComm
http://jotacomm.wordpress.com
http://www.dextra.com.br/postgres
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] AUTO_INCREMENT

2009-06-19 Por tôpico Leonardo Barbosa
Humm.. era isso mesmo !
Mas o erro tava persistindo... coloquei o nome da sequência todo em letras
minúsculas, e funcionou !
Obrigado ae !

2009/6/19 JotaComm jota.c...@gmail.com

 Olá,

 Em vez de: SET DEFAULT NEXTVAL(Jogador_Matricula_Seq); você deve fazer:
 SET DEFAULT NEXTVAL('Jogador_Matricula_Seq');



 2009/6/19 Leonardo Barbosa leo...@gmail.com

 Leandro,Obrigado pela ajuda
 Mas ainda não consegui, dá um erro sql acusando que a sequencia informada
 não existe, mas ela existe!
 segue codigo que utilizei para criar a sequencia:

 CREATE SEQUENCE Jogador_Matricula_Seq
   INCREMENT 1
   MINVALUE 1
   MAXVALUE 9223372036854775807
   START 1
   CACHE 1;
 ALTER TABLE Jogador_Matricula_Seq OWNER TO postgres;

 O erro é gerado quando executo:

 ALTER TABLE Jogador
 ALTER COLUMN Matricula
 SET DEFAULT NEXTVAL(Jogador_Matricula_Seq);

 Erro:
 ERROR:  relation jogador_matricula_seq does not exist

 2009/6/19 Leandro Cavalari Soares lcs.sini...@gmail.com

 Bom Dia Leonardo!

 Uma vez criada a sequencia, basta vc setar o valor default da sua PK
 como nextval('sequencia'). Em [1] você encontrará um exemplo.

 T+!

 [1] http://archives.postgresql.org/pgsql-sql/2006-09/msg00157.php

 2009/6/19 Leonardo Barbosa leo...@gmail.com

  Salve Galera!
 Sou iniciante em Pg... e tou tendo algumas dificuldades em colocar a
 chave primaria como auto_increment
 Percebi que seria necessário criar uma 'Sequence'... Criei essa sequence
 mas não sei como relacionar ao campo da tabela que eu quero este atributo.
 Podem me ajudar?

 --
 Atenciosamente,

 Leonardo Barbosa


 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




 --
 Leandro Cavalari Soares
 Analista de Sistemas / DBA
 Veltrac - Tecnologia em Logística
 (43) 2105-5614 / (43) 9922-8095 - Londrina / PR

 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




 --
 Atenciosamente,

 Leonardo Barbosa


 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral



 []s
 --
 JotaComm
 http://jotacomm.wordpress.com
 http://www.dextra.com.br/postgres

 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




-- 
Atenciosamente,

Leonardo Barbosa
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] AUTO_INCREMENT

2009-06-19 Por tôpico Rafael Domiciano
Leonardo,
No Postgres existe um tipo de dados chamado serial, ou seja, quando você
cria a tabela especificando esse tipo de dados, o Postgres automaticamente
cria a sequence e define o default do campo como nextval do campo:

ALTER TABLE teste
  ADD COLUMN coluna_01 serial;

2009/6/19 JotaComm jota.c...@gmail.com

 Olá,

 Em vez de: SET DEFAULT NEXTVAL(Jogador_Matricula_Seq); você deve fazer:
 SET DEFAULT NEXTVAL('Jogador_Matricula_Seq');



 2009/6/19 Leonardo Barbosa leo...@gmail.com

 Leandro,Obrigado pela ajuda
 Mas ainda não consegui, dá um erro sql acusando que a sequencia informada
 não existe, mas ela existe!
 segue codigo que utilizei para criar a sequencia:

 CREATE SEQUENCE Jogador_Matricula_Seq
   INCREMENT 1
   MINVALUE 1
   MAXVALUE 9223372036854775807
   START 1
   CACHE 1;
 ALTER TABLE Jogador_Matricula_Seq OWNER TO postgres;

 O erro é gerado quando executo:

 ALTER TABLE Jogador
 ALTER COLUMN Matricula
 SET DEFAULT NEXTVAL(Jogador_Matricula_Seq);

 Erro:
 ERROR:  relation jogador_matricula_seq does not exist

 2009/6/19 Leandro Cavalari Soares lcs.sini...@gmail.com

 Bom Dia Leonardo!

 Uma vez criada a sequencia, basta vc setar o valor default da sua PK
 como nextval('sequencia'). Em [1] você encontrará um exemplo.

 T+!

 [1] http://archives.postgresql.org/pgsql-sql/2006-09/msg00157.php

 2009/6/19 Leonardo Barbosa leo...@gmail.com

  Salve Galera!
 Sou iniciante em Pg... e tou tendo algumas dificuldades em colocar a
 chave primaria como auto_increment
 Percebi que seria necessário criar uma 'Sequence'... Criei essa sequence
 mas não sei como relacionar ao campo da tabela que eu quero este atributo.
 Podem me ajudar?

 --
 Atenciosamente,

 Leonardo Barbosa


 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




 --
 Leandro Cavalari Soares
 Analista de Sistemas / DBA
 Veltrac - Tecnologia em Logística
 (43) 2105-5614 / (43) 9922-8095 - Londrina / PR

 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




 --
 Atenciosamente,

 Leonardo Barbosa


 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral



 []s
 --
 JotaComm
 http://jotacomm.wordpress.com
 http://www.dextra.com.br/postgres

 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] AUTO_INCREMENT

2009-06-19 Por tôpico Leonardo Barbosa
Melhor ainda !
tentei alterar um campo chave primaria de uma outra tabela para
serial... foi retornada a seguinte mensagem:

Comando:
ALTER TABLE Jogada add COLUMN Jogada_Id serial;

Erro:
ERROR:  syntax error at or near 'serial'
LINE 1: ALTER TABLE Jogada ALTER COLUMN JogadaId 'serial';
 ^
** Erro **
ERROR: syntax error at or near 'serial'
SQL state: 42601
Caracter: 46


Esse tipo de dado funciona apenas na criação do campo ? na alteração nao é
pormitido nao ?

2009/6/19 Rafael Domiciano rafael.domici...@gmail.com

 Leonardo,
 No Postgres existe um tipo de dados chamado serial, ou seja, quando você
 cria a tabela especificando esse tipo de dados, o Postgres automaticamente
 cria a sequence e define o default do campo como nextval do campo:

 ALTER TABLE teste
   ADD COLUMN coluna_01 serial;

 2009/6/19 JotaComm jota.c...@gmail.com

 Olá,


 Em vez de: SET DEFAULT NEXTVAL(Jogador_Matricula_Seq); você deve fazer:
 SET DEFAULT NEXTVAL('Jogador_Matricula_Seq');



 2009/6/19 Leonardo Barbosa leo...@gmail.com

 Leandro,Obrigado pela ajuda
 Mas ainda não consegui, dá um erro sql acusando que a sequencia informada
 não existe, mas ela existe!
 segue codigo que utilizei para criar a sequencia:

 CREATE SEQUENCE Jogador_Matricula_Seq
   INCREMENT 1
   MINVALUE 1
   MAXVALUE 9223372036854775807
   START 1
   CACHE 1;
 ALTER TABLE Jogador_Matricula_Seq OWNER TO postgres;

 O erro é gerado quando executo:

 ALTER TABLE Jogador
 ALTER COLUMN Matricula
 SET DEFAULT NEXTVAL(Jogador_Matricula_Seq);

 Erro:
 ERROR:  relation jogador_matricula_seq does not exist

 2009/6/19 Leandro Cavalari Soares lcs.sini...@gmail.com

 Bom Dia Leonardo!

 Uma vez criada a sequencia, basta vc setar o valor default da sua PK
 como nextval('sequencia'). Em [1] você encontrará um exemplo.

 T+!

 [1] http://archives.postgresql.org/pgsql-sql/2006-09/msg00157.php

 2009/6/19 Leonardo Barbosa leo...@gmail.com

  Salve Galera!
 Sou iniciante em Pg... e tou tendo algumas dificuldades em colocar a
 chave primaria como auto_increment
 Percebi que seria necessário criar uma 'Sequence'... Criei essa
 sequence mas não sei como relacionar ao campo da tabela que eu quero este
 atributo.
 Podem me ajudar?

 --
 Atenciosamente,

 Leonardo Barbosa


 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




 --
 Leandro Cavalari Soares
 Analista de Sistemas / DBA
 Veltrac - Tecnologia em Logística
 (43) 2105-5614 / (43) 9922-8095 - Londrina / PR

 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




 --
 Atenciosamente,

 Leonardo Barbosa


 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral



 []s
 --
 JotaComm
 http://jotacomm.wordpress.com
 http://www.dextra.com.br/postgres

 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral



 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




-- 
Atenciosamente,

Leonardo Barbosa
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] AUTO_INCREMENT

2009-06-19 Por tôpico Leonardo Barbosa
na verdade foi um alter:

ERROR:  syntax error at or near serial
LINE 1: ALTER TABLE Jogada alter COLUMN Jogada_Id serial;
  ^

** Erro **

ERROR: syntax error at or near serial
SQL state: 42601
Caracter: 47



2009/6/19 Leonardo Barbosa leo...@gmail.com

 Melhor ainda !
 tentei alterar um campo chave primaria de uma outra tabela para
 serial... foi retornada a seguinte mensagem:

 Comando:
 ALTER TABLE Jogada add COLUMN Jogada_Id serial;

 Erro:
 ERROR:  syntax error at or near 'serial'
 LINE 1: ALTER TABLE Jogada ALTER COLUMN JogadaId 'serial';
  ^
 ** Erro **
 ERROR: syntax error at or near 'serial'
 SQL state: 42601
 Caracter: 46


 Esse tipo de dado funciona apenas na criação do campo ? na alteração nao é
 pormitido nao ?

 2009/6/19 Rafael Domiciano rafael.domici...@gmail.com

 Leonardo,
 No Postgres existe um tipo de dados chamado serial, ou seja, quando você
 cria a tabela especificando esse tipo de dados, o Postgres automaticamente
 cria a sequence e define o default do campo como nextval do campo:

 ALTER TABLE teste
   ADD COLUMN coluna_01 serial;

 2009/6/19 JotaComm jota.c...@gmail.com

 Olá,


 Em vez de: SET DEFAULT NEXTVAL(Jogador_Matricula_Seq); você deve fazer:
 SET DEFAULT NEXTVAL('Jogador_Matricula_Seq');



 2009/6/19 Leonardo Barbosa leo...@gmail.com

 Leandro,Obrigado pela ajuda
 Mas ainda não consegui, dá um erro sql acusando que a sequencia
 informada não existe, mas ela existe!
 segue codigo que utilizei para criar a sequencia:

 CREATE SEQUENCE Jogador_Matricula_Seq
   INCREMENT 1
   MINVALUE 1
   MAXVALUE 9223372036854775807
   START 1
   CACHE 1;
 ALTER TABLE Jogador_Matricula_Seq OWNER TO postgres;

 O erro é gerado quando executo:

 ALTER TABLE Jogador
 ALTER COLUMN Matricula
 SET DEFAULT NEXTVAL(Jogador_Matricula_Seq);

 Erro:
 ERROR:  relation jogador_matricula_seq does not exist

 2009/6/19 Leandro Cavalari Soares lcs.sini...@gmail.com

 Bom Dia Leonardo!

 Uma vez criada a sequencia, basta vc setar o valor default da sua PK
 como nextval('sequencia'). Em [1] você encontrará um exemplo.

 T+!

 [1] http://archives.postgresql.org/pgsql-sql/2006-09/msg00157.php

 2009/6/19 Leonardo Barbosa leo...@gmail.com

  Salve Galera!
 Sou iniciante em Pg... e tou tendo algumas dificuldades em colocar a
 chave primaria como auto_increment
 Percebi que seria necessário criar uma 'Sequence'... Criei essa
 sequence mas não sei como relacionar ao campo da tabela que eu quero este
 atributo.
 Podem me ajudar?

 --
 Atenciosamente,

 Leonardo Barbosa


 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




 --
 Leandro Cavalari Soares
 Analista de Sistemas / DBA
 Veltrac - Tecnologia em Logística
 (43) 2105-5614 / (43) 9922-8095 - Londrina / PR

 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




 --
 Atenciosamente,

 Leonardo Barbosa


 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral



 []s
 --
 JotaComm
 http://jotacomm.wordpress.com
 http://www.dextra.com.br/postgres

 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral



 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




 --
 Atenciosamente,

 Leonardo Barbosa




-- 
Atenciosamente,

Leonardo Barbosa
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] AUTO_INCREMENT

2009-06-19 Por tôpico JotaComm
Opa,

A sintaxe esta errada. O correto é: ALTER TABLE Jogada ALTER COLUMN
Jogada_Id TYPE serial;


2009/6/19 Leonardo Barbosa leo...@gmail.com

 na verdade foi um alter:

 ERROR:  syntax error at or near serial
 LINE 1: ALTER TABLE Jogada alter COLUMN Jogada_Id serial;
   ^

 ** Erro **

 ERROR: syntax error at or near serial
 SQL state: 42601
 Caracter: 47




 2009/6/19 Leonardo Barbosa leo...@gmail.com

 Melhor ainda !
 tentei alterar um campo chave primaria de uma outra tabela para
 serial... foi retornada a seguinte mensagem:

 Comando:
 ALTER TABLE Jogada add COLUMN Jogada_Id serial;

 Erro:
 ERROR:  syntax error at or near 'serial'
 LINE 1: ALTER TABLE Jogada ALTER COLUMN JogadaId 'serial';
  ^
 ** Erro **
 ERROR: syntax error at or near 'serial'
 SQL state: 42601
 Caracter: 46


 Esse tipo de dado funciona apenas na criação do campo ? na alteração nao é
 pormitido nao ?

 2009/6/19 Rafael Domiciano rafael.domici...@gmail.com

 Leonardo,
 No Postgres existe um tipo de dados chamado serial, ou seja, quando você
 cria a tabela especificando esse tipo de dados, o Postgres automaticamente
 cria a sequence e define o default do campo como nextval do campo:

 ALTER TABLE teste
   ADD COLUMN coluna_01 serial;

 2009/6/19 JotaComm jota.c...@gmail.com

 Olá,


 Em vez de: SET DEFAULT NEXTVAL(Jogador_Matricula_Seq); você deve
 fazer: SET DEFAULT NEXTVAL('Jogador_Matricula_Seq');



 2009/6/19 Leonardo Barbosa leo...@gmail.com

 Leandro,Obrigado pela ajuda
 Mas ainda não consegui, dá um erro sql acusando que a sequencia
 informada não existe, mas ela existe!
 segue codigo que utilizei para criar a sequencia:

 CREATE SEQUENCE Jogador_Matricula_Seq
   INCREMENT 1
   MINVALUE 1
   MAXVALUE 9223372036854775807
   START 1
   CACHE 1;
 ALTER TABLE Jogador_Matricula_Seq OWNER TO postgres;

 O erro é gerado quando executo:

 ALTER TABLE Jogador
 ALTER COLUMN Matricula
 SET DEFAULT NEXTVAL(Jogador_Matricula_Seq);

 Erro:
 ERROR:  relation jogador_matricula_seq does not exist

 2009/6/19 Leandro Cavalari Soares lcs.sini...@gmail.com

 Bom Dia Leonardo!

 Uma vez criada a sequencia, basta vc setar o valor default da sua PK
 como nextval('sequencia'). Em [1] você encontrará um exemplo.

 T+!

 [1] http://archives.postgresql.org/pgsql-sql/2006-09/msg00157.php

 2009/6/19 Leonardo Barbosa leo...@gmail.com

  Salve Galera!
 Sou iniciante em Pg... e tou tendo algumas dificuldades em colocar a
 chave primaria como auto_increment
 Percebi que seria necessário criar uma 'Sequence'... Criei essa
 sequence mas não sei como relacionar ao campo da tabela que eu quero 
 este
 atributo.
 Podem me ajudar?

 --
 Atenciosamente,

 Leonardo Barbosa


 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




 --
 Leandro Cavalari Soares
 Analista de Sistemas / DBA
 Veltrac - Tecnologia em Logística
 (43) 2105-5614 / (43) 9922-8095 - Londrina / PR

 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




 --
 Atenciosamente,

 Leonardo Barbosa


 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral



 []s
 --
 JotaComm
 http://jotacomm.wordpress.com
 http://www.dextra.com.br/postgres

 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral



 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




 --
 Atenciosamente,

 Leonardo Barbosa




 --
 Atenciosamente,

 Leonardo Barbosa


 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral



[]s
-- 
JotaComm
http://jotacomm.wordpress.com
http://www.dextra.com.br/postgres
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


[pgbr-geral] Recuperar dados deletados

2009-06-19 Por tôpico Seta Digital - Suporte
Bom Dia

Gostaria de Saber qual o comando posso utilizar para recuperar dados que 
estejam deletados antes de dar um vaccum

Abraço

Alexandre Martinasso___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


[pgbr-geral] Configuração servidor 80 Terminai s

2009-06-19 Por tôpico Seta Digital - Suporte
Bom Dia Pessoal...


Gostaria de Saber uma configuração de Hardware para um servidor que vai rodar 
Postgres em Linux com 80 Terminais Acessando ele

Abraço...

Alexandre Martinasso___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Recuperar dados deletados

2009-06-19 Por tôpico JotaComm
Olá,

Não existe comando para tal procedimento.

Se você tiver aberto um transação com o begin, você consegue fazer rollback.

2009/6/19 Seta Digital - Suporte supo...@setadigital.com.br

  Bom Dia

 Gostaria de Saber qual o comando posso utilizar para recuperar dados que
 estejam deletados antes de dar um vaccum

 Abraço

 Alexandre Martinasso

 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




[]s
-- 
JotaComm
http://jotacomm.wordpress.com
http://www.dextra.com.br/postgres
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Configuração servidor 80 Terminai s

2009-06-19 Por tôpico JotaComm
Olá,

Que tipo de aplicação? OLTP? OLAP?

2009/6/19 Seta Digital - Suporte supo...@setadigital.com.br

  Bom Dia Pessoal...


 Gostaria de Saber uma configuração de Hardware para um servidor que vai
 rodar Postgres em Linux com 80 Terminais Acessando ele

 Abraço...

 Alexandre Martinasso

 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral



[]s
-- 
JotaComm
http://jotacomm.wordpress.com
http://www.dextra.com.br/postgres
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Pesquisa sobre o uso do PostgreSQL em prod ução

2009-06-19 Por tôpico Fábio Telles Rodriguez
Olá senhores. A pesquisa vai indo muito bem. Até agora são quase 100
pesquisas respondidas e ainda nem divulgamos no FISL e no BR-Linux...

Mas eu notei que muita gente que respondeu a pesquisa (não, não posso dizer
quem) trabalha em empresas de desenvolvimento de software. Seria muito
bacana divulgar a pesquisa para os clientes destas empresas, para que
tenhamos mais casos de clientes que utilizam os seus produtos na pesquisa.

Estou separando estudos de caso para apresentar um trabalho mais aprofundado
posteriormente com 10 empresas. Já confirmei 3 até agora. Devo dizer que
mesmo com o questionário com algumas falhas, os resultados estão ficando
muito interessantes. Ano que vem fazemos uma melhor ainda.

Atenciosamente,
Fábio Telles

2009/6/17 Fábio Telles Rodriguez fabio.tel...@gmail.com

 Senhores, hoje é o dia. Está lançada a primeira pesquisa sobre o uso do
 PostgreSQL em ambiente de produção. Peço a todos que utilizam o PostgreSQL
 que preecham a pesquisa (leva menos de 5 minutos) para mostrar a real força
 do PostgreSQL no Brasil.

 No final, vamos divulgar os resultados (a soma deles) no site da comunidade
 me www.postgresql.org.br. A idéia é ter uma referência para mostrar um
 pouco da força do PostgreSQL no Brasil. O próximo passo será divulgar cases
 reais de uso do PostgreSQL no Brasil. Por enquanto, vamos trabalhar com
 dados quantitativos, para depois fazer algo mais qualitativo.

 Ajudem a fortalecer ao PostgreSQL no Brasil, preencha a pesquisa, incentive
 seus parceiros comerciais a preencher e divulgue a pesquisa.

 Atenciosamente,
 Fábio Telles
 --
 blog: http://www.midstorm.org/~telles/http://www.midstorm.org/%7Etelles/
 e-mail / jabber: fabio.tel...@gmail.com




-- 
blog: http://www.midstorm.org/~telles/
e-mail / jabber: fabio.tel...@gmail.com
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] AUTO_INCREMENT

2009-06-19 Por tôpico Luiz Rafael Culik Guimaraes
Leonardo

Eu sugiro criar todas as duas tabelas ( tanto o nome delas, como o nome dos 
seus campos) tudo em minuscular

[]s
luiz
  - Original Message - 
  From: Leonardo Barbosa 
  To: Comunidade PostgreSQL Brasileira 
  Sent: Friday, June 19, 2009 9:56 AM
  Subject: Re: [pgbr-geral] AUTO_INCREMENT


  na verdade foi um alter:

  ERROR:  syntax error at or near serial
  LINE 1: ALTER TABLE Jogada alter COLUMN Jogada_Id serial;
^

  ** Erro **

  ERROR: syntax error at or near serial
  SQL state: 42601
  Caracter: 47




  2009/6/19 Leonardo Barbosa leo...@gmail.com

Melhor ainda ! 
tentei alterar um campo chave primaria de uma outra tabela para 
serial... foi retornada a seguinte mensagem:

Comando: 
ALTER TABLE Jogada add COLUMN Jogada_Id serial;

Erro: 
ERROR:  syntax error at or near 'serial'
LINE 1: ALTER TABLE Jogada ALTER COLUMN JogadaId 'serial';
 ^
** Erro **
ERROR: syntax error at or near 'serial'
SQL state: 42601
Caracter: 46


Esse tipo de dado funciona apenas na criação do campo ? na alteração nao é 
pormitido nao ?


2009/6/19 Rafael Domiciano rafael.domici...@gmail.com


  Leonardo,


  No Postgres existe um tipo de dados chamado serial, ou seja, quando você 
cria a tabela especificando esse tipo de dados, o Postgres automaticamente cria 
a sequence e define o default do campo como nextval do campo:


  ALTER TABLE teste
ADD COLUMN coluna_01 serial;


  2009/6/19 JotaComm jota.c...@gmail.com

Olá,


Em vez de: SET DEFAULT NEXTVAL(Jogador_Matricula_Seq); você deve 
fazer: SET DEFAULT NEXTVAL('Jogador_Matricula_Seq');




2009/6/19 Leonardo Barbosa leo...@gmail.com

  Leandro,Obrigado pela ajuda 
  Mas ainda não consegui, dá um erro sql acusando que a sequencia 
informada não existe, mas ela existe!
  segue codigo que utilizei para criar a sequencia: 

  CREATE SEQUENCE Jogador_Matricula_Seq
INCREMENT 1
MINVALUE 1
MAXVALUE 9223372036854775807
START 1
CACHE 1;
  ALTER TABLE Jogador_Matricula_Seq OWNER TO postgres;

  O erro é gerado quando executo: 

  ALTER TABLE Jogador
  ALTER COLUMN Matricula
  SET DEFAULT NEXTVAL(Jogador_Matricula_Seq);

  Erro: 
  ERROR:  relation jogador_matricula_seq does not exist


  2009/6/19 Leandro Cavalari Soares lcs.sini...@gmail.com


Bom Dia Leonardo!

Uma vez criada a sequencia, basta vc setar o valor default da sua 
PK como nextval('sequencia'). Em [1] você encontrará um exemplo.

T+!

[1] http://archives.postgresql.org/pgsql-sql/2006-09/msg00157.php


2009/6/19 Leonardo Barbosa leo...@gmail.com

  Salve Galera!
  Sou iniciante em Pg... e tou tendo algumas dificuldades em 
colocar a chave primaria como auto_increment
  Percebi que seria necessário criar uma 'Sequence'... Criei essa 
sequence mas não sei como relacionar ao campo da tabela que eu quero este 
atributo.
  Podem me ajudar?

  -- 
  Atenciosamente, 

  Leonardo Barbosa



  ___
  pgbr-geral mailing list
  pgbr-geral@listas.postgresql.org.br
  
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral





-- 
Leandro Cavalari Soares
Analista de Sistemas / DBA
Veltrac - Tecnologia em Logística
(43) 2105-5614 / (43) 9922-8095 - Londrina / PR

___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral





  -- 
  Atenciosamente, 

  Leonardo Barbosa


  ___
  pgbr-geral mailing list
  pgbr-geral@listas.postgresql.org.br
  https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral





[]s
-- 
JotaComm
http://jotacomm.wordpress.com
http://www.dextra.com.br/postgres

___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral





  ___
  pgbr-geral mailing list
  pgbr-geral@listas.postgresql.org.br
  https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral





-- 
Atenciosamente, 

Leonardo Barbosa





  -- 
  Atenciosamente, 

  Leonardo 

[pgbr-geral] duvida timezone 8.4

2009-06-19 Por tôpico jorge sanfelice
Pessoal,
Estou usando a versao 8.4 para testar, etc ... ja em um projeto, só que
estou com problemas no timezone e nao estou conseguindo identificar o que eu
poderia fazer para arrumar.

O server linux esta com o timezone OK.

se eu faço um select traz a informacao correta, ex:

SELECT now();
  now
---
 2009-06-19 12:53:37.450217-03

Mas quando faço um update ou insert grava o timezone errado:

UPDATE cliente_sincroniza SET csclidt_cadastro='2002-11-04 08:32:30-03'
WHERE csclioid='7283' ;
UPDATE 1

select csclidt_cadastro from cliente_sincroniza WHERE csclioid='7283';
csclidt_cadastro

 2002-11-04 09:32:30-02


Aguem poderia me ajudar a solucionar esse problema.

Obrigado
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] duvida timezone 8.4

2009-06-19 Por tôpico JotaComm
Olá,

Você instalou de forma compilada? Qual só você está usando? Debian? Ubuntu?

Você terá que recompilar o PostgreSQL com a opção --with-system-tzdata no
./configure. Este parâmetro do configure você indica o arquivo de timezone
do PostgreSQL. Uma saída é você executar o comando: zdump -v
America/Sao_Paulo, capturar esta saída e jogar no diretório de timezone do
PostgreSQL e assim efetuar a compilação com o parâmetro mencionado acima.




2009/6/19 jorge sanfelice jorgesanfel...@gmail.com

 Pessoal,
 Estou usando a versao 8.4 para testar, etc ... ja em um projeto, só que
 estou com problemas no timezone e nao estou conseguindo identificar o que eu
 poderia fazer para arrumar.

 O server linux esta com o timezone OK.

 se eu faço um select traz a informacao correta, ex:

 SELECT now();
   now
 ---
  2009-06-19 12:53:37.450217-03

 Mas quando faço um update ou insert grava o timezone errado:

 UPDATE cliente_sincroniza SET csclidt_cadastro='2002-11-04 08:32:30-03'
 WHERE csclioid='7283' ;
 UPDATE 1

 select csclidt_cadastro from cliente_sincroniza WHERE csclioid='7283';
 csclidt_cadastro
 
  2002-11-04 09:32:30-02


 Aguem poderia me ajudar a solucionar esse problema.

 Obrigado

 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral



[]s
-- 
JotaComm
http://jotacomm.wordpress.com
http://www.dextra.com.br/postgres
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] duvida timezone 8.4

2009-06-19 Por tôpico jorge sanfelice
Entao, eu instalei um rpm.
Aqui o linux é Mandriva.

Outra coisa entranha é. quando faço insert, o sistema grava o timezone
correto (-03), quando altera a data, ai que grava o timezone errado (-02.)



2009/6/19 JotaComm jota.c...@gmail.com

 Olá,

 Você instalou de forma compilada? Qual só você está usando? Debian? Ubuntu?

 Você terá que recompilar o PostgreSQL com a opção --with-system-tzdata no
 ./configure. Este parâmetro do configure você indica o arquivo de timezone
 do PostgreSQL. Uma saída é você executar o comando: zdump -v
 America/Sao_Paulo, capturar esta saída e jogar no diretório de timezone do
 PostgreSQL e assim efetuar a compilação com o parâmetro mencionado acima.




 2009/6/19 jorge sanfelice jorgesanfel...@gmail.com

 Pessoal,
 Estou usando a versao 8.4 para testar, etc ... ja em um projeto, só que
 estou com problemas no timezone e nao estou conseguindo identificar o que eu
 poderia fazer para arrumar.

 O server linux esta com o timezone OK.

 se eu faço um select traz a informacao correta, ex:

 SELECT now();
   now
 ---
  2009-06-19 12:53:37.450217-03

 Mas quando faço um update ou insert grava o timezone errado:

 UPDATE cliente_sincroniza SET csclidt_cadastro='2002-11-04 08:32:30-03'
 WHERE csclioid='7283' ;
 UPDATE 1

 select csclidt_cadastro from cliente_sincroniza WHERE csclioid='7283';
 csclidt_cadastro
 
  2002-11-04 09:32:30-02


 Aguem poderia me ajudar a solucionar esse problema.

 Obrigado

 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral



 []s
 --
 JotaComm
 http://jotacomm.wordpress.com
 http://www.dextra.com.br/postgres

 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] TSearch palavar Inicial

2009-06-19 Por tôpico mateusgra

Criei Indices parciais, aumentei o _sharedbuffers_ e mesmo assim o desempenho
não ficou bom.


mateusgra wrote:
 
 Criar indices parciais de a-d,e-g etc sera que resolveira o problema.
 
 
 Euler Taveira de Oliveira-2 wrote:
 
 mateusgra escreveu:
 Pelo que li na documentação o ideal é usar 1/3 da ram para o
 shared_buffers.
 É um servidor dedicado ao postgresql e tem 4GB de ram com 200 conexoes
 simultaneas.
 
 Não tem isso de ideal (é uma maneira didática que usamos para
 aconselhar
 usuários com menos experiência ;).
 
 Eu não conheço a sua aplicação, mas utilizar apenas 8% da memória para
 _shared
 buffers_ (quando se tem consultas que utilizam mais do que isso -- 7GB só
 um
 índice!), *não* é o ideal. Meu chute inicial seria pelo menos 768 MB ou
 mesmo
 1GB. Mas para ser mais preciso é necessário saber mais sobre o seu
 ambiente
 tais como tamanho dos objetos e frequência de uso deles (aka pg_stat*).
 
 E mais, dependendo do tamanho da sua base e se o uso desse índice for
 algo
 frequente, eu recomendo que compre mais memória para a máquina.
 
 
 -- 
   Euler Taveira de Oliveira
   http://www.timbira.com/
 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
 
 
 
 

-- 
View this message in context: 
http://www.nabble.com/TSearch-palavar-Inicial-tp24035502p24115724.html
Sent from the PostgreSQL - Brasil mailing list archive at Nabble.com.

___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


[pgbr-geral] RES: Segurança no postgresql

2009-06-19 Por tôpico Leandro Muller
Artigo muito bom.

 

Compreendi o funcionamento, configuração de logs e etc.

Porem agora não consigo encontrar como restaurar os logs.

Exemplo, retornei o backup da meia noite e quero retornar o log da 00:00 ate
as 03:00 momento da falha.

Qual comando utilizar?

 

Abraços.

 

At.

 

Leandro Müller

 

De: pgbr-geral-boun...@listas.postgresql.org.br
[mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de Osvaldo
Kussama
Enviada em: quinta-feira, 18 de junho de 2009 23:15
Para: Comunidade PostgreSQL Brasileira
Assunto: Re: [pgbr-geral] Segurança no postgresql

 

 

2009/6/18 Leandro Muller leandr...@muriki.com.br

Ola turma.

 

Novamente venho recorrer ao grupo.

Alguém possui o material e dicas para montar um bom servidor com segurança
contra perda de dados?

 

No antigo servidor Mysql possuímos 2 HDs, um somente para Logs o outro S.O.
e banco de dados.

Os logs eram salvos no HD2, caso ocorra a perda do HD1 ou problemas no
banco, retornaríamos o backup da 00:00 e rodaríamos os logs da 00:00 ate o
momento da falha.

Obs.: O backup após efetuado é salvo HD1 e HD2 e enviado para outro servidor
através de FTP automaticamente;

 

Alguém tem sugestão de baixo custo?

Hardware que possuímos para o servidor de BD: 

DualCore 2duo, 4 gb memória, 2 HDs 160 SATA2;

SO: Fedora 10;

BD Postgresql 8.3.7;

 


Dê uma olhada neste artigo do Fábio Telles:
Tudo que você sempre quis saber sobre discos em servidores PostgreSQL e
tinha vergonha de perguntar
http://www.midstorm.org/~telles/2008/07/25/postgresql-discos-cia/

Osvaldo
 

___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] duvida timezone 8.4

2009-06-19 Por tôpico jorge sanfelice
Identifiquei que o postgresql esta gravando no banco qual sera o timezone da
data cadastrada conforme for o mes. Ex:

se eu gravo um dado com a data no mes 06, ele coloca o time zone -03
se eu gravo um dado com a data no mes 12, ele coloca o time zone -02

 2009-06-27 00:04:30-03
 2009-12-27 00:04:30-02

Ficou algo altomatico, mais eu nao queria que fosse assim.

Alguem sabe o que pode ser?

Obrigado.

2009/6/19 jorge sanfelice jorgesanfel...@gmail.com

 Entao, eu instalei um rpm.
 Aqui o linux é Mandriva.

 Outra coisa entranha é. quando faço insert, o sistema grava o timezone
 correto (-03), quando altera a data, ai que grava o timezone errado (-02.)



 2009/6/19 JotaComm jota.c...@gmail.com

 Olá,

 Você instalou de forma compilada? Qual só você está usando? Debian?
 Ubuntu?

 Você terá que recompilar o PostgreSQL com a opção --with-system-tzdata no
 ./configure. Este parâmetro do configure você indica o arquivo de timezone
 do PostgreSQL. Uma saída é você executar o comando: zdump -v
 America/Sao_Paulo, capturar esta saída e jogar no diretório de timezone do
 PostgreSQL e assim efetuar a compilação com o parâmetro mencionado acima.




 2009/6/19 jorge sanfelice jorgesanfel...@gmail.com

  Pessoal,
 Estou usando a versao 8.4 para testar, etc ... ja em um projeto, só que
 estou com problemas no timezone e nao estou conseguindo identificar o que eu
 poderia fazer para arrumar.

 O server linux esta com o timezone OK.

 se eu faço um select traz a informacao correta, ex:

 SELECT now();
   now
 ---
  2009-06-19 12:53:37.450217-03

 Mas quando faço um update ou insert grava o timezone errado:

 UPDATE cliente_sincroniza SET csclidt_cadastro='2002-11-04 08:32:30-03'
 WHERE csclioid='7283' ;
 UPDATE 1

 select csclidt_cadastro from cliente_sincroniza WHERE csclioid='7283';
 csclidt_cadastro
 
  2002-11-04 09:32:30-02


 Aguem poderia me ajudar a solucionar esse problema.

 Obrigado

 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral



 []s
 --
 JotaComm
 http://jotacomm.wordpress.com
 http://www.dextra.com.br/postgres

 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral



___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] duvida timezone 8.4

2009-06-19 Por tôpico Benedito A. Cruz

Está correto, ele está levando em conta o horário de verão.


jorge sanfelice wrote:
Identifiquei que o postgresql esta gravando no banco qual sera o 
timezone da data cadastrada conforme for o mes. Ex:


se eu gravo um dado com a data no mes 06, ele coloca o time zone -03
se eu gravo um dado com a data no mes 12, ele coloca o time zone -02

 2009-06-27 00:04:30-03
 2009-12-27 00:04:30-02

Ficou algo altomatico, mais eu nao queria que fosse assim.

Alguem sabe o que pode ser?

Obrigado.

2009/6/19 jorge sanfelice jorgesanfel...@gmail.com 
mailto:jorgesanfel...@gmail.com


Entao, eu instalei um rpm.
Aqui o linux é Mandriva.

Outra coisa entranha é. quando faço insert, o sistema grava o
timezone correto (-03), quando altera a data, ai que grava o
timezone errado (-02.)



2009/6/19 JotaComm jota.c...@gmail.com mailto:jota.c...@gmail.com

Olá,

Você instalou de forma compilada? Qual só você está usando?
Debian? Ubuntu?

Você terá que recompilar o PostgreSQL com a opção
--with-system-tzdata no ./configure. Este parâmetro do
configure você indica o arquivo de timezone do PostgreSQL. Uma
saída é você executar o comando: zdump -v America/Sao_Paulo,
capturar esta saída e jogar no diretório de timezone do
PostgreSQL e assim efetuar a compilação com o parâmetro
mencionado acima.




2009/6/19 jorge sanfelice jorgesanfel...@gmail.com
mailto:jorgesanfel...@gmail.com

Pessoal,
Estou usando a versao 8.4 para testar, etc ... ja em um
projeto, só que estou com problemas no timezone e nao
estou conseguindo identificar o que eu poderia fazer para
arrumar.

O server linux esta com o timezone OK.

se eu faço um select traz a informacao correta, ex:

SELECT now();
  now
---
 2009-06-19 12:53:37.450217-03

Mas quando faço um update ou insert grava o timezone errado:

UPDATE cliente_sincroniza SET csclidt_cadastro='2002-11-04
08:32:30-03' WHERE csclioid='7283' ;
UPDATE 1

select csclidt_cadastro from cliente_sincroniza WHERE
csclioid='7283';
csclidt_cadastro

 2002-11-04 09:32:30-02


Aguem poderia me ajudar a solucionar esse problema.

Obrigado

___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
mailto:pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral



[]s
-- 
JotaComm

http://jotacomm.wordpress.com
http://www.dextra.com.br/postgres

___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
mailto:pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




--
This message has been scanned for viruses and
dangerous content by *MailScanner* http://www.mailscanner.info/, and is
believed to be clean.


___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
  



--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.

begin:vcard
fn:Benedito A  Cruz
n:Cruz;Benedito A 
email;internet:b...@cria.org.br
title:Prof.
tel;work:+55 19 3288 0466
tel;home:+55 19 3406 5775
tel;cell:+55 19 8122 6110
x-mozilla-html:TRUE
version:2.1
end:vcard

___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


[pgbr-geral] [OT] Dúvida sobre modelagem de dados de produtos com caracteristicas muito diferen tes

2009-06-19 Por tôpico Rúben Lício
Boa tarde,

Estou desenvolvendo algumas modelagens de dados para aprimorar meus
conhecimentos no assunto. Algumas das dúvidas já consegui sanar lendo
artigos publicados na internet, mas este ainda me deixa na dúvida.
O caso é uma pizzaria. Tem produtos normais como bebidas, onde o produto é
vendido e cobrado de acordo com seu preço.

Um exemplo de modelagem simplificado para isso é:

Tabela de produtos
- id produto
- nome do produto
- preço
Tabela de compra
- id compra
- id cliente
- valor total
Tabela de produtos de uma compra
- id compra
- id produto
- quantidade
- valor unitario

Sendo assim eu tenho na tabela Tabela de produtos de uma compra um
histórico do que foi comprado em cada compra assim como os preços na hora da
compra. Até então tudo bem, mas no caso de uma pizza, temos a possibilidade
de uma pizza ser de um só sabor (produto) ou meio-a-meio, mussalera e
calabresa por exemplo.
Qual é a forma mais eficaz de armazenar isso no banco de dados?
Eu tenho duas ideias na cabeça.
1- Inserir cada pizza como um produto e permitir que vários produtos se unam
para formar um item de uma compra
2- Fazer tabelas completamente separadas para isso, mantendo o diagrama
principal para os produtos normais e adicionando uma tabela separada para
pizzas que permite misturas diversas para formar um produto.

Exemplo da idéia 1:

Tabela de produtos
- id produto
- nome do produto
- preço
Tabela de compra
- id compra
- id cliente
- valor total
Tabela de produtos de um item de uma compra
- id produto
- id item da compra
- percentual do item (esse campo diria por exemplo 50% caso fosse uma pizza
meio a meio e 100% caso fosse apenas um sabor)
Tabela de produtos de uma compra
- id item da compra
- id compra
- quantidade
- valor unitario
Exemplo da idéia 2:

Tabela de produtos
- id produto
- nome do produto
- preço
Tabela de compra
- id compra
- id cliente
- valor total
Tabela de produtos de uma compra
- id compra
- id produto
- quantidade
- valor unitario
Tabela de pizzas
- id pizza
- nome da pizza
- preço
Tabela de pizzas para um item de compra
- id pizza
- id pizza da compra
- percentual da pizza
Tabela de produtos de uma compra
- id pizza da compra
- id compra
- quantidade
- valor unitario
--

Pela experiencia de vocês, qual é a melhor solução do ponto de vista
conceitual e qual a melhor do ponto de vista teórico e porque?
Na segunda idéia de modelagem, se houver mais produtos estranhos como por
exemplo sanduíches que são cobrados por cada sabor adicionado, teríamos que
adicionar mais tabelas, esse tipo de solução é usual na prática?

Obrigado.

-- 
Rúben Lício Reis
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] RES: Segurança no postgresql

2009-06-19 Por tôpico Aluisio Gouveia
Leandro,

Peguei o assunto pela metade, mas acho que posso ajuda-lo.

As informações abaixo são baseadas em um servidor Linux RedHat e 
PostgreSQL 8.3.7 instalado através de pacotes RPM:

Considerando que vc ja leu na documentação oficial em [1]:

1)  Com o serviço postgresql parado, restaure o backup full que você fez 
utilizando P.I.T.R
!Lembrando que você não vai conseguir restarar os dados entre 00:00 
as 03:00, a não ser que vc tenha feito o backup full as 00:00
   
2) Copie o arquivo recovery.conf.sample que no meu caso esta em  
/usr/share/pgsql/recovery.conf.sample,
para o diretorio de dados do Postgresql, na instalação default fica 
em /var/lib/pgsql/data/

3) Renomei o arquivo para recovery.conf , edit  e altere as linhas a seguir:
#restore_command = 'cp /mnt/server/archivedir/%f  %p'
para
restore_command = 'cp /dir/onde/gravou/os/logs/%f  %p'

e
#recovery_target_time = '2004-07-14 22:39:00 EST'
para
recovery_target_time = '2009-06-19 03:00:00-03'

4) Por fim start o postgresql
! Se você der um tail -f no log de atividade, você consiguirá ver o 
postgresql restuarando os logs do wal.

[1] http://www.postgresql.org/docs/8.3/interactive/continuous-archiving.html

-- 
Cordialmente;

Aluisio Gouveia



Leandro Muller escreveu:

 Artigo muito bom.

  

 Compreendi o funcionamento, configuração de logs e etc.

 Porem agora não consigo encontrar como restaurar os logs.

 Exemplo, retornei o backup da meia noite e quero retornar o log da 
 00:00 ate as 03:00 momento da falha.

 Qual comando utilizar?

  

 Abraços.

  

 At.

  

 Leandro Müller

  



___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


[pgbr-geral] RES: RES: Segurança no postgre sql

2009-06-19 Por tôpico Leandro Muller
Ola Aluisio.

Era isso mesmo que precisava.

Porem pensei que tinha conseguido configurar os logs para salvar em
/hd2/log, mas não salva logs de modificação do banco, parece que salva
somente logs de erros.

Também percebi que na pasta ../data/pg_log salva vários logs, mas esses
parecem ser logs de erros também.

Onde estão os logs de modificação do banco?
Quero salvar eles em outro HD.

Abraços

At

Leandro Müller
Postgresql 8.3

-Mensagem original-
De: pgbr-geral-boun...@listas.postgresql.org.br
[mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de Aluisio
Gouveia
Enviada em: sexta-feira, 19 de junho de 2009 15:13
Para: Comunidade PostgreSQL Brasileira
Assunto: Re: [pgbr-geral] RES: Segurança no postgresql

Leandro,

Peguei o assunto pela metade, mas acho que posso ajuda-lo.

As informações abaixo são baseadas em um servidor Linux RedHat e 
PostgreSQL 8.3.7 instalado através de pacotes RPM:

Considerando que vc ja leu na documentação oficial em [1]:

1)  Com o serviço postgresql parado, restaure o backup full que você fez 
utilizando P.I.T.R
!Lembrando que você não vai conseguir restarar os dados entre 00:00 
as 03:00, a não ser que vc tenha feito o backup full as 00:00
   
2) Copie o arquivo recovery.conf.sample que no meu caso esta em  
/usr/share/pgsql/recovery.conf.sample,
para o diretorio de dados do Postgresql, na instalação default fica 
em /var/lib/pgsql/data/

3) Renomei o arquivo para recovery.conf , edit  e altere as linhas a seguir:
#restore_command = 'cp /mnt/server/archivedir/%f  %p'
para
restore_command = 'cp /dir/onde/gravou/os/logs/%f  %p'

e
#recovery_target_time = '2004-07-14 22:39:00 EST'
para
recovery_target_time = '2009-06-19 03:00:00-03'

4) Por fim start o postgresql
! Se você der um tail -f no log de atividade, você consiguirá ver o 
postgresql restuarando os logs do wal.

[1] http://www.postgresql.org/docs/8.3/interactive/continuous-archiving.html

-- 
Cordialmente;

Aluisio Gouveia



Leandro Muller escreveu:

 Artigo muito bom.

  

 Compreendi o funcionamento, configuração de logs e etc.

 Porem agora não consigo encontrar como restaurar os logs.

 Exemplo, retornei o backup da meia noite e quero retornar o log da 
 00:00 ate as 03:00 momento da falha.

 Qual comando utilizar?

  

 Abraços.

  

 At.

  

 Leandro Müller

  



___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] RES: RES: Segurança no postgre sql

2009-06-19 Por tôpico Aluisio Gouveia
Leandro,

Os logs do  /write ahead log/ (WAL), que são os log´s de transação, 
geralmente ficam no diretorio ../pg_xlog os logs do ../pg_log sao log´s 
de atividade do banco de dados.

Usando P.I.T.R você faz uma cópia dos arquivos ../pg_xlog para um outro 
diretorio e/ou partição e/ou disco qualquer, isto é definino o arquivo 
de configuração
do postgresql, postgresql.conf:

# - Archiving -

archive_mode = on   # allows archiving to be done

# 
(change requires restart)
archive_command = 'cp -i %p /emsysnet/backupdb/w_logs/%f'   # 
command to use to archive a logfile segment
archive_timeout = 20min # force 
a logfile segment switch after this
# time; 
0 is off

No meu caso, /emsysnet esta montado em /dev/sdb, ou seja, outro disco.

-- 
Cordialmente;

Aluisio Gouveia



Leandro Muller escreveu:
 Ola Aluisio.

 Era isso mesmo que precisava.

 Porem pensei que tinha conseguido configurar os logs para salvar em
 /hd2/log, mas não salva logs de modificação do banco, parece que salva
 somente logs de erros.

 Também percebi que na pasta ../data/pg_log salva vários logs, mas esses
 parecem ser logs de erros também.

 Onde estão os logs de modificação do banco?
 Quero salvar eles em outro HD.

 Abraços

 At

 Leandro Müller
 Postgresql 8.3

 -Mensagem original-
 De: pgbr-geral-boun...@listas.postgresql.org.br
 [mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de Aluisio
 Gouveia
 Enviada em: sexta-feira, 19 de junho de 2009 15:13
 Para: Comunidade PostgreSQL Brasileira
 Assunto: Re: [pgbr-geral] RES: Segurança no postgresql

 Leandro,

 Peguei o assunto pela metade, mas acho que posso ajuda-lo.

 As informações abaixo são baseadas em um servidor Linux RedHat e 
 PostgreSQL 8.3.7 instalado através de pacotes RPM:

 Considerando que vc ja leu na documentação oficial em [1]:

 1)  Com o serviço postgresql parado, restaure o backup full que você fez 
 utilizando P.I.T.R
 !Lembrando que você não vai conseguir restarar os dados entre 00:00 
 as 03:00, a não ser que vc tenha feito o backup full as 00:00

 2) Copie o arquivo recovery.conf.sample que no meu caso esta em  
 /usr/share/pgsql/recovery.conf.sample,
 para o diretorio de dados do Postgresql, na instalação default fica 
 em /var/lib/pgsql/data/

 3) Renomei o arquivo para recovery.conf , edit  e altere as linhas a seguir:
 #restore_command = 'cp /mnt/server/archivedir/%f  %p'
 para
 restore_command = 'cp /dir/onde/gravou/os/logs/%f  %p'

 e
 #recovery_target_time = '2004-07-14 22:39:00 EST'
 para
 recovery_target_time = '2009-06-19 03:00:00-03'

 4) Por fim start o postgresql
 ! Se você der um tail -f no log de atividade, você consiguirá ver o 
 postgresql restuarando os logs do wal.

 [1] http://www.postgresql.org/docs/8.3/interactive/continuous-archiving.html

   


___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] duvida timezone 8.4

2009-06-19 Por tôpico jorge sanfelice
É. até gostei que ele faz o esquema correto. O problema é que como antes nao
fazia, agora isso da problema.

Na hora de sincroniza os dados ele sempre vai fazer update, pois os time
zones dos dois bancos nunca serao iguais. (Eu pego informacao de um 8.2 e
gravo em um 8.4, eu queria fazer uma sincronizacao apenas de dados
necessarios)



2009/6/19 Benedito A. Cruz b...@cria.org.br

 Está correto, ele está levando em conta o horário de verão.


 jorge sanfelice wrote:

 Identifiquei que o postgresql esta gravando no banco qual sera o timezone
 da data cadastrada conforme for o mes. Ex:

 se eu gravo um dado com a data no mes 06, ele coloca o time zone -03
 se eu gravo um dado com a data no mes 12, ele coloca o time zone -02

  2009-06-27 00:04:30-03
  2009-12-27 00:04:30-02

 Ficou algo altomatico, mais eu nao queria que fosse assim.

 Alguem sabe o que pode ser?

 Obrigado.

 2009/6/19 jorge sanfelice jorgesanfel...@gmail.com mailto:
 jorgesanfel...@gmail.com

Entao, eu instalei um rpm.
Aqui o linux é Mandriva.

Outra coisa entranha é. quando faço insert, o sistema grava o
timezone correto (-03), quando altera a data, ai que grava o
timezone errado (-02.)



2009/6/19 JotaComm jota.c...@gmail.com mailto:jota.c...@gmail.com

Olá,

Você instalou de forma compilada? Qual só você está usando?
Debian? Ubuntu?

Você terá que recompilar o PostgreSQL com a opção
--with-system-tzdata no ./configure. Este parâmetro do
configure você indica o arquivo de timezone do PostgreSQL. Uma
saída é você executar o comando: zdump -v America/Sao_Paulo,
capturar esta saída e jogar no diretório de timezone do
PostgreSQL e assim efetuar a compilação com o parâmetro
mencionado acima.




2009/6/19 jorge sanfelice jorgesanfel...@gmail.com
mailto:jorgesanfel...@gmail.com

Pessoal,
Estou usando a versao 8.4 para testar, etc ... ja em um
projeto, só que estou com problemas no timezone e nao
estou conseguindo identificar o que eu poderia fazer para
arrumar.

O server linux esta com o timezone OK.

se eu faço um select traz a informacao correta, ex:

SELECT now();
  now
---
 2009-06-19 12:53:37.450217-03

Mas quando faço um update ou insert grava o timezone errado:

UPDATE cliente_sincroniza SET csclidt_cadastro='2002-11-04
08:32:30-03' WHERE csclioid='7283' ;
UPDATE 1

select csclidt_cadastro from cliente_sincroniza WHERE
csclioid='7283';
csclidt_cadastro

 2002-11-04 09:32:30-02


Aguem poderia me ajudar a solucionar esse problema.

Obrigado

___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
mailto:pgbr-geral@listas.postgresql.org.br

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



[]s
--JotaComm
http://jotacomm.wordpress.com
http://www.dextra.com.br/postgres

___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
mailto:pgbr-geral@listas.postgresql.org.br

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




 --
 This message has been scanned for viruses and
 dangerous content by *MailScanner* http://www.mailscanner.info/, and is
 believed to be clean.
 

 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




 --
 This message has been scanned for viruses and
 dangerous content by MailScanner, and is
 believed to be clean.


 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


[pgbr-geral] RES: RES: RES: Segurança no postgresql

2009-06-19 Por tôpico Leandro Muller
Aluisio Gouveia

Outro caminho também seria mapear a pasta pg_xlog direto para o HD2;

O que acha?


At.

Leandro Müller



-Mensagem original-
De: pgbr-geral-boun...@listas.postgresql.org.br
[mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de Aluisio
Gouveia
Enviada em: sexta-feira, 19 de junho de 2009 16:11
Para: Comunidade PostgreSQL Brasileira
Assunto: Re: [pgbr-geral] RES: RES: Segurança no postgresql

Leandro,

Os logs do  /write ahead log/ (WAL), que são os log´s de transação, 
geralmente ficam no diretorio ../pg_xlog os logs do ../pg_log sao log´s 
de atividade do banco de dados.

Usando P.I.T.R você faz uma cópia dos arquivos ../pg_xlog para um outro 
diretorio e/ou partição e/ou disco qualquer, isto é definino o arquivo 
de configuração
do postgresql, postgresql.conf:

# - Archiving -

archive_mode = on   # allows archiving to be done

# 
(change requires restart)
archive_command = 'cp -i %p /emsysnet/backupdb/w_logs/%f'   # 
command to use to archive a logfile segment
archive_timeout = 20min # force 
a logfile segment switch after this
# time; 
0 is off

No meu caso, /emsysnet esta montado em /dev/sdb, ou seja, outro disco.

-- 
Cordialmente;

Aluisio Gouveia



Leandro Muller escreveu:
 Ola Aluisio.

 Era isso mesmo que precisava.

 Porem pensei que tinha conseguido configurar os logs para salvar em
 /hd2/log, mas não salva logs de modificação do banco, parece que salva
 somente logs de erros.

 Também percebi que na pasta ../data/pg_log salva vários logs, mas esses
 parecem ser logs de erros também.

 Onde estão os logs de modificação do banco?
 Quero salvar eles em outro HD.

 Abraços

 At

 Leandro Müller
 Postgresql 8.3

 -Mensagem original-
 De: pgbr-geral-boun...@listas.postgresql.org.br
 [mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de Aluisio
 Gouveia
 Enviada em: sexta-feira, 19 de junho de 2009 15:13
 Para: Comunidade PostgreSQL Brasileira
 Assunto: Re: [pgbr-geral] RES: Segurança no postgresql

 Leandro,

 Peguei o assunto pela metade, mas acho que posso ajuda-lo.

 As informações abaixo são baseadas em um servidor Linux RedHat e 
 PostgreSQL 8.3.7 instalado através de pacotes RPM:

 Considerando que vc ja leu na documentação oficial em [1]:

 1)  Com o serviço postgresql parado, restaure o backup full que você fez 
 utilizando P.I.T.R
 !Lembrando que você não vai conseguir restarar os dados entre 00:00 
 as 03:00, a não ser que vc tenha feito o backup full as 00:00

 2) Copie o arquivo recovery.conf.sample que no meu caso esta em  
 /usr/share/pgsql/recovery.conf.sample,
 para o diretorio de dados do Postgresql, na instalação default fica 
 em /var/lib/pgsql/data/

 3) Renomei o arquivo para recovery.conf , edit  e altere as linhas a
seguir:
 #restore_command = 'cp /mnt/server/archivedir/%f  %p'
 para
 restore_command = 'cp /dir/onde/gravou/os/logs/%f  %p'

 e
 #recovery_target_time = '2004-07-14 22:39:00 EST'
 para
 recovery_target_time = '2009-06-19 03:00:00-03'

 4) Por fim start o postgresql
 ! Se você der um tail -f no log de atividade, você consiguirá ver o 
 postgresql restuarando os logs do wal.

 [1]
http://www.postgresql.org/docs/8.3/interactive/continuous-archiving.html

   


___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


[pgbr-geral] Ajude a divulgar o PGCon Brasil 2009

2009-06-19 Por tôpico Fábio Telles Rodriguez
Senhores, saíram os banners para divulgar o PGCon Brasil 2009 em:
http://pgcon.postgresql.org.br/2009/divulgue.php

Se você tem um blog ou site, essa é a hora!

E não esqueçam, a chamada de trabalhos se encerra no final deste mês.

Atenciosamente,
-- 
blog: http://www.midstorm.org/~telles/
e-mail / jabber: fabio.tel...@gmail.com
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] RES: RES: RES: Segurança no postgresql

2009-06-19 Por tôpico Aluisio Gouveia
Leandro,

Você até pode fazer isso para fins de performance e etc, mas nao para 
substituir o arquivamento, o arquivamento garante que você tenha todos 
os arquivos de log de transação, ja os arquivos em ../pg_xlog sao 
rotacionados de acordo com a configuração em postgresql.conf:


# - Checkpoints -

checkpoint_segments = 128   # in logfile segments, min 1, 
16MB each
checkpoint_timeout = 30min  # range 30s-1h
checkpoint_completion_target = 0.7  # checkpoint target duration, 
0.0 - 1.0
checkpoint_warning = 1min   # 0 is off


-- 
Cordialmente;

Aluisio Gouveia




Leandro Muller escreveu:
 Aluisio Gouveia

 Outro caminho também seria mapear a pasta pg_xlog direto para o HD2;

 O que acha?


 At.

 Leandro Müller



 -Mensagem original-
 De: pgbr-geral-boun...@listas.postgresql.org.br
 [mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de Aluisio
 Gouveia
 Enviada em: sexta-feira, 19 de junho de 2009 16:11
 Para: Comunidade PostgreSQL Brasileira
 Assunto: Re: [pgbr-geral] RES: RES: Segurança no postgresql

 Leandro,

 Os logs do  /write ahead log/ (WAL), que são os log´s de transação, 
 geralmente ficam no diretorio ../pg_xlog os logs do ../pg_log sao log´s 
 de atividade do banco de dados.

 Usando P.I.T.R você faz uma cópia dos arquivos ../pg_xlog para um outro 
 diretorio e/ou partição e/ou disco qualquer, isto é definino o arquivo 
 de configuração
 do postgresql, postgresql.conf:

 # - Archiving -

 archive_mode = on   # allows archiving to be done

 # 
 (change requires restart)
 archive_command = 'cp -i %p /emsysnet/backupdb/w_logs/%f'   # 
 command to use to archive a logfile segment
 archive_timeout = 20min # force 
 a logfile segment switch after this
 # time; 
 0 is off

 No meu caso, /emsysnet esta montado em /dev/sdb, ou seja, outro disco.

   


___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] RES: RES: RES: Segurança no postgresql

2009-06-19 Por tôpico Aluisio Gouveia
Na verdade os arquivos não sao rotacionados, eles são reciclados.

Aluisio Gouveia escreveu:
 Leandro,

 Você até pode fazer isso para fins de performance e etc, mas nao para 
 substituir o arquivamento, o arquivamento garante que você tenha todos 
 os arquivos de log de transação, ja os arquivos em ../pg_xlog sao 
 rotacionados de acordo com a configuração em postgresql.conf:


 # - Checkpoints -

 checkpoint_segments = 128   # in logfile segments, min 1, 
 16MB each
 checkpoint_timeout = 30min  # range 30s-1h
 checkpoint_completion_target = 0.7  # checkpoint target duration, 
 0.0 - 1.0
 checkpoint_warning = 1min   # 0 is off


   


-- 
Cordialmente;

Aluisio Gouveia

___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


[pgbr-geral] RES: RES: RES: RES: Segura nça no postgresql

2009-06-19 Por tôpico Leandro Muller
Ola Aluisio Gouveia.

Então eu tenho um prazo para utilizar esses logs?
Digamos tenho 24h para restaurar a falha?

Um exemplo:
Digamos que haja uma tabela corrompida e alguém perceba daqui uma semana.
Falo isso pois ocorreu em uma base de Mysql isso, uma tabela corrompeu dados
de uma pagina e recuperei todo o banco de uma semana através dos logs.

Espero que eu não esteja sendo chato, mas preciso montar um serviço seguro
com o hardware que possuímos.

Abraços.

At.
Leandro Müller



-Mensagem original-
De: pgbr-geral-boun...@listas.postgresql.org.br
[mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de Aluisio
Gouveia
Enviada em: sexta-feira, 19 de junho de 2009 17:02
Para: Comunidade PostgreSQL Brasileira
Assunto: Re: [pgbr-geral] RES: RES: RES: Segurança no postgresql

Na verdade os arquivos não sao rotacionados, eles são reciclados.

Aluisio Gouveia escreveu:
 Leandro,

 Você até pode fazer isso para fins de performance e etc, mas nao para 
 substituir o arquivamento, o arquivamento garante que você tenha todos 
 os arquivos de log de transação, ja os arquivos em ../pg_xlog sao 
 rotacionados de acordo com a configuração em postgresql.conf:


 # - Checkpoints -

 checkpoint_segments = 128   # in logfile segments, min 1, 
 16MB each
 checkpoint_timeout = 30min  # range 30s-1h
 checkpoint_completion_target = 0.7  # checkpoint target duration, 
 0.0 - 1.0
 checkpoint_warning = 1min   # 0 is off


   


-- 
Cordialmente;

Aluisio Gouveia

___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] TSearch palavar Inicial

2009-06-19 Por tôpico Euler Taveira de Oliveira
mateusgra escreveu:
 Criei Indices parciais, aumentei o _sharedbuffers_ e mesmo assim o desempenho
 não ficou bom.
 
O problema é que ele gasta muito tempo lendo páginas do índice para memória;
e, como você *não* tem um _shared buffer_ suficiente para armazenar essas
páginas, há muitas trocas. Essa tabela sofre muitas atualizações durante o
dia? O autovacuum está habilitado?
Você poderia tentar executar o comando CLUSTER pelo índice bari (e verificar
se o tempo gasto no IndexScan diminui).
Além disso, você poderia mostrar as estatísticas da tabela bar utilizando:

euler=# \x
Exibição expandida está habilitada.
euler=# select * from pg_stats where schemaname = 'public' and tablename = 
'bar';
-[ RECORD 1 ]-+-
schemaname| public
tablename | bar
attname   | a
null_frac | 0
avg_width | 13
n_distinct| 2
most_common_vals  | {jorge vilela,euler taveira de oliveira}
most_common_freqs | {0.998004,0.00199601}
histogram_bounds  |
correlation   | 1


-- 
  Euler Taveira de Oliveira
  http://www.timbira.com/
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral