1

O pacote 'pgadmin4' não tem candidato para instalação

#PostgreSQL
Camila Cavalcante
Camila Cavalcante

Como instalar o SGBD PostgreSQL + pagAdmin4 no Ubuntu de forma eficiente:


Oi pessoal, este artigo será bem simplesinho, só pra ajudar os Devs que assim como eu tiveram dificuldades na hora de instalar o pgAdmin4 no Ubuntu solicitado no curso CONCEITOS E MELHORES PRÁTICAS COM BANCO DE DADOS POSTGRESQL. - Daniel Robert Costa

Mas antes de instalar de fato o pgAdmin4, que tal começarmos do início?


Neste artigo vamos executar os seguintes passos:

  • Instalação do SGBD postgresql-13
  • Configuração de superusuário e senha
  • Instalação do pgAdmin4
  • Primeiros passos no pgAdmin4



INSTALAÇÃO SGBD POSTGRESQL-13:


Abra o terminal (Ctrl + Alt + t)


Entre no site oficial do PostgreSQL e siga as instruções de instalação. Caso fique com dúvidas, seguem os comandos:


Crie a configuração do repositório de arquivos:

cami@cami-linuxcurso:~$ sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'


Importe a chave de assinatura do repositório:

cami@cami-linuxcurso:~$ wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -


Atualize as listas de pacotes:

cami@cami-linuxcurso:~$ sudo apt-get update


Instale a versão mais atual do PostegreSQL (no nosso caso, a versão 13 é a mais estável)

cami@cami-linuxcurso:~$ sudo apt-get -y install postgresql-13


Para ver o cluster:

cami@cami-linuxcurso:~$ pg_lsclusters


OBS: nesta instalação já configurou o cluster, apresentando a seguinte mensagem no finalzinho da instalação:

Ver Cluster Port Status Owner   Data directory             Log file
13 main   5432 online postgres /var/lib/postgresql/13/main /var/log/postgresql/postgresql-13-main.log

Logo, não criei um cluster um como exemplificado no curso.


Feche o terminal e abra novamente.



CONFIGURAÇÃO DE SUPERUSUÁRIO E SENHA:


Quando tentei me conectar no SGBD PostegreSQL, apresentou:

cami@cami-linuxcurso:~$ su - postgres
Senha:
su: Falha de autenticação


ou:

cami@cami-linuxcurso:~$ sudo psql
[sudo] senha para cami:
psql: error: FATAL:  role "root" does not exist


Vamos agora resolver este pequeno problema, configurando o acesso com senha no PostgreSQL através do utilitário psql:


Primeiro, vamos logar com o usuário postgres da seguinte forma:

cami@cami-linuxcurso:~$ sudo -i -u postgres
[sudo] senha para cami:
postgres@cami-linuxcurso:~$


Agora sim podemos entrar no SGBD PostgreSQL com o utilitário psql:

postgres@cami-linuxcurso:~$ psql
psql (13.3 (Ubuntu 13.3-1.pgdg20.04+1))
Type "help" for help.

postgres=#


Para obter mais informações, execute os comandos abaixo e analise os retornos: (Não posso entrar em detalhes para não sair do escopo do artigo)

postgres=# \du

                                   List of roles
 Role name |                         Attributes                         | Member of
-----------+------------------------------------------------------------+-----------
 postgres  | Superuser, Create role, Create DB, Replication, Bypass RLS | {}

para sair, digite "q"


postgres=# \conninfo
You are connected to database "postgres" as user "postgres" via socket in "/var/run/postgresql" at port "5432".


Agora, vamos configurar a senha do super usuário postgres (ele tem permissão para fazer TUDO no banco de dados):

postgres=# \password
Enter new password:
Enter it again:

Insira 2x a senha escolhida. GUARDE ESTA SENHA!


Para que essa senha seja pedida sempre que quisermos entrar no PostegreSQL através do superusuário postgres, precisamos fazer uma alteração no arquivo pg_hba.conf.

Segue as instruções:


Primeiro precisamos saber onde se encontra este arquivo pg_hba.conf no nosso computador:

postgres=# show hba_file;
              hba_file               
-------------------------------------
 /etc/postgresql/13/main/pg_hba.conf
(1 row)


Agora vamos sair do postres:

postgres=# \q
postgres@cami-linuxcurso:~$ exit;
sair


Abrindo o arquivo no editor nano:

cami@cami-linuxcurso:~$ sudo nano /etc/postgresql/13/main/pg_hba.conf
[sudo] senha para cami:


Vá para o final do arquivo e procure a opção a baixo:

# Database administrative login by Unix domain socket
local   all             postgres                                peer


Onde tem a opção "peer" troque para "md5"

# Database administrative login by Unix domain socket
local   all             postgres                                md5

Pressione Ctrl+O (para salvar a alteração) e Ctrl+x (para sair do editor nano)


Vamos reiniciar o serviço:

cami@cami-linuxcurso:~$ sudo systemctl restart postgresql


Finalmente, vamos tentar entrar novamente no PostgreSQL através o utilitário psql com o usuário "postgres" e senha que acabamos de configurar :

cami@cami-linuxcurso:~$ psql -U postgres
Password for user postgres:
psql (13.3 (Ubuntu 13.3-1.pgdg20.04+1))
Type "help" for help.

postgres=#


E sim, deu certo!

Agora o superusuário está protegido com senha e a mesma será pedida sempre que tentarmos logar no PostgreSQL através do superusuário.


Créditos - Boson Treinamentos



INSTALAÇÃO DO PGADMIN4:


Quando tentei instalar o pgAdmin4 seguindo as instruções que o instrutor do curso de CONCEITOS E MELHORES PRÁTICAS COM BANCO DE DADOS POSTGRESQL (curso maravilhoso, diga-se de passagem):

cami@cami-linuxcurso:~$ sudo apt install pgAdmin4


Apresentou a inesperada mensagem:

cami@cami-linuxcurso:~$ sudo apt install pgadmin4
[sudo] senha para cami: 
Lendo listas de pacotes... Pronto
Construindo árvore de dependências       
Lendo informação de estado... Pronto
O pacote pgadmin4 não está disponível, mas é referenciado por outro pacote.
Isto pode significar que o pacote está faltando, ficou obsoleto ou
está disponível somente a partir de outra fonte

E: O pacote 'pgadmin4' não tem candidato para instalação


Para resolver, fiz o seguinte:


No terminal (Ctrl + Alt + t):

cami@cami-linuxcurso:~$ sudo curl http://www.pgadmin.org/static/packages_pgadmin_org.pub | sudo apt-key add


que apresentou os seguintes erros:

sudo: curl: comando não encontrado
gpg: nenhum dado OpenPGP encontrado.


Logo, precisei instalar o comando curl (Comandos Curl são destinados para funcionar como uma forma de verificar a conectividade da URL, além de ser uma ótima ferramenta de transferência de dados.)

cami@cami-linuxcurso:~$ sudo apt-get install curl


Dei continuidade, e executei novamente:

cami@cami-linuxcurso:~$ sudo curl http://www.pgadmin.org/static/packages_pgadmin_org.pub | sudo apt-key add


Em seguida:

cami@cami-linuxcurso:~$ sudo apt install pgAdmin4


Créditos: Daniel Morais Infocotidiano



Dependendo da sua conexão de internet, a instalação irá demorar um pouco.

Uma boa alternativa para o pgAdmin4 e também para outras interfaces gráficas de SGBD seria o DBeaver (um aplicativo de software cliente SQL e uma ferramenta de administração de banco de dados).

Inclusive utilizo o DBeaver aqui nos meus estudos.

Porém, como neste curso o instrutor Daniel exemplifica com o pgAdmin4, preferi acompanhar o curso direitinho.



PRIMEIROS PASSOS NO PGADMIN4:


  • Vá nos aplicativos do seu computador e procure o ícone do pgAdmin4 (face de um elefante)
  • Assim que você abrir o pgAdmin4, irá pedir uma senha. Digite a senha que você configurou para o superusuário.
  • Clique na opção "Create Server"
  • Escolha um nome, no meu caso testeDB
  • Passe para aba "connection" > "Host Name/Adress": localhost
  • "Password": insira a que você criou para o superusuário postgres > "save"


Enfim, é isso. Continue assistindo o curso que ele é muito completo!

O professor Daniel Robert Costa tem uma didática muito boa e entra afundo no assunto de PostgreSQL.


Então, para o pessoal do Java que quer pegar no Spring Data, JPA, Hibernate... esse é o primeiro passo rumo ao sucesso!


Espero ter ajudado e até logo!

"Não deixe o perfeito ser inimigo do bom” Voltaire.

1
6

Comentários (12)

0
G

Giovanna Assis

20/10/2021 23:24

Muito obrigada, você arrasou !


0
Joanes Araújo

Joanes Araújo

15/10/2021 17:53

Excelente Camila.


Eu particularmente não consegui de jeito nenhum, tentei muitoooo. Eu não sei se, quando fazemos update os comandos das versões dos programas mudam, (nem verifiquei isso). Aí fui de FEDORA 34, pegando um tutorial de um espanhol e foi tranquilo. Só que, nesse tutorial ele não pede para fazer update durante o processo, por isso a minha dúvida quanto ao ubuntu não ser a mesma coisa?!. Enfim.


Sempre para nessa tela:

E: O pacote 'pgadmin4' não tem candidato para instalação


Se alguém não conseguir de jeito nenhum no ubuntu pode ir no fedora que vai tranquilo. É mais trabalhoso, mas fica o desafio tb se vc quiser usar o pgAdmin4 .



obg

0
J

Jader Greiner

02/10/2021 08:59

Ei, Camila! Top.

Matou a charada!

0
R

Rafael Pereira

29/08/2021 19:15

O meu não deu certo , continua com o mesmo erro

0
Maria Moura

Maria Moura

22/08/2021 06:57

Estou assistindo agora as aulas do PostgreSQL e seu posto ajudou muito! Obrigada.
Mesmo seguindo o que vocẽ e o Daidgy postaram, não consegui instalar o PgAdmin4. Então procurando, achei este link, que resolveu o problema da instalação, bem fácil:
https://www.pgadmin.org/download/pgadmin-4-apt/

Só fiquei com dúvida porque no vídeo o professor acessa o pgadmin4 pelo terminal e isso eu ainda não consegui fazer. Mas o elefantinho já está aqui na minha tela, rs.

#
# Setup the repository
#

# Install the public key for the repository (if not done previously):
sudo curl https://www.pgadmin.org/static/packages_pgadmin_org.pub | sudo apt-key add

# Create the repository configuration file:
sudo sh -c 'echo "deb https://ftp.postgresql.org/pub/pgadmin/pgadmin4/apt/$(lsb_release -cs) pgadmin4 main" > /etc/apt/sources.list.d/pgadmin4.list && apt update'

#
# Install pgAdmin
#

# Install for both desktop and web modes:
sudo apt install pgadmin4

// só instalei até aqui e o último

# Install for desktop mode only:
sudo apt install pgadmin4-desktop

# Install for web mode only: 
sudo apt install pgadmin4-web 

# Configure the webserver, if you installed pgadmin4-web:
sudo /usr/pgadmin4/bin/setup-web.sh


0
Leila Sampaio

Leila Sampaio

02/08/2021 15:17

Nossa! Muito Obrigada, ajudou demais!! Valeu mesmo

0
M

Marcos Sousa

01/08/2021 19:39

Uau, Super me ajudou. agradeço!

0
Y

Yago Araujo

29/07/2021 22:32

muito obrigado!

0
W

Wellington Pimenta

18/07/2021 21:28

Muito obrigada! Esse foi o único artigo que me ajudou



1
Daidgy Freitas

Daidgy Freitas

16/07/2021 12:12

Seu artigo me ajudou muito, parabéns! só uma observação, na parte inicial (Crie a configuração do repositório de arquivos:).


O link mudou na data que estou fazendo essa aula, 07/2021.

sudo sh -c 'echo "deb https://ftp.postgresql.org/pub/pgadmin/pgadmin4/apt/$(lsb_release -cs) pgadmin4 main" > /etc/apt/sources.list.d/pgadmin4.list && apt update'

Dessa forma consegui instalar o pgAdmin4.

None

Brasil