Proprietario di schema pubblico cambia a seconda che ho effettuato l’accesso come?

$ psql postgres

postgres=# \dn
        List of schemas
        Name        |  Owner
--------------------+----------
 information_schema | postgres
 pg_catalog         | postgres
 pg_toast           | postgres
 pg_toast_temp_1    | postgres
 public             | student
(5 rows)

Quando accedo a psql con l’utente postgres, mostra che schema pubblico è di proprietà dell’utente studente. Tuttavia, quando accedo a psql con utente studente:

$ psql student

student=> \dn
        List of schemas
        Name        |  Owner
--------------------+----------
 information_schema | postgres
 pg_catalog         | postgres
 pg_toast           | postgres
 pg_toast_temp_1    | postgres
 public             | postgres
(5 rows)

Mostra che schema pubblico è di proprietà dell’utente postgres.

Come posso ottenere la proprietà di schema pubblici trasferiti utente studente, se l’utente con i privilegi per farlo, pensa a quello che ha già fatto?

OriginaleL’autore Ceili | 2014-01-03

One Reply
  1. 11

    Questo è un equivoco. Si stanno registrando in due database diversi.

    Durante l’esecuzione

    $ psql postgres

    postgres è il nome del database. Con la configurazione di default il nome dell’utente del database è derivato dal nome di utente del sistema utilizzando gi l’autenticazione automaticamente. L’unico parametro che viene considerato il nome del database. Si non vogliono cambiare nulla nel database postgres, è un sistema di database per attività di manutenzione.

    Il database è denominato student. Ogni database ha uno schema public con il proprietario.

    Leggere il manuale per psql o provare un umile man psql.

    Per il trasferimento di proprietà dello schema public nel database student, accedere come utente root:

    psql -U postgres student

    O semplicemente (sistema, utente postgres):

    psql student

    E di esecuzione:

    ALTER SCHEMA public OWNER TO student;

    Dettagli nel manuale una volta di più.

    OriginaleL’autore Erwin Brandstetter

Lascia un commento