Wer ist "Focker" und warum besitzt er mein Schema?

8

Ich habe eine Postgres DB-Bereitstellung in Compose.io und verwende die Standard-Datenbank "compose" für meine App. Ich möchte den aktuellen DB-Inhalt löschen, damit ich die DB mit einem neuen Schema neu erstellen kann. Ich habe gelesen, dass der beste Weg, dies zu tun, mit "drop schema public cascade" ist, aber wenn ich versuche, dies auf meiner Datenbank zu tun, bekomme ich

ERROR:  must be owner of schema public

Es stellt sich heraus, dass das Schema nicht admindem Benutzer gehört (der Benutzer, der den psql-Zugriff bereitstellt), sondern einem Benutzer namens focker.

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

Ich habe versucht, den Schemaeigentümer zu ändern, aber das schlägt mit demselben Fehler wie oben fehl.

Warum ist meine Datenbank so eingerichtet? Kann ich es auf irgendeine Weise ändern, damit der Administrator eine Datenbank löschen kann?


quelle

Antworten:

8

Leider kann ich die Frage nur im Titel beantworten.

Hier ist ein Auszug aus einem Artikel auf Compose.io , der Ihre Frage beleuchten könnte:

Da LXC { Linux-Container } keine nette Befehlszeilen-API hat, hat Compose ein eigenes internes Tool entwickelt. Als Docker als nette Kommandozeile für LXC begann, bemerkte Kurt, dass die Werkzeuge von Compose jetzt Focker genannt wurden. In Focker werden alle Tools gebündelt und im Gegensatz zu Docker, das sich auf das Verpacken konzentriert, konzentriert es sich auf die Ressourcenzuweisung und -verwaltung. Die Containerinstanzen werden dann über Open vSwitch verbunden, sodass jeder Kunde sein eigenes privates VLAN für seine Datenbank haben kann.

Fazit - "focker" repräsentiert die Befehlszeilen-API "user" von Compose.io.


In einem weiteren Artikel sehen wir Folgendes:

[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`

...

Meine beste Wette wäre zu versuchen: psql postgres -U focker


quelle
3
+1. Nur für denpsql postgres -U focker
ypercubeᵀᴹ