Sur ma configuration ( Ubuntu 10.04.3et PostgreSQL 8.4), je pourrais enfin le faire fonctionner lorsque le nom d'utilisateur auquel je suis connecté est le même que celui que j'essaie d'obtenir un mot de passe du.pgpass fichier.
Connecté en tant que deployer, j'essayais d'utiliser le .pgpassfichier pour accéder à la base de données appartenant à un nom d'utilisateur appname, qui n'a pas d'équivalent utilisateur Unix. Je ne pouvais pas faire le .pgpasstravail, jusqu'à ce que je commence à utiliserdeployer tant qu'utilisateur pour accéder à ma base de données ...
Voici /home/deployer/.pgpassle contenu de mon fichier:
*:*:*:deployer:password
Voici une partie de celle- /etc/postgresql/8.4/main/pg_hba.confci:
# TYPE  DATABASE    USER        CIDR-ADDRESS          METHOD                                                
# "local" is for Unix domain socket connections only                                                        
local   all         all                               md5                                                   
# IPv4 local connections:                                                                                   
host    all         all         127.0.0.1/32          md5                                                   
host    all         all         192.168.0.1/32        md5                                                   
# IPv6 local connections:                                                                                   
host    all         all         ::1/128               md5 
Comme vous pouvez le voir, toutes mes connexions nécessitent un mot de passe (md5 ).
Avec cette configuration, en supposant que j'ai une base de données que j'ai créée avec cette commande:
deployer@ubuntu-server:~$ createdb -T template0 -O deployer -E UTF8 dbname
Je peux effectuer l'opération suivante sans entrer de mot de passe:
deployer@ubuntu-server:~$ dropdb dbname
Dès que je change le nom de mon .pgpassà.pgpass-no , il faudra un mot de passe.
BTW, n'oubliez pas que votre .pgpassfichier doit être sous 0600autorisations:
deployer@ubuntu-server:~$ ls -la .pgpass
-rw------- 1 deployer staff 24 2012-01-06 17:29 .pgpass
               
              
-Udrapeau versdropdbetcreatedb