[pgbr-geral] pg_resetxlog
Srs, vejam este cenário e, por favor, me digam se tem uma outra solução além da que foi aplicada: - postgresql 8.2 - windows server - banco sem archive - dump feito as 12h - as 14h ao iniciar um autovacuum ocorreu um erro e o banco caiu - servidor foi religado e o banco voltou - ao tentar conectar o usuário recebia mensagem que o banco estava startando (nos logs mostrava que estava fazendo o processo de recovery) - usuário reset server bruscamente - ao reiniciar o server o postgresql não inicializa - vendo os logs identificamos que arquivos xlog haviam sido corrompidos - foi tentado um pg_resetxlog sem passar parâmetros (o comando não conseguiu executar e informou que uma alternativa seria o -f) - antes de executar o pg_resetxlog com -f este foi executado com -n e salvo o resultado em um .txt (dados do arquivo de controle) - então foi executado com o -f - o postgresql inicializou e o banco voltou... - porém os dados estavam mais antigos do que os do .dump das 12h Havia uma outra forma de recuperação sem perda de dados (ou com menos perda)? abraços Fábio Henrique Gibon___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] pg_resetxlog
QUando aconteceu um caso parecido com isso, me indicaram para remover um arquivo pid e então tudo voltou ao normal. Não lembro agora exatamente o nome dele. Acho que era postgresql.pid []´s Em 6 de janeiro de 2011 09:10, Fábio Gibon - Comex System gi...@comexsystem.com.br escreveu: Srs, vejam este cenário e, por favor, me digam se tem uma outra solução além da que foi aplicada: - postgresql 8.2 - windows server - banco sem archive - dump feito as 12h - as 14h ao iniciar um autovacuum ocorreu um erro e o banco caiu - servidor foi religado e o banco voltou - ao tentar conectar o usuário recebia mensagem que o banco estava startando (nos logs mostrava que estava fazendo o processo de recovery) - usuário reset server bruscamente - ao reiniciar o server o postgresql não inicializa - vendo os logs identificamos que arquivos xlog haviam sido corrompidos - foi tentado um pg_resetxlog sem passar parâmetros (o comando não conseguiu executar e informou que uma alternativa seria o -f) - antes de executar o pg_resetxlog com -f este foi executado com -n e salvo o resultado em um .txt (dados do arquivo de controle) - então foi executado com o -f - o postgresql inicializou e o banco voltou... - porém os dados estavam mais antigos do que os do .dump das 12h Havia uma outra forma de recuperação sem perda de dados (ou com menos perda)? abraços Fábio Henrique Gibon ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral -- José de Mello Júnior 41.9957-2007 ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
[pgbr-geral] Res: Digest pgbr-geral, volume 25, assunto 6
-- Um anexo em HTML foi limpo... URL: http://listas.postgresql.org.br/pipermail/pgbr-geral/attachments/20110105/a6882427/attachment.html -- Message: 6 Date: Wed, 05 Jan 2011 20:07:20 -0200 From: Filipe Rosset rosset.fil...@gmail.com Subject: Re: [pgbr-geral] usuario postgresql - could not change directory to/root To: pgbr-geral@listas.postgresql.org.br Message-ID: 4d24eb98.4090...@gmail.com Content-Type: text/plain; charset=ISO-8859-1 On 01/05/2011 08:01 PM, Saulo Almeida wrote: PessoAR, Sempre que é executado o comando [ *sudo -u postgres* ] é exibido a mensagem abaixo. * * *could not change directory to /root* Alguem poderia me dar um help ? Veja no seu /etc/passwd você deve ter uma linha mais ou menos assim: postgres:x:29:29:PostgreSQL Server:/var/lib/pgsql:/bin/bash No meu caso está em /var/lib/pgsql a home do usuário postgres, talvez no seu caso está apontando para /root? -- Filipe Rio Grande do Sul, Brazil -- Message: 7 Date: Thu, 6 Jan 2011 08:10:55 -0300 From: Fábio Gibon - Comex System gi...@comexsystem.com.br Subject: [pgbr-geral] pg_resetxlog To: PostgreSQL - BR List pgbr-geral@listas.postgresql.org.br Message-ID: 04df01cbad92$67d25860$73020...@gibon Content-Type: text/plain; charset=windows-1252 Srs, vejam este cenário e, por favor, me digam se tem uma outra solução além da que foi aplicada: - postgresql 8.2 - windows server - banco sem archive - dump feito as 12h - as 14h ao iniciar um autovacuum ocorreu um erro e o banco caiu - servidor foi religado e o banco voltou - ao tentar conectar o usuário recebia mensagem que o banco estava startando (nos logs mostrava que estava fazendo o processo de recovery) - usuário reset server bruscamente - ao reiniciar o server o postgresql não inicializa - vendo os logs identificamos que arquivos xlog haviam sido corrompidos - foi tentado um pg_resetxlog sem passar parâmetros (o comando não conseguiu executar e informou que uma alternativa seria o -f) - antes de executar o pg_resetxlog com -f este foi executado com -n e salvo o resultado em um .txt (dados do arquivo de controle) - então foi executado com o -f - o postgresql inicializou e o banco voltou... - porém os dados estavam mais antigos do que os do .dump das 12h Havia uma outra forma de recuperação sem perda de dados (ou com menos perda)? abraços Fábio Henrique Gibon -- Próxima Parte -- Um anexo em HTML foi limpo... URL: http://listas.postgresql.org.br/pipermail/pgbr-geral/attachments/20110106/e7403f29/attachment-0001.htm -- Message: 8 Date: Thu, 6 Jan 2011 10:07:06 -0200 From: José Mello Júnior jose.mello.jun...@gmail.com Subject: Re: [pgbr-geral] pg_resetxlog To: Fábio Gibon - Comex System gi...@comexsystem.com.br,Comunidade PostgreSQL Brasileira pgbr-geral@listas.postgresql.org.br Message-ID: aanlktikbe0q8qvdbhth-klvcz52nasm99nk7d4ejr...@mail.gmail.com Content-Type: text/plain; charset=iso-8859-1 QUando aconteceu um caso parecido com isso, me indicaram para remover um arquivo pid e então tudo voltou ao normal. Não lembro agora exatamente o nome dele. Acho que era postgresql.pid []´s Em 6 de janeiro de 2011 09:10, Fábio Gibon - Comex System gi...@comexsystem.com.br escreveu: Srs, vejam este cenário e, por favor, me digam se tem uma outra solução além da que foi aplicada: - postgresql 8.2 - windows server - banco sem archive - dump feito as 12h - as 14h ao iniciar um autovacuum ocorreu um erro e o banco caiu - servidor foi religado e o banco voltou - ao tentar conectar o usuário recebia mensagem que o banco estava startando (nos logs mostrava que estava fazendo o processo de recovery) - usuário reset server bruscamente - ao reiniciar o server o postgresql não inicializa - vendo os logs identificamos que arquivos xlog haviam sido corrompidos - foi tentado um pg_resetxlog sem passar parâmetros (o comando não conseguiu executar e informou que uma alternativa seria o -f) - antes de executar o pg_resetxlog com -f este foi executado com -n e salvo o resultado em um .txt (dados do arquivo de controle) - então foi executado com o -f - o postgresql inicializou e o banco voltou... - porém os dados estavam mais antigos do que os do .dump das 12h Havia uma outra forma de recuperação sem perda de dados (ou com menos perda)? abraços Fábio Henrique Gibon ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral -- José de Mello Júnior 41.9957-2007 -- Próxima Parte -- Um anexo em HTML foi limpo... URL: http://listas.postgresql.org.br/pipermail/pgbr-geral/attachments/20110106/06911928/attachment-0001.htm -- ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https
Re: [pgbr-geral] Res: Digest pgbr-geral, volume 25, assunto 6
Filipe, No arquivo /etc/passwd está assim: postgres:x:26:26:PostgreSQL Server:/var/lib/pgsql:/bin/bash O que devo fazer? abse obrigado Si vc nao esta como root mesmo, tente asi sudo su postgres ahi va pedir a senha do usuario currente, mas ese usuario deve ser do sudouser Gustavo Garay ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] usuario postgresql - could not change directory to /root
On 01/05/2011 08:01 PM, Saulo Almeida wrote: PessoAR, Sempre que é executado o comando [ *sudo -u postgres* ] é exibido a mensagem abaixo. * * *could not change directory to /root* Alguem poderia me dar um help ? abs Vou responder aqui porque responder no digest fica ruim demais para ler, para o histórico da lista, etc. Se você está logado como root, um su - postgres deve resolver (irá abrir um bash no /var/lib/pgsql com o usuário postgres) Agora se você está logado com o seu usuário normal, pode tentar sudo su - postgres (se você estiver sudo habilitado para seu usuário). -- Filipe Rio Grande do Sul, Brazil ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] usuario postgresql - could not change directory to /root
2011/1/6 Filipe Rosset rosset.fil...@gmail.com: Vou responder aqui porque responder no digest fica ruim demais para ler, para o histórico da lista, etc. Sábia decisão. -Leo -- Leonardo Cezar http://postgreslogia.wordpress.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
[pgbr-geral] Contando palavras no texto
Por favor, alguém sabe como contar o número de ocorrências de uma palavra em um campo de texto no PostgreSQL? Eu estava tentando com regexp_matches mas não resolveu. Elton Moura ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Contando palavras no texto
2011/1/6 Elton Moura elton...@gmail.com: Por favor, alguém sabe como contar o número de ocorrências de uma palavra em um campo de texto no PostgreSQL? Eu estava tentando com regexp_matches mas não resolveu. SELECT COUNT(1) AS ocor FROM regexp_matches('eu vi uma barata na careca do vovo assim que a barata me viu bateu asas e voou', 'barata', 'g'); ocor --- 2 (1 row) Esta solução está tão deselegante que estou torcendo pra alguém aparecer com algo simples e funcional para resolver este problema. Dependendo do que vc está fazendo, provavelmente seria melhor vc olhar para as funções de FTS[1] 1) http://www.postgresql.org/docs/9.0/interactive/functions-textsearch.html Abraço! -Leo -- Leonardo Cezar http://postgreslogia.wordpress.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] Contando palavras no texto
Se tiver outra, beleza mas essa já resolve meu problema, valeu. Em 6 de janeiro de 2011 14:57, Leonardo Cezar lhce...@gmail.com escreveu: 2011/1/6 Elton Moura elton...@gmail.com: Por favor, alguém sabe como contar o número de ocorrências de uma palavra em um campo de texto no PostgreSQL? Eu estava tentando com regexp_matches mas não resolveu. SELECT COUNT(1) AS ocor FROM regexp_matches('eu vi uma barata na careca do vovo assim que a barata me viu bateu asas e voou', 'barata', 'g'); ocor --- 2 (1 row) Esta solução está tão deselegante que estou torcendo pra alguém aparecer com algo simples e funcional para resolver este problema. Dependendo do que vc está fazendo, provavelmente seria melhor vc olhar para as funções de FTS[1] 1) http://www.postgresql.org/docs/9.0/interactive/functions-textsearch.html Abraço! -Leo -- Leonardo Cezar http://postgreslogia.wordpress.com ___ 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] Permissão por linhas
Olá pessoal, uso a permissão por colunas do PG. Mas é possível incluir permissão de acordo com um determinado valor de registro desta coluna? At.te, Alisson Viegas ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Permissão por linhas
2011/1/6 Alisson Viegas li...@acsiv.com.br: Olá pessoal, uso a permissão por colunas do PG. Mas é possível incluir permissão de acordo com um determinado valor de registro desta coluna? Não. Utilize visões (aka views), ao invés. -Leo -- Leonardo Cezar http://postgreslogia.wordpress.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] Permissão por linhas
Você tem 2 formas de fazer isso: 1) Criar uma função ou view onde o nome do usuário conectado faça referência a uma coluna da tabela, algo como: SELECT a, b, c FROM foo WHERE usuario = current_user; ou pode pegar uma role que o usuário possua e verificar isso na consulta: SELECT a, b, c FROM foo WHERE grupo = pg_has_role('chefe','member'); veja detalhes em: http://www.postgresql.org/docs/9.0/static/functions-info.html 2) A outra forma é um pouco mais complexa, mas também é mais robusta, envolve utlizar o SEPostgreSQL que também algo um tanto complexo e só recomendado para um nível de paranóia muito grande e uma equipe disposta a investir pesado em segurança; vide: http://wiki.postgresql.org/wiki/SEPostgreSQL Acho que é isso. Em 6 de janeiro de 2011 15:53, Alisson Viegas li...@acsiv.com.br escreveu: Olá pessoal, uso a permissão por colunas do PG. Mas é possível incluir permissão de acordo com um determinado valor de registro desta coluna? At.te, Alisson Viegas ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral -- 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
[pgbr-geral] Coluna DataType Timestamp : Comparativo equivocado ou abordagem equivocada?
Boa tarde pessoal! Hoje ao fazer uma verificação numa tabela, resolvi comparar duas colunas (timestamp), e presenciei o seguinte a) Select * from tabela where coluna1 coluna2 Saida : 243 05/04/2010 08:51:19 05/04/2010 08:51:18 247 05/04/2010 09:06:52 05/04/2010 09:06:52 253 05/04/2010 10:24:33 05/04/2010 10:24:33 254 05/04/2010 11:06:49 05/04/2010 11:06:48 255 05/04/2010 11:07:20 05/04/2010 11:07:20 257 05/04/2010 12:13:03 05/04/2010 12:13:03 258 06/04/2010 07:29:19 06/04/2010 07:29:18 259 06/04/2010 07:33:45 06/04/2010 07:33:44 260 06/04/2010 07:36:39 06/04/2010 07:36:38 261 06/04/2010 07:37:34 06/04/2010 07:37:33 262 06/04/2010 08:45:33 06/04/2010 08:45:32 263 06/04/2010 08:46:26 06/04/2010 08:46:26 264 06/04/2010 08:46:39 06/04/2010 08:46:39 Será minha abordagem na comparação deste datatype equivocada ou tem algo errado? Cenário : PostgreSQL 8.3.12 on x86_64-pc-linux-gnu, compiled by GCC gcc-4.3.real (Ubuntu 4.3.3-5ubuntu4) 4.3.3 Obrigado Rubens José Rodrigues ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
[pgbr-geral] Res: Digest pgbr-geral, volume 25, assunto 8
: Por favor, alguém sabe como contar o número de ocorrências de uma palavra em um campo de texto no PostgreSQL? Eu estava tentando com regexp_matches mas não resolveu. SELECT COUNT(1) AS ocor FROM regexp_matches('eu vi uma barata na careca do vovo assim que a barata me viu bateu asas e voou', 'barata', 'g'); ocor --- 2 (1 row) Esta solução está tão deselegante que estou torcendo pra alguém aparecer com algo simples e funcional para resolver este problema. Dependendo do que vc está fazendo, provavelmente seria melhor vc olhar para as funções de FTS[1] 1) http://www.postgresql.org/docs/9.0/interactive/functions-textsearch.html Abraço! -Leo -- Leonardo Cezar http://postgreslogia.wordpress.com -- Message: 6 Date: Thu, 6 Jan 2011 15:01:45 -0200 From: Elton Moura elton...@gmail.com Subject: Re: [pgbr-geral] Contando palavras no texto To: Comunidade PostgreSQL Brasileira pgbr-geral@listas.postgresql.org.br Message-ID: aanlkti=v2bgeuwge2q73sburrskicxzpagvddy0wl...@mail.gmail.com Content-Type: text/plain; charset=ISO-8859-1 Se tiver outra, beleza mas essa já resolve meu problema, valeu. Em 6 de janeiro de 2011 14:57, Leonardo Cezar lhce...@gmail.com escreveu: 2011/1/6 Elton Moura elton...@gmail.com: Por favor, alguém sabe como contar o número de ocorrências de uma palavra em um campo de texto no PostgreSQL? Eu estava tentando com regexp_matches mas não resolveu. SELECT COUNT(1) AS ocor FROM regexp_matches('eu vi uma barata na careca do vovo assim que a barata me viu bateu asas e voou', 'barata', 'g'); ocor --- 2 (1 row) Esta solução está tão deselegante que estou torcendo pra alguém aparecer com algo simples e funcional para resolver este problema. Dependendo do que vc está fazendo, provavelmente seria melhor vc olhar para as funções de FTS[1] 1) http://www.postgresql.org/docs/9.0/interactive/functions-textsearch.html Abraço! -Leo -- Leonardo Cezar http://postgreslogia.wordpress.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral -- Message: 7 Date: Thu, 6 Jan 2011 15:53:59 -0200 From: Alisson Viegas li...@acsiv.com.br Subject: [pgbr-geral] Permissão por linhas To: PostgreSQL pgbr-geral@listas.postgresql.org.br Message-ID: 023b01cbadca$b42edc00$1c8c94...@acsiv.com.br Content-Type: text/plain; charset=iso-8859-1 Olá pessoal, uso a permissão por colunas do PG. Mas é possível incluir permissão de acordo com um determinado valor de registro desta coluna? At.te, Alisson Viegas -- Próxima Parte -- Um anexo em HTML foi limpo... URL: http://listas.postgresql.org.br/pipermail/pgbr-geral/attachments/20110106/40a14cc2/attachment-0001.htm -- Message: 8 Date: Thu, 6 Jan 2011 16:01:12 -0200 From: Leonardo Cezar lhce...@gmail.com Subject: Re: [pgbr-geral] Permissão por linhas To: Comunidade PostgreSQL Brasileira pgbr-geral@listas.postgresql.org.br Message-ID: aanlkti=nuay=slpiwkx5-dfjmpsxb6i_v9yft6+jp...@mail.gmail.com Content-Type: text/plain; charset=ISO-8859-1 2011/1/6 Alisson Viegas li...@acsiv.com.br: Olá pessoal, uso a permissão por colunas do PG. Mas é possível incluir permissão de acordo com um determinado valor de registro desta coluna? Não. Utilize visões (aka views), ao invés. -Leo -- Leonardo Cezar http://postgreslogia.wordpress.com -- Message: 9 Date: Thu, 6 Jan 2011 16:05:54 -0200 From: Fábio Telles Rodriguez fabio.tel...@gmail.com Subject: Re: [pgbr-geral] Permissão por linhas To: Comunidade PostgreSQL Brasileira pgbr-geral@listas.postgresql.org.br Message-ID: aanlktinjhst3su8ut96b46fzcyukqphagma-8xg40...@mail.gmail.com Content-Type: text/plain; charset=utf-8 Você tem 2 formas de fazer isso: 1) Criar uma função ou view onde o nome do usuário conectado faça referência a uma coluna da tabela, algo como: SELECT a, b, c FROM foo WHERE usuario = current_user; ou pode pegar uma role que o usuário possua e verificar isso na consulta: SELECT a, b, c FROM foo WHERE grupo = pg_has_role('chefe','member'); veja detalhes em: http://www.postgresql.org/docs/9.0/static/functions-info.html 2) A outra forma é um pouco mais complexa, mas também é mais robusta, envolve utlizar o SEPostgreSQL que também algo um tanto complexo e só recomendado para um nível de paranóia muito grande e uma equipe disposta a investir pesado em segurança; vide: http://wiki.postgresql.org/wiki/SEPostgreSQL Acho que é isso. Em 6 de janeiro de 2011 15:53, Alisson Viegas li...@acsiv.com.br escreveu: Olá pessoal, uso a permissão por colunas do PG. Mas é possível incluir permissão de acordo com um determinado valor de registro desta coluna? At.te, Alisson Viegas ___ pgbr-geral mailing list pgbr-geral
Re: [pgbr-geral] Coluna DataType Timestamp : Comparativo equivocado ou abordagem equivocada?
2011/1/6 Rubens José Rodrigues rubens.rodrig...@batistarepresentacoes.com: Boa tarde pessoal! Hoje ao fazer uma verificação numa tabela, resolvi comparar duas colunas (timestamp), e presenciei o seguinte a) Select * from tabela where coluna1 coluna2 Saida : 243 05/04/2010 08:51:19 05/04/2010 08:51:18 247 05/04/2010 09:06:52 05/04/2010 09:06:52 corte Será minha abordagem na comparação deste datatype equivocada ou tem algo errado? Talvez a precisão dos microssegudos? postgres=# SELECT '2011-01-06 16:40:04.46992-02' ' 2011-01-06 16:40:04.46992'; ?column? -- t (1 row) postgres=# SELECT '2011-01-06 16:40:04.46992-02'::timestamp(2) '2011-01-06 16:40:04.46992'::timestamp(2); ?column? -- f (1 row) -Leo -- Leonardo Cezar http://postgreslogia.wordpress.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] Coluna DataType Timestamp : Comparativo equivocado ou abordagem equivocada?
2011/1/6 TI t...@batistarepresentacoes.com: Ai é que está o caso... Supondo que sim (já suspeitava), mas no contexto geral quando fazemos a chamada via query estamos por default chamando no formato (dd/mm/ hh:mm:ss), neste caso os microsegundos não deveria ser desprezados? Não sei. Estou bastante curioso para ver uma amostragem real da coluna timestamp do seu banco e a consulta que está disparando nestes dados. Sem essas informações ficaremos especulando... -Leo -- Leonardo Cezar http://postgreslogia.wordpress.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] Permissão por linhas
Fábio e Leo, obrigado pela resposta. Acho que não é esta solução que procuro. Vejam minha situação: Temos uma tabela de cadastro único que ficam os dados comuns de clientes E fornecedores. Temos uma tabela clientes, com dados específicos e outra para fornecedores. Alguns usuários devem ter acesso somente a fornecedores, como o pessoal de compras. Então precisam de permissão a tabela fornecedores e a tabela cadastros. Porém, na tabela cadastros somente aos registros que são fornecedores. Hoje controlamos isto no FrontEnd, mas através de uma ferramenta que temos para criação de relatórios, um usuário que deveria ter acesso somente a fornecedores, conseguiu a lista de clientes. E agora? At.te, Alisson Viegas From: pgbr-geral-boun...@listas.postgresql.org.br [mailto:pgbr-geral-boun...@listas.postgresql.org.br] On Behalf Of Fábio Telles Rodriguez Sent: quinta-feira, 6 de janeiro de 2011 16:06 To: Comunidade PostgreSQL Brasileira Subject: Re: [pgbr-geral] Permissão por linhas Você tem 2 formas de fazer isso: 1) Criar uma função ou view onde o nome do usuário conectado faça referência a uma coluna da tabela, algo como: SELECT a, b, c FROM foo WHERE usuario = current_user; ou pode pegar uma role que o usuário possua e verificar isso na consulta: SELECT a, b, c FROM foo WHERE grupo = pg_has_role('chefe','member'); veja detalhes em: http://www.postgresql.org/docs/9.0/static/functions-info.html 2) A outra forma é um pouco mais complexa, mas também é mais robusta, envolve utlizar o SEPostgreSQL que também algo um tanto complexo e só recomendado para um nível de paranóia muito grande e uma equipe disposta a investir pesado em segurança; vide: http://wiki.postgresql.org/wiki/SEPostgreSQL Acho que é isso. Em 6 de janeiro de 2011 15:53, Alisson Viegas li...@acsiv.com.br escreveu: Olá pessoal, uso a permissão por colunas do PG. Mas é possível incluir permissão de acordo com um determinado valor de registro desta coluna? At.te, Alisson Viegas ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral -- 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] Permissão por linhas
Alisson, entendo que neste seu caso, se a aplicação é de vocês ou pode ser alterada, a solução é a criação de views em cima deste cadastro único, separando os dados de clientes e fornecedores. sds Fábio Gibon Fábio e Leo, obrigado pela resposta. Acho que não é esta solução que procuro. Vejam minha situação: Temos uma tabela de cadastro único que ficam os dados comuns de clientes E fornecedores. Temos uma tabela clientes, com dados especÃficos e outra para fornecedores. Alguns usuários devem ter acesso somente a fornecedores, como o pessoal de compras. Então precisam de permissão a tabela fornecedores e a tabela cadastros. Porém, na tabela cadastros somente aos registros que são fornecedores. Hoje controlamos isto no FrontEnd, mas através de uma ferramenta que temos para criação de relatórios, um usuário que deveria ter acesso somente a fornecedores, conseguiu a lista de clientes. E agora? At.te, Alisson Viegas From: pgbr-geral-boun...@listas.postgresql.org.br [mailto:pgbr-geral-boun...@listas.postgresql.org.br] On Behalf Of Fábio Telles Rodriguez Sent: quinta-feira, 6 de janeiro de 2011 16:06 To: Comunidade PostgreSQL Brasileira Subject: Re: [pgbr-geral] Permissão por linhas Você tem 2 formas de fazer isso: 1) Criar uma função ou view onde o nome do usuário conectado faça referência a uma coluna da tabela, algo como: SELECT a, b, c FROM foo WHERE usuario = current_user; ou pode pegar uma role que o usuário possua e verificar isso na consulta: SELECT a, b, c FROM foo WHERE grupo = pg_has_role('chefe','member'); veja detalhes em: http://www.postgresql.org/docs/9.0/static/functions-info.html 2) A outra forma é um pouco mais complexa, mas também é mais robusta, envolve utlizar o SEPostgreSQL que também algo um tanto complexo e só recomendado para um nÃvel de paranóia muito grande e uma equipe disposta a investir pesado em segurança; vide: http://wiki.postgresql.org/wiki/SEPostgreSQL Acho que é isso. Em 6 de janeiro de 2011 15:53, Alisson Viegas li...@acsiv.com.br escreveu: Olá pessoal, uso a permissão por colunas do PG. Mas é possÃvel incluir permissão de acordo com um determinado valor de registro desta coluna? At.te, Alisson Viegas ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral -- 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 ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Permissão por linhas
Simples demais isso. Cria uma view onde lista apenas os fornecedores. Dê grant nesta view somente para quem precisa disso. Crie outra view onde lista apenas os clientes. Dê os grants necessários. E nada permissão diretamente na tabela, apenas nas views. Atenciosamente, Em 6 de janeiro de 2011 17:05, Alisson Viegas li...@acsiv.com.br escreveu: Fábio e Leo, obrigado pela resposta. Acho que não é esta solução que procuro. Vejam minha situação: Temos uma tabela de cadastro único que ficam os dados comuns de clientes E fornecedores. Temos uma tabela clientes, com dados específicos e outra para fornecedores. Alguns usuários devem ter acesso somente a fornecedores, como o pessoal de compras. Então precisam de permissão a tabela fornecedores e a tabela cadastros. Porém, na tabela cadastros somente aos registros que são fornecedores. Hoje controlamos isto no FrontEnd, mas através de uma ferramenta que temos para criação de relatórios, um usuário que deveria ter acesso somente a fornecedores, conseguiu a lista de clientes. E agora? At.te, Alisson Viegas *From:* pgbr-geral-boun...@listas.postgresql.org.br [mailto: pgbr-geral-boun...@listas.postgresql.org.br] *On Behalf Of *Fábio Telles Rodriguez *Sent:* quinta-feira, 6 de janeiro de 2011 16:06 *To:* Comunidade PostgreSQL Brasileira *Subject:* Re: [pgbr-geral] Permissão por linhas Você tem 2 formas de fazer isso: 1) Criar uma função ou view onde o nome do usuário conectado faça referência a uma coluna da tabela, algo como: SELECT a, b, c FROM foo WHERE usuario = current_user; ou pode pegar uma role que o usuário possua e verificar isso na consulta: SELECT a, b, c FROM foo WHERE grupo = pg_has_role('chefe','member'); veja detalhes em: http://www.postgresql.org/docs/9.0/static/functions-info.html 2) A outra forma é um pouco mais complexa, mas também é mais robusta, envolve utlizar o SEPostgreSQL que também algo um tanto complexo e só recomendado para um nível de paranóia muito grande e uma equipe disposta a investir pesado em segurança; vide: http://wiki.postgresql.org/wiki/SEPostgreSQL Acho que é isso. Em 6 de janeiro de 2011 15:53, Alisson Viegas li...@acsiv.com.br escreveu: Olá pessoal, uso a permissão por colunas do PG. Mas é possível incluir permissão de acordo com um determinado valor de registro desta coluna? At.te, Alisson Viegas ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral -- 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 -- 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] Permissão por linhas
Sim, mas um usuário de compras que tenha permissão para consultar E inserir? Seria grant de select na query e grant de insert na tabela? At.te, Alisson Viegas From: pgbr-geral-boun...@listas.postgresql.org.br [mailto:pgbr-geral-boun...@listas.postgresql.org.br] On Behalf Of Fábio Telles Rodriguez Sent: quinta-feira, 6 de janeiro de 2011 17:13 To: Comunidade PostgreSQL Brasileira Subject: Re: [pgbr-geral] Permissão por linhas Simples demais isso. Cria uma view onde lista apenas os fornecedores. Dê grant nesta view somente para quem precisa disso. Crie outra view onde lista apenas os clientes. Dê os grants necessários. E nada permissão diretamente na tabela, apenas nas views. Atenciosamente, Em 6 de janeiro de 2011 17:05, Alisson Viegas li...@acsiv.com.br escreveu: Fábio e Leo, obrigado pela resposta. Acho que não é esta solução que procuro. Vejam minha situação: Temos uma tabela de cadastro único que ficam os dados comuns de clientes E fornecedores. Temos uma tabela clientes, com dados específicos e outra para fornecedores. Alguns usuários devem ter acesso somente a fornecedores, como o pessoal de compras. Então precisam de permissão a tabela fornecedores e a tabela cadastros. Porém, na tabela cadastros somente aos registros que são fornecedores. Hoje controlamos isto no FrontEnd, mas através de uma ferramenta que temos para criação de relatórios, um usuário que deveria ter acesso somente a fornecedores, conseguiu a lista de clientes. E agora? At.te, Alisson Viegas From: pgbr-geral-boun...@listas.postgresql.org.br [mailto:pgbr-geral-boun...@listas.postgresql.org.br] On Behalf Of Fábio Telles Rodriguez Sent: quinta-feira, 6 de janeiro de 2011 16:06 To: Comunidade PostgreSQL Brasileira Subject: Re: [pgbr-geral] Permissão por linhas Você tem 2 formas de fazer isso: 1) Criar uma função ou view onde o nome do usuário conectado faça referência a uma coluna da tabela, algo como: SELECT a, b, c FROM foo WHERE usuario = current_user; ou pode pegar uma role que o usuário possua e verificar isso na consulta: SELECT a, b, c FROM foo WHERE grupo = pg_has_role('chefe','member'); veja detalhes em: http://www.postgresql.org/docs/9.0/static/functions-info.html 2) A outra forma é um pouco mais complexa, mas também é mais robusta, envolve utlizar o SEPostgreSQL que também algo um tanto complexo e só recomendado para um nível de paranóia muito grande e uma equipe disposta a investir pesado em segurança; vide: http://wiki.postgresql.org/wiki/SEPostgreSQL Acho que é isso. Em 6 de janeiro de 2011 15:53, Alisson Viegas li...@acsiv.com.br escreveu: Olá pessoal, uso a permissão por colunas do PG. Mas é possível incluir permissão de acordo com um determinado valor de registro desta coluna? At.te, Alisson Viegas ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral -- 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 -- 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
[pgbr-geral] CÁLCULO DE HORAS
Pessoal, O que estou fazendo de errado??? tabela (horas) com 2 campos formato time without zone hora1 hora2 Criando view: CREATE OR REPLACE VIEW calculo_horas AS SELECT hora1,hora2, (hora2 – hora1) FROM horas Aparece uma mensagem de erro não deixando criar a view. Eduardo Az Dep.TI EMBRASIS +55(11)2122-0241 PABX +55(11)8125-3845 TIM +55(11)9826-0138 VIVO eduard...@embrasis.com.br ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] CÁLCULO DE HORAS
Em 06/01/11, Eduardo Az - EMBRASIS Informática e OMeduard...@embrasis.com.br escreveu: Pessoal, O que estou fazendo de errado??? tabela (horas) com 2 campos formato time without zone hora1 hora2 Criando view: CREATE OR REPLACE VIEW calculo_horas AS SELECT hora1,hora2, (hora2 – hora1) FROM horas Aparece uma mensagem de erro não deixando criar a view. Pelo que pude observar o símbolo – não é o sinal de subtração (-). 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] CÁLCULO DE HORAS
Tira os espaçõs no campo do calculo testei aqui e funcionou, acrescentei as alias mas isso não interfere em nada. CREATE OR REPLACE VIEW calculo_horas AS SELECT hora1 as col1 ,hora2 as col2, *(hora2-hora1) *as col3 FROM horas; Em 6 de janeiro de 2011 17:33, Eduardo Az - EMBRASIS Informática e OM eduard...@embrasis.com.br escreveu: Pessoal, O que estou fazendo de errado??? tabela (horas) com 2 campos formato time without zone hora1 hora2 Criando view: CREATE OR REPLACE VIEW calculo_horas AS SELECT hora1,hora2, (hora2 – hora1) FROM horas Aparece uma mensagem de erro não deixando criar a view. Eduardo Az Dep.TI EMBRASIS +55(11)2122-0241 PABX +55(11)8125-3845 TIM +55(11)9826-0138 VIVO eduard...@embrasis.com.br ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral -- Israel Teixeira +55 71 8892-6321 ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] PostgreSQL ODBC
On Wed, Dec 29, 2010 at 4:39 PM, Luis Fernando Martinelli Ramos de Oliveira luis.fernando.martine...@gmail.com wrote: Olá, Eu percebi que para o ODBC do Visual Studio conectar em banco PG eu preciso ter instalado no meu Windows o psqlodbc.msi. Eu tenho o meu banco hospedado em um provedor de internet. Quando eu publicar meu sistema na internet, o sistema vai conseguir abrir o banco? Se o provedor oferece servidor para hospedar banco PG, posso concluir que os servidores de Windows .Net deles tem suporte para o ODBC abrir PG? Se tua aplicação for .net usa o Npgsql. -- Atenciosamente, Sebastian Selau Webber Colombo ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Saber a quantidade de linhas retornadas pelo select.
Em 06/01/11, Pedro B. Alvespedroalve...@gmail.com escreveu: Como fazer uma coluna sequencial do resultado de um select ? como no oracle tem o row row_number()? http://www.postgresql.org/docs/current/interactive/functions-window.html Osvaldo ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral