Re: Acerca de variable de entorno para psql

From: Yessica Brinkmann <yessica(dot)brinkmann(at)gmail(dot)com>
To: folarte(at)peoplecall(dot)com
Cc: pgsql-es-ayuda <pgsql-es-ayuda(at)lists(dot)postgresql(dot)org>
Subject: Re: Acerca de variable de entorno para psql
Date: 2018-11-06 13:15:02
Message-ID: CABrYqSO7CHFVgJuAvpoCF-KVJ_nE1PVpa_JHzisV6uvKm7qNSw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Muchísimas gracias por la ayuda!
Estaré probando todo lo indicado y luego doy retorno.
Saludos cordiales,
Yessica

El mar., 6 nov. 2018 a las 5:08, Francisco Olarte (<folarte(at)peoplecall(dot)com>)
escribió:

> Yessica:
>
>
> 2018-11-06 4:05 GMT+01:00 Yessica Brinkmann <yessica(dot)brinkmann(at)gmail(dot)com>:
> ...
> > Tengo el psql dentro del directorio postgresql-8.3.23/src/bin/psql
> ....
> > Y lo ejecuto ingresando a dicho directorio y escribiendo:
> > ./psql template1 por ejemplo.
> >
> > El caso es que ahora necesito correr un conjunto de scripts sql que
> están en
> > un directorio aparte, con el psql
> > Es decir, necesito escribir por ejemplo:
> > psql $CONNSTR -U $SYSDBA -d postgres < pgsqlds2_create_db.sql
> > El archivo pgsqlds2_create_db.sql se encuentra en el directorio
> > home/yessica/ds2
> > El caso es que cuando trato de ejecutar el script me responde el bash
> con un
> > error, diciendo que el psql no existe.
> > Por eso creo que necesito agregar seguramente el psql como una variable
> de
> > entorno, para poder llamarla desde el bash, para poder ejecutar un script
> > sql que se encuentra en un directorio específico.
>
> Problema de Unix, no de postgres. Como ya sabras los shell de unix
> buscan cualquier comando que ejecutes SIN separadores de directorio en
> $PATH.
>
> Segun tu ejemplo el script lo ejecuta asi ( hay algunos hechos de
> forma que usan $PSQL y lo inicializan a psql, que tienen otras
> soluciones ).
>
> Lo unico que tienes que hacer es poner el directorio ( COMPLETO, en tu
> ejemplo das un nombre relativo, probablemente lo que quieres es
> $HOME/postgresql-8.3.23/src/bin ) en el PATH, normalmente al prinpio
> por si tienes algun otro psql en el sistema ( yo suelo optar en estos
> casos por 'export PATH=$HOME/postgresql-8.3.23/src/bin:$PATH' ).
>
> Unas indicaciones extra. Primero, la presencia de /src/ en tu nombre
> de archivo indica que probablemente no has instalado el postgres y
> estas trabajando sobre el compilado directo. Eso suele dar algun
> problemilla. Segundo, si no quieres contaminar el entorno de ru shell
> de usuario metieno lo del PATH en el .bashrc (ya que probablemente sea
> bash lo que usas ), puedes o bien hacer una asignacion local (
> 'PATH=$HOME/postgresql-8.3.23/src/bin:$PATH <el script>' ), que te
> pone el PATH durante la ejecucion de ese comando o, si son varios,
> hacer un subshell ( haces bash-enter, modificas el path ahi, ejecutas
> lo que quieras, haces exit para volver al principal y vuelves a tu
> entorno 'limpio' ).
>
> Por ultimo, puedes usar nombres completos, cosas como
> '$HOME/postgresql-8.3.23/src/bin/psql $CONNSTR -U $SYSDBA -d postgres
> < $HOME/ds2/pgsqlds2_create_db.sql', que te deberian funcionar desde
> cualquier punto del filesystem.
>
> Francisco Olarte.
>

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Jaime Casanova 2018-11-06 16:07:28 Re: Acerca de variable de entorno para psql
Previous Message Francisco Olarte 2018-11-06 08:07:54 Re: Acerca de variable de entorno para psql