psql, cron, password [postgresql] - Linux et OS Alternatifs
Marsh Posté le 11-12-2003 à 09:26:33
Regarde du coter d expect pour le password.
Ca te permet de passer des params à des invites diverses ...
A+
Marsh Posté le 11-12-2003 à 13:02:18
Une autre solution est d'utiliser la variable d'environnement PGPASSWORD : par exemple, créer un fichier ~/.psql-secret (avec un chmod 600 ~/.psql-secret)
|
Puis un script (~/sql_com.sh , avec un chmod +x ~/sql_com.sh):
|
Et lancer ce script par cron.
Code :
|
Note : Ça peut poser un problème de sécurité dans le sens où certaines versions de "ps" (selon l'OS utilisé) peuvent afficher toutes les variables d'environnement d'un processus, même si l'utilisateur n'est pas le propriétaire du processus (donc ça signifie que n'importe qui loggué sur la machine pourrait visualiser la variable PGPASSWORD). Ça ne sera bien sûr possible que pendant l'exécution du script. En tout cas, c'est à vérifier.
Bon, avec procps 2.0.16 sur un Linux 2.4.23, ça marche comme il faut (c'est à dire que seules les variables de l'utilisateur qui lance "ps" sont affichées).
Marsh Posté le 11-12-2003 à 14:12:11
merci beaucoup ))
je teste ca des que ma fonction est finie
(d ailleur c'est plus 'select fc_comm();' )
au niveau secu j utilise une woody +2.4.18 et je sais pas
je vais aussi regarder rapidement expect mais la solution de unk00 ainsi presentée m'a l'air for simple à mettre en ouevre
Marsh Posté le 11-12-2003 à 16:34:30
dans pg_hba.conf (ou un truc comme ca), tu peux faire un peu mieux. Du genre, créer un user specifique aux traitements sur pgsl, mettre ident comme niveau de securite et lancer ta tache sous cette user. Si tu as une deb, inspire toi de la conf du user postgres qui sert à la maintenance de la base
Marsh Posté le 11-12-2003 à 16:37:57
oui c'est ce que j etais en train de voir aussi
mais la je v au plus vite parceque plein de choses ...
Marsh Posté le 11-12-2003 à 21:18:06
Pour expect tu regarde dans /usr/share/doc/expect/examples
Y a pas mal d exemple ...
A+
Marsh Posté le 11-12-2003 à 09:13:03
Salut,
je doit lancer une fonction a 11h30 du lundi au vendredi inclus.
dans /etc/cron.d/sql j'ai mis ca :
Est ce correct ?
mon probleme est que psql va demander un mot de passe, comment puis je faire pour lui passer sans etre devant le clavier ? (pas trouver dans man psql...)
merci d avance