Inicialização da Instância da Base de Dados
Antes de qualquer atividade, é necessário inicializar o cluster, ou instância, um agrupamento de bases de dados gerido por um único processo principal do PostgreSQL.
Em termos de sistemas de ficheiros, o cluster é um diretório onde todos os dados e metadados serão armazenados. Esta área é chamada diretório de dados da instância ou PGDATA.
Esta opção permite ao PgSmart executar o comando initdb do PostgreSQL, passando as opções necessárias para a criação dum cluster.
O PgSmart cria um ficheiro drop-in para cada instância inicializada, com o número da porta no nome do ficheiro. Este ficheiro contém as variáveis de ambiente necessárias para a execução do serviço de base de dados. O PgSmart também ativa e regista o serviço no systemd.
- Antes de inicializar a instância da base de dados, é necessário instalar o Serviço de Base de Dados. Para mais informações, consulte Instalação do Serviço de Base de Dados.
pgsmart db init [Flags]
Flags:
-D, --pgdata=<valor>
=> Diretório de dados da instância PostgreSQL.-M, --pgversion=(11|12|13|14|15)
=> Versão principal do PostgreSQL.-a, --agent=<agente>
=> Alias, hostname ou IP do servidor onde está instalado um PgSmart Agent.-h, --help
=> Ajuda.-t, --template
=> Indica a utilização dum template de inicialização da instância.
A execução não interativa está desativada para esta operação.
pgsmart db init
- Instruções
- Vídeo
-
Selecione o Agente do PgSmart pretendido (ou Registar um novo Agente).
-
Selecione a
versão principal do PostgreSQL
de entre as identificadas. -
Indique o
Diretório de dados
da instância (PGDATA). -
Indique o
Diretório de logs transacionais
(WALDIR). -
Indique a
Codificação de caracteres padrão
(ENCODE). -
Selecione a
Representação regional padrão
de dados e valores monetários (LOCALE). -
Indique a
Porta da instância
(PGPORT). -
Selecione as
Interfaces de rede
para acesso (LISTEN_ADDRESSES). -
Confirme se pretende exportar o template de configuração (opcional).
-
Confirme a criação da instância.

Os valores Default
podem ser aceites (<ENTER>
) ou alterados.
O Diretório de Dados da Instância, o Diretório de Logs Transacionais e o número da Porta devem ser únicos para cada instância.
O Diretório de instalação de binários e o Diretório de dados apenas serão solicitados se não forem encontradas as variáveis de ambiente [PGDATA
] e [PGBIN
].
Variações do Comando para Execução Interativa
Alguns parâmetros podem ser antecipadamente informados, mas a execução continua a ser interativa.
Exemplo:
pgsmart db init --pgversion 15
O PgSmart pode guardar os dados da inicialização num template JSON, localizado em opt/pgsmart-client/templates
.
Os templates são identificados pela data e hora de criação, podendo ser reutilizados noutros servidores, copiando-os para o diretório templates
do destino.
Para inicializar utilizando um template:
pgsmart db init -t
- Instruções
- Vídeo
-
Selecione o
Agente do PgSmart
(ou Registe novo Agente). -
Selecione o
template desejado
. -
As seguintes informações serão apresentadas com base no template:
- Versão principal do PostgreSQL
- PGDATA
- WALDIR
- ENCODING
- LOCALE
- PGPORT
- LISTEN_ADDRESSES
3.1. Confirme o template selecionado. 3.2. Altere o template, se necessário. 3.3. Confirme a criação da instância.
Figura 2 - Inicialização da Instância da Base de Dados - Template
Para criar uma nova instância no mesmo servidor (localhost
), altere manualmente config_pgdata
, initdb_waldir
e a Porta de conexão no ficheiro do template.
O PgSmart define variáveis de ambiente no ficheiro bash_profile
do Linux. Para carregar imediatamente estas variáveis após a instalação, execute:
source ~/.bash_profile