Pular para o conteúdo principal
Versão Next

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.

nota

Esta opção permite ao PgSmart executar o comando initdb do PostgreSQL, passando as opções necessárias para a criação dum cluster.

nota

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.

Pré-requisitos
Sintaxe do Comando
Terminal input
   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.
Execução Não Interativa

A execução não interativa está desativada para esta operação.

Execução Interativa
Terminal input
   pgsmart db init
  1. Selecione o Agente do PgSmart pretendido (ou Registar um novo Agente).

  2. Selecione a versão principal do PostgreSQL de entre as identificadas.

  3. Indique o Diretório de dados da instância (PGDATA).

  4. Indique o Diretório de logs transacionais (WALDIR).

  5. Indique a Codificação de caracteres padrão (ENCODE).

  6. Selecione a Representação regional padrão de dados e valores monetários (LOCALE).

  7. Indique a Porta da instância (PGPORT).

  8. Selecione as Interfaces de rede para acesso (LISTEN_ADDRESSES).

  9. Confirme se pretende exportar o template de configuração (opcional).

  10. Confirme a criação da instância.

Figura 1 - Inicialização da Instância da Base de Dados
Figura 1 - Inicialização da Instância da Base de Dados
nota

Os valores Default podem ser aceites (<ENTER>) ou alterados.

nota

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.

nota

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:

Terminal input
   pgsmart db init --pgversion 15
Criação do cluster utilizando templates de inicialização

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:

Terminal input
   pgsmart db init -t
  1. Selecione o Agente do PgSmart (ou Registe novo Agente).

  2. Selecione o template desejado.

  3. 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
    Figura 2 - Inicialização da Instância da Base de Dados - Template
nota

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.

Notas Finais
nota

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:

Terminal input
   source ~/.bash_profile