Inicializando o cluster Database

Antes de qualquer atividade, é necessário inicializar uma área de armazenamento do banco de dados no disco.

Chamamos esta área de cluster.

Após a inicialização, o cluster conterá um banco de dados chamado postgres, entendido como default para uso pelos utilitários, usuários e aplicativos.

Em termos de sistema de arquivos, o cluster é um diretório único, sob o qual todos os dados serão armazenados. Chamamos ele de diretório de dados ou área de dados.

Nesta opção, o PgSmart ativa o comando initdb do PostgreSQL, repassando as principais opções necessárias à criação de um cluster.

Ao inicializar o cluster, será criada, pelo Pgsmart, a nova estrutura de diretórios que corresponderá, no Fyle System, à instância do banco de dados que será acessada por meio da porta de comunicação informada e onde todos os dados serão armazenados.

O Pgsmart manipula os arquivos, inserindo o número da porta no nome do arquivo, visando facilitar a execução do serviço e a eventual manipulação manual pelo usuário.

Pré-Requisitos:

Antes de iniciar a criação do cluster, é necessário verificar se os binários foram instalados

psql --version

Sintaxe do Comando:

pgsmart cluster init [FLAGS]

Flags:

  • -b, --bin ⇒ Diretório de instalação dos binários do PostgreSQL.

  • -d, --data ⇒ Diretório de dados da instância PostgreSQL.

  • -h, --help ⇒ Ajuda.

  • -t, --template ⇒ Indica que é para utilizar um template de inicialização da instância.

Inicializando o cluster pelo Modo Interativo

pgsmart cluster init
  1. Selecionar o agente do PgSmart (ou registrar novo Agente).

seleciona agente pgsmart
  1. Informar o Diretório de instalação dos binários do PostgreSQL (PGBIN).

  2. Informar o Diretório de dados da instância PostgreSQL (PGDATA).

  3. Informar o Diretório de logs transacionais (WALDIR)).

  4. Informar a codificação de caracteres padrão (ENCODE).

  5. Selecionar a representação regional padrão de dados e valores monetários (LOCALE).

  6. Informar a porta da instância ($PGPORT).

  7. Selecionar as interfaces de rede por meio das quais se dará o acesso (LISTEN_ADDRESSES)

  8. Confirmar se deseja Exportar o template, com toda a configuração de instância feita, para reuso posterior (Opcional).

  9. Confirmar a criação da Instância.

informa dados instancia

Os valores <Default> podem ser confirmados(<ENTER>) ou modificados pelo usuário.

O Diretório de Dados da Instância, o Diretório de Logs transacionais e o número da porta da instância devem ser únicos para cada instância.

O Diretório de instalação de binários e o Diretório de dados da instância somente serão solicitados se as variáveis de ambiente $PGDATA e PGBIN não forem encontradas pelo Pgsmart. Estas variáveis podem ser "passadas", ainda, pelas opções de comando -b e -d como argumentos do comando.

Resultado da inicialização do Cluster

informa resultado init
informa resultado start

Criando o cluster usando os templates de inicialização.

Ao inicializar o cluster, o PgSmart pode salvar os dados dessa inicialização, fornecendo um ponto de partida para operações de inicialização posteriores.

Estes templates ficam guardados dentro do diretório do Pgsmart opt/pgsmart-client/templates, no formato JSON.

Estes templates são identificados pelo timestamp relativo à data e hora de criação e podem ser reutilizados em uma outra configuração, de outro servidor, por exemplo, bastando, para isto, que o template desejado seja copiado para dentro do diretório templates do servidor alvo.

O comando para inicialização do cluster, usando templates é:

pgsmart cluster init -t
  1. Selecionar o agente do PgSmart (ou registrar novo Agente).

seleciona agente pgsmart
  1. O template desejado pode ser selecionado na lista apresentada, de templates disponíveis.

seleciona template
  1. Após a confirmação do template, as informações abaixo serão apresentadas com base no template selecionado:

    • O Diretório de instalação dos binários do PostgreSQL ($PGBIN).

    • O Diretório de dados da instância PostgreSQL ($PGDATA)

    • O Diretório de logs transacionais (WALDIR).

    • A codificação de caracteres padrão (ENCODING).

    • A representação regional padrão de dados e valores monetários (LOCALE)

    • A porta da instância ($PGPORT).

    • As interfaces de rede por meio das quais se dará o acesso (LISTEN_ADDRESSES)

    • Confirmar o template selecionado.

    • Confirmar a criação da instância PostgreSQL.

confirma template

Para criação de uma nova instância no mesmo servidor (modo localhost), as variáveis config_pgdata, initdb_waldir e a porta de conexão devem ser alteradas de forma manual, acessando diretamente o arquivo do template desejado.

O PGSmart define variáveis de ambiente no arquivo bash_profile do Linux, para o usuário, que podem ser recarregadas nas sessões do Linux quando realizado um novo Login. Para carregar imediatamente estas variáveis execute o comando abaixo ao final da instalação (execução única):

 source ~/.bash_profile

Resultado da inicialização do Cluster

informa resultado init
informa resultado start