Segundo o site postgresql.org, PostgreSQL é um poderoso sistema de banco de dados relacional de objeto de código aberto com mais de 35 anos de desenvolvimento ativo que lhe rendeu uma forte reputação de confiabilidade, robustez de recursos e desempenho.
Hoje iremos aprender como instalá-lo no Debian usando o gerenciador de pacotes apt.
#1 Execute
sudo apt install postgresql -y
#2 Após instalação você verá informações importantes
......
Created symlink /etc/systemd/system/multi-user.target.wants/postgresql.service → /lib/systemd/system/postgresql.service.
Configurando postgresql-15 (15.5-0+deb12u1) …
Creating new PostgreSQL cluster 15/main …
/usr/lib/postgresql/15/bin/initdb -D /var/lib/postgresql/15/main --auth-local peer --auth-host scram-sha-256 --no-instructions
Os arquivos deste sistema de banco de dados pertencerão ao usuário "postgres".
Esse usuário deve ser o dono do processo do servidor também.
Esses são diretórios onde estão localizados arquivos do PostgreSQL
Iniciando o PostgreSQL
#1 execute systemctl status postgresql para vermos o status do gerenciador de banco de dados(PostgreSQL)
root@servidor03:~# systemctl status postgresql ● postgresql.service - PostgreSQL RDBMS Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; preset: enabled) Active: active (exited) since Wed 2024-07-03 14:00:11 -03; 51min ago Main PID: 9098 (code=exited, status=0/SUCCESS) CPU: 2ms jul 03 14:00:11 servidor03 systemd[1]: Starting postgresql.service - PostgreSQL RDBMS... jul 03 14:00:11 servidor03 systemd[1]: Finished postgresql.service - PostgreSQL RDBMS.
#2 acima, o PostgreSQL já está iniciado, conforme o texto em verde; se não estivesse, para iniciá-lo execute:
systemctl status postgresql
Acessando o PostgreSQL
#1 troque para o usuário postgres no terminal
sudo -i -u postgres
#2 Dentro da conta do usuário postgres
, acesse o shell do PostgreSQL
psql
Saindo do Shell(interpretador de comandos)
Nesse momento estaremos acessados no shell do PostgreSQL; para sairmos basta executar \q
\q
Veja também: Como Acessar e Sair do Terminal PSQL? e PostgreSQL: Instalando no CentOS 8
Criar novo usuário e um banco de dados no PostgreSQL
#1 para criar um novo usuário execute:
CREATE USER meu_usuario WITH PASSWORD 'minha_senha';
CREATE DATABASE meu_banco;
GRANT ALL PRIVILEGES ON DATABASE meu_banco TO meu_usuario;
Diretórios importantes
Dentro do diretório /usr/lib/postgresql/15/ no Debian, você encontrará subdiretórios como bin e lib. Esses diretórios contêm arquivos importantes necessários para a execução e funcionamento do PostgreSQL.
Diretório /usr/lib/postgresql/15/bin
O diretório bin
contém os binários executáveis do PostgreSQL. Esses binários são os programas e utilitários que você usa para interagir com o PostgreSQL. Alguns dos executáveis mais importantes incluem:
postgres
: O binário principal do servidor PostgreSQL. Este é o processo que gerencia o banco de dados.initdb
: Um utilitário que inicializa um novo cluster de banco de dados PostgreSQL.psql
: O cliente de linha de comando para interagir com o PostgreSQL. Permite que você execute comandos SQL e scripts no banco de dados.createdb
: Um utilitário para criar novos bancos de dados.createuser
: Um utilitário para criar novos usuários de banco de dados.pg_ctl
: Um utilitário para iniciar, parar ou reiniciar o servidor PostgreSQL.pg_dump
: Um utilitário para fazer backups de bancos de dados PostgreSQL.pg_restore
: Um utilitário para restaurar backups feitos compg_dump
.pg_basebackup
: Um utilitário para fazer backups completos de um cluster de banco de dados PostgreSQL.
Diretório /usr/lib/postgresql/15/lib
O diretório lib
contém bibliotecas compartilhadas (shared libraries) e outros arquivos de suporte necessários para o PostgreSQL. As bibliotecas compartilhadas são usadas pelos binários executáveis para realizar várias operações. Alguns exemplos incluem:
libpq.so
: A biblioteca de interface cliente do PostgreSQL. Ela é usada por aplicativos cliente para se conectar e interagir com o servidor PostgreSQL.libecpg.so
: A biblioteca de pré-compilador ECPG para programas C embutidos no SQL.libpgcommon.so
elibpgport.so
: Bibliotecas de utilitários comuns usadas por vários componentes do PostgreSQL.
Funções dos Diretórios
bin
: Fornece os executáveis necessários para administrar e operar o PostgreSQL. Estes executáveis são essenciais para a configuração inicial, manutenção e interação diária com o banco de dados.lib
: Contém bibliotecas críticas que os binários utilizam para funcionar corretamente. Estas bibliotecas incluem funções de conexão de banco de dados, manipulação de dados e outras operações de backend.
Importância
- Executáveis (
bin
): Estes são os principais programas que você usará para gerenciar e interagir com seus bancos de dados PostgreSQL. - Bibliotecas (
lib
): Essas bibliotecas são carregadas dinamicamente pelos executáveis para realizar várias tarefas, garantindo que os programas funcionem corretamente e eficientemente.