Buenos dias Xavier:

On Sun, 24 Jul 2022 at 09:32, <xav...@datolibre.com> wrote:
> Hola amigos, tengo una base de datos base01 que le pertenece a user01 y por 
> otro lado una base de datos base02 que le pertenece a user02. Necesito que 
> user01 pueda hacer una consulta del tipo:  SELECT * FROM base02.yourtable;

He visto que has puesto la misma consulta en ingles en la lista
general, cuando hagas eso es posible que sea mejor si lo indicas en
ambas.

A lo que vamos, Pg no es como, p.e., sql server donde las BD estan
todas juntas, y puedes usar algo como BD.Schema.tabla. En Pg las BD
estan aisladas, mucho, entre si ( aunque el cluster completo, el
proceso servidor, comparte la lista de usuarios y algunas otras cosas
).

No soy el mas experto, pero suponiendo que el admin de la base de
datos 1, user01 o el que sea sea confiable puedes utilizar cosas como
los Foreign Data Wrapper para publicar una tabla de otro servidor ( lo
de confiable te lo digo porque tiene que saberse las credenciales de
user02 al menos ). Las FDW te permiten acceder a tablas de otras BD, y
la que viene y se usa mucho es la de postgres, que entre otras cosas
funciona contra el mismo servidor si quieres ( incluso contra la misma
BBDD, hay gente que la usa asi para hacer "cosas" ).

Con los FDW puedes publicar la tabla yourtable de base02 ( no como lo
escribes, eso es la tabla yourtable del SCHEMA base02 en LA MISMA BD )
en base 01, p.e. como "base02_yourtable" y simplemente hacer queries
contra ella.

No se si hay documentacion en ES, solo leo el manual en ingles. Yo no
lo uso habitualmente, pero cuando lo probe para probarlo no costaba
mucho, y por aqui seguro que hay gente que te puede resolver el
problema concreto si pegas con alguna pared oculta.

Francisco Olarte.


Reply via email to