Quem é "focker" e por que ele é dono do meu esquema?


8

Eu tenho uma implantação do DB do Postgres no Compose.io e estou usando o db "compor" padrão para o meu aplicativo. Gostaria de limpar o conteúdo atual do banco de dados para que eu possa recriar o banco de dados com um novo esquema. Eu li que a melhor maneira de fazer isso é com "drop schema public cascade", mas quando tento fazer isso no meu db, recebo

ERROR:  must be owner of schema public

Acontece que o esquema não é de propriedade de admin(o usuário que compõe fornece acesso psql), mas de um usuário chamado focker.

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

Tentei alterar o proprietário do esquema, mas isso falhou com o mesmo erro acima.

Por que meu banco de dados está configurado dessa maneira? Existe alguma maneira de alterá-lo para que o usuário administrador possa eliminar um banco de dados?

Respostas:


8

Infelizmente, só posso responder à pergunta no título.

Aqui está um trecho de um artigo no Compose.io que pode lançar alguma luz sobre sua pergunta:

Como o LXC { Linux containers } não possui uma boa API de linha de comando, o Compose desenvolveu sua própria ferramenta interna. Quando o Docker começou como uma boa linha de comando para o LXC, Kurt notou que as ferramentas do Compose agora eram nomeadas, com firmeza na face, Focker. O Focker é onde todas as ferramentas são agrupadas e, diferentemente do Docker, que se concentra no empacotamento, ele se concentra na alocação e gerenciamento de recursos. As instâncias do contêiner são conectadas via Open vSwitch, o que permite que cada cliente tenha sua própria VLAN privada para seu banco de dados.

Linha inferior - "focker" representa a API da linha de comandos "usuário" do Compose.io.


Em outro artigo , podemos ver o seguinte:

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

...

Minha melhor aposta seria tentar: psql postgres -U focker


3
+1. Apenas para opsql postgres -U focker
ypercubeᵀᴹ
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.