2012/6/4 Pedro Costa <pedrocostaa...@sapo.pt>

> Olá pessoal,
>
> Eu tenho um servidor ubuntu com uma base em postgres.
> Pretendia importar um ficheiro .csv e tentei assim:
>
> copy nomes_mu from '/var/www/nomes_mu.csv' WITH CSV DELIMITER ';'
>
>
> Mas ele não consegue encontrar o ficheiro ou directoria apesar de eu o
> copiar para lá.
>

Qual o erro exato?
Provavelmente o usuário "postgres" (ou o usuário que iniciou o PostgreSQL)
não está com acesso de leitura no arquivo, você pode colocá-lo, por
exemplo, no '/tmp/' ou então dar um chmod:

chmod a+r /var/www/nomes_mu.csv

 A minha pergunta é o seguinte, qual é o directório que a base 'considera
> como raiz' para eu poder indicar-lhe o caminho correcto?
>
>
O diretório corrente que o PostgreSQL considera é o $PGDATA, logo caminhos
relativos vão ser relativos à este. Mas caminho absoluto, como o que você
passou, não há problemas.

Uma dica pra melhorar a segurança é você adicionar o usuário do PostgreSQL
no grupo que tem acesso (pelo menos leitura) a este arquivo, assim não
precisa dar acesso de leitura à todos.

Atenciosamente,
--
Matheus de Oliveira

Bacharelado em Ciências de Computação
Laboratório de Computação de Alto Desempenho -
LCAD<http://www.lcad.icmc.usp.br/>
Instituto de Ciências Matemáticas e de Computação -
ICMC<http://www.icmc.usp.br/>
Universidade de São Paulo - USP <http://www.sc.usp.br/>
_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a