Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Nota
titleAtenção

Este documento tem como objetivo auxiliar analistas na instalação e configuração básica do banco de dados PostgreSQL em ambientes locais, de desenvolvimento e/ou teste, na plataforma Windows. A instalação e configuração em ambientes de produção não é o foco deste documento.

Informações
titlePré-requisitos
  • Conhecimento do Protheus;
  • Noções básicas de instalação de aplicativos em Windows;
  • Familiaridade com terminologias de banco de dados e novas tecnologias.
Informações

Neste manual, demonstramos a instalação do PostgreSQL 12, última versão homologada até a data de publicação deste documento.

Aviso
titleAtenção - Ambientes de produção

Em ambientes de produção que o PostgreSQL esteja em ambiente Linux, o ideal é ter um DBA para apoiar na instalação e configuração, por conta de configurações específicas de cenário e tuning no banco de dados.

Informações
titlePreparativos para a instalação
  • Certifique-se de ter espaço em disco suficiente para a instalação. Uma pasta temporária pode ser utilizada para baixar os arquivos de instalação, que podem ser excluídos ao final do procedimento;
  • Obtenha o binário de instalação do PostgreSQL neste link;
  • Obtenha o instalador do ODBC neste link. Neste manual, utilizamos o msi;
  • Baixe o arquivo mais recente disponibilizado.

Instalando o PostgreSQL

Execute o instalador em modo Administrador:


Clique em Next para iniciar o assistente:


Especifique o local de instalação do PostgreSQL:


Desmarque a opção Stack Builder. Clique em Next:

Nota

A opção Stack Builder permite que sejam instalados produtos adicionais ao PostgreSQL como, por exemplo, o driver ODBC para uso com este banco. A instalação do driver ODBC para PostgreSQL será abordada mais à frente neste manual.


Especifique o local onde os dados da instância serão armazenados:


Defina a senha para o usuário postgres:

Informações

O usuário postgres é default da instalação, possuindo privilégios administrativos na instância. Defina uma senha para este usuário e armazene-a em um local seguro. Esta senha será necessária para qualquer operação administrativa no banco.

Nota

O PostgreSQL é um produto case sensitive, ou seja, ele diferencia letras maiúsculas de minúsculas, portanto fique atento com este detalhe no momento de informar nomes de usuários, tablespaces, databases e senhas. Não utilize caracteres acentuados, caracteres especiais ou espaço na definição destes objetos.


Defina a porta de comunicação com a instância PostgreSQL:

Nota

Essa porta será usada pelo Banco para prover comunicação externa como, por exemplo, com o driver ODBC; a porta padrão (e sugerida) é 5432. Pode-se especificar qualquer outro valor, desde que não esteja em conflito com outras portas já utilizadas em seu sistema. Salve esta informação em um local seguro.


Defina o padrão de idioma/caracteres da nova instância PostgreSQL. Selecione a opção C e clique em Next:


Será apresentado o resumo das configurações realizadas. Clique em Next para prosseguir:


Clique em Next para iniciar a instalação:


Aguarde o assistente concluir a instalação. Clique em Finish para encerrar o assistente.

Instalando o driver ODBC

É necessária uma conexão ODBC para realizar a comunicação com a database. O padrão ODBC é usado por todos os sistemas operacionais e é um método de acesso seguro.

Obtenha o instalador do ODBC neste link. Neste manual, utilizamos o msi. Baixe o arquivo mais recente disponibilizado.


Navegue até o final da página e selecione o binário conforme sua arquitetura (32 ou 64):


Informações

O último arquivo, que não especifica arquitetura, irá instalar as duas versões.

Informações
titleInformações

A instalação do driver ODBC para PostgreSQL pode ser realizada através da opção Stack Builder, presente no assistente de instalação do próprio PostgreSQL. A decisão de como instalar o driver fica à critério do usuário. A opção Stack Builder só é apresentada pelo assistente quando se está realizando uma instalação completa do PostgreSQL, portanto, também é bom saber como instalar o driver a partir do binário obtido no site oficial da plataforma.


Descompacte o arquivo zip baixado, clique com o botão direito no arquivo .msi e clique em Instalar:


Clique em Next para iniciar: 


Leia os termos da licença antes da instalação. Após a leitura, marque a opção de aceite e clique em Next:


Selecione a opção ODBC Driver. Clique em Next:


Clique em Install para começar a instalação:


Caso seja solicitado, permita a instalação do ODBC. Ao final da instalação, finalize o assistente.

Criando uma database PostgreSQL

É necessário preparar a instância para poder criar uma database. Para isso será utilizado o aplicativo pgAdmin, que é instalado junto com o produto.

Localize o aplicativo e execute-o:

Informações
As versões mais recentes do pgAdmin são aplicações web, porém possuem as mesmas funcionalidades das versões Desktop.


A interface da aplicação web será esta, ou similar a esta:


Informações
Antes de criarmos uma database, é necessário criar um usuário e uma tablespace para receber os arquivos físicos.

Criando um usuário

O usuário será o dono (owner) da database e todos os objetos criados dentro dela, como tabelas, stored procedures, views, etc, serão associados a ele. É através deste usuário que será feito o acesso à database. No momento em que se cria um usuário, é necessário definir uma senha também; somente com este conjunto de informações será possível acessar a instância PostgreSQL e gerenciar a database.

Uma tablespace é uma unidade lógica associada à um local físico no disco. Esta é a forma como o PostgreSQL gerencia o armazenamento dos dados que compõem uma database. Podemos criar várias tablespaces e associar cada uma delas à um usuário diferente.

Dica
titleBoas práticas

É importante ter em mente que um usuário criado dentro da instância pode ser dono de uma ou mais databases. Considere ideal ter um usuário diferente para cada nova database que você precisar criar. Também é aconselhável utilizar uma tablespace diferente para cada database. Assim, sua instância estará organizada e a manutenção se tornará mais simples.


Expanda o ícone de Servers, e clique em PostgreSQL 12. Este número pode variar conforme a versão do banco de dados instalado.

Digite a senha definida para o usuário postgres para se conectar ao servidor:


Clique com o botão direito em Login/Group roles, selecione Create > Login/Group Role...


A janela para criação de login será similar a esta:


Defina um nome para a conexão. Na aba Definition, defina a senha da nova conexão. Lembre-se de salvar esta senha em um local seguro.


Na aba Privileges, marque as opções:

  • Can login = Yes
  • Super User = Yes
  • Create roles = Yes
  • Create databases = Yes
  • Inherit rights from the parent roles = Yes

Os privilégios do usuário serão fundamentais para que o acesso e uso da instância ocorram normalmente. Após realizar as definições, clique em Save para criar o usuário.

Informações

Para mais informações sobre os itens da tela de criação de Login/Group Role, confira a documentação do pgAdmin.

Criando uma Tablespace

Agora é preciso definir o local onde os arquivos de dados serão armazenados. Para isso teremos que criar uma tablespace. Clique com o botão direito no item Tablespaces. No menu suspenso selecione Create > Tablespace. Surgirá uma nova janela:


Na aba General, defina um nome para a sua tablespace e selecione o usuário criado anteriormente para o owner.


Na aba Definition, defina o local (pasta/diretório) de armazenamento dos arquivos da database.

Dica
titleDica

Crie uma estrutura de pastas para receber os arquivos. É útil configurar um local padrão para suas databases. O local onde os arquivos serão armazenados deve estar com direitos de leitura e gravação (read/write) para o usuário que está ativo no computador. Se ocorrerem problemas com a criação da tablespace, certifique-se de ter estes direitos configurados para os usuários corretos.


Após realizar as definições clique em Save para criar a tablespace.

Informações

Para mais informações sobre os itens da tela de criação de tablespace, confira a documentação do pgAdmin.

Criando a database

Clique com o botão direito do mouse sobre Databases. No menu suspenso selecione Create > Database. Surgirá uma nova janela:


Na aba General, preencha o nome da database e defina o owner como o usuário recém-criado:


Na aba Definition, selecione o Encoding WIN1252, o Template template0, a tablespace criada, a collation C, e o character type C. 

Clique em Save para criar a database. Clique com o botão direito do mouse no item Databases, e clique em Refresh. Verifique se sua database está relacionada no item Databases.

Dica

Selecione os valores definidos neste manual para criar a database. Outros valores e parâmetros podem interferir no funcionamento do Protheus.

Informações

Para mais informações sobre os itens da tela de criação de Database, confira a documentação do pgAdmin

Agora é necessário configurar uma conexão ODBC.

Criando uma conexão ODBC com o banco de dados

Execute o utilitário do Windows ODBC Data Sources, de acordo com a sua arquitetura (32 ou 64 bits). 

A interface será similar a esta:


Para criar uma nova conexão devemos utilizar a aba System DSN (DSN de Sistema). Dentro desta aba clique no botão Add/Adicionar. Surgirá uma nova janela:

Note que podem existir inúmeros drivers instalados. Cada um possibilita a conectividade com um tipo de banco diferente, por exemplo SQL Server, Oracle etc. As informações nesta janela podem variar, de acordo com o que já foi instalado previamente no equipamento. Fique atento para selecionar o tipo de driver corretamente.

Se o ODBC instalado foi o de ambas as arquiteturas, as opções serão similares à imagem: 

- PostgreSQL ANSI

- PostgreSQL ANSI(x64)

- PostgreSQL Unicode

- PostgreSQL Unicode(x64)

Se apenas o ODBC x64 foi instalado, haverão duas opções disponíveis para PostgreSQL:

- PostgreSQL ANSI(x64)

- PostgreSQL Unicode(x64)

Selecione o padrão PostgreSQL ANSI, caso sua arquitetura seja de 32 bits, ou PostgreSQL ANSI(x64), caso seja de 64 bits, e clique em Finish/Concluir.

Nota
titleAtenção

Atente-se à arquitetura do driver selecionado caso haja mais de uma opção. O padrão para uso com Protheus é ANSI.  


Surgirá uma nova janela. É nela onde informaremos os dados para a conexão com o PostgreSQL:


Utilize as seguintes definições para a conexão ODBC:

Data Source = defina um nome para esta conexão ODBC. Aqui vale a mesma regra de nomenclatura usada para o PostgreSQL. Não use caracteres acentuados, especiais nem espaço.

Description = fique à vontade para acrescentar um breve comentário neste campo. É meramente descritivo e não é obrigatório.

Database = especifique o nome da database criada no PostgreSQL anteriormente. É muito importante colocar o nome da mesma forma como ele está dentro da instância, pois como foi descrito anteriormente, o PostgreSQL é case sensitive e diferencia letras maiúsculas de minúsculas.

SSL Mode = por padrão já vem desabilitado (disable). Não modifique este valor.

Server = deve ser informado o endereço IP ou o nome do computador onde a instância PostgreSQL está instalada. Como o escopo deste documento trata de ambiente local, pode-se utilizar a palavra localhost. Se a instância estiver localizada em um outro computador, especifique o IP ou nome do computador remoto.

Port = é a porta de comunicação com a instância PostgreSQL. Lembre-se que no momento da instalação do produto esta informação foi solicitada. A porta padrão é 5432.

User Name = é o nome do usuário criado na instância PostgreSQL. É com este usuário que o acesso à database será realizado. É o mesmo usuário usado na criação da database (veja os passos descritos na seção Como criar uma database PostgreSQL).

Password = é a senha do usuário da database. É a mesma senha usada na criação do usuário dentro da instância PostgreSQL.

Após fornecer todos os campos, clique em Test para verificar se a comunicação com a database será realizada ou não. Se os dados fornecidos estiverem corretos, será exibida a seguinte janela:

Se houver algum problema de comunicação, verifique os dados e tente novamente.

Após realizar o teste com sucesso, clique em Save para salvar a conexão ODBC.

Configurando o DBAccess para acesso ao banco de dados

Para concluir o processo de comunicação com a database PostgreSQL, será necessário definir uma conexão dentro do DBAccess.

Acesse o utilitário DBMonitor:


Selecione a aba Configurações e acesse a aba PostgreSQL:


Clique no botão Novo. Surgirá uma janela solicitando um nome para a conexão:

Forneça um nome e clique em OK.

Dica
titleDica

O nome da conexão DBAccess pode ser o mesmo nome usado na conexão ODBC. Ao utilizar o mesmo nome em sua database, conexão ODBC e conexão DBAccess, não haverá confusão no momento de montar seu ambiente.


A janela anterior será reapresentada com a aba Ambiente preenchida. Em Nome e Senha, utilize o nome de usuário (user name) e senha (password) utilizados na conexão ODBC.


Clique em Salvar

Sempre que uma conexão é criada, ela deve ser testada para a validação de seu acesso. Selecione a aba Assistentes e clique em Validação de Conexão:


No assistente de conexão, clique em Avançar. Na tela seguinte, selecione o banco de dados Postgres:


Clique em Avançar. Na próxima tela, insira o nome do ambiente (informado ao criar o ambiente no DBAccess):


Clique em Finalizar. Se tudo estiver configurado corretamente, a mensagem exibida será "Conexão Ok!":

Ao realizar o teste pela primeira vez em uma database vazia, o próprio DBAccess fará a criação de algumas tabelas, comprovando que a database está acessível e pronta para uso. A partir deste momento, basta configurar corretamente seu ambiente no arquivo de configuração appserver.ini para que o Protheus possa utilizá-la.