Chi è "focker" e perché possiede il mio schema?


8

Ho una distribuzione Postgres DB in Compose.io e sto usando il db standard "compose" per la mia app. Vorrei cancellare l'attuale contenuto del DB in modo da poter ricreare il DB con un nuovo schema. Ho letto che il modo migliore per farlo è con "drop schema public cascade", ma quando provo a farlo sul mio db ottengo

ERROR:  must be owner of schema public

Si scopre che lo schema non è di proprietà di admin(l'utente che compone fornisce l'accesso psql), ma di un utente di nome focker.

compose=> \dn
 List of schemas
  Name  | Owner  
--------+--------
 public | focker
(1 row)

Ho provato a cambiare il proprietario dello schema ma questo non riesce con lo stesso errore di cui sopra.

Perché il mio db è impostato in questo modo? Esiste un modo per modificarlo in modo che l'utente amministratore possa cancellare un db?

Risposte:


8

Sfortunatamente, posso solo rispondere alla domanda nel titolo.

Ecco un estratto da un articolo su Compose.io che potrebbe far luce sulla tua domanda:

Poiché LXC { Linux containers } non ha una bella API della riga di comando, Compose ha sviluppato un proprio strumento interno. Quando Docker iniziò come una bella riga di comando per LXC, Kurt notò che gli strumenti di Compose erano ora denominati, con la lingua saldamente nella guancia, Focker. Focker è il punto in cui tutti gli strumenti sono raggruppati e, a differenza di Docker che si concentra sul packaging, si concentra sull'allocazione e la gestione delle risorse. Le istanze del contenitore vengono quindi collegate tramite Open vSwitch che consente a ciascun cliente di disporre della propria VLAN privata per il proprio database.

Bottom line - "focker" rappresenta l'API della riga di comando "user" di Compose.io.


In ancora un altro articolo , possiamo vedere quanto segue:

[snapshot] more README

This snapshot is meant to be run with the same minor version  
of Postgresql, which is postgres (PostgreSQL) 9.4.5.

To startup a Postgresql environment with this snapshot, run:  
`postgres -D conf`

You can then connect to the db by running: `psql postgres -U focker`

...

La mia scommessa migliore sarebbe provare: psql postgres -U focker


3
+1. Solo per ilpsql postgres -U focker
ypercubeᵀᴹ
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.