Estabelecer Conexão entre MapServer e PostGIS

Tenho recebido muitos e-mails de usuários do Portal ClickGeo questionando sobre como criar uma conexão do MapServer com o PostGIS, ou seja, visualizar uma tabela espacial no MapServer. Neste tutorial vou mostrar um exemplo de código representando o arquivo mapfile, (*.map) utilizado para definição de alguns parâmetros do que será visualizado no MapServer.

INTEGRAR MAPSERVER COM BASE DE DADOS POSTGIS

Os textos mostrados após o sinal # indicam que estes são apenas comentários e, portanto, não fazem parte do código.

Vamos ao código:

MAP # Inicio do Mapfile
NAME 'Municipios'
SIZE 600 400
EXTENT -38.77 -8.3 -34.79 -6.03
UNITS DD
IMAGECOLOR 200 254 199

LAYER # Início do Layer
NAME 'Municipios'
STATUS Default
TYPE POLYGON
CONNECTIONTYPE postgis
CONNECTION "dbname=paraiba user=postgres host=localhost password=postgres"
DATA "the_geom FROM municipios USING UNIQUE gid USING SRID=4291"
CLASS # Início do parâmetro Class
NAME 'Municipios'
STYLE # Início do parâmetro Style
COLOR 200 254 199
OUTLINECOLOR 0 153 0
END # Fim do parâmetro Style
END # Fim do parâmetro Class
END # Fim do parâmetro Layer

END # Fim do Mapfile

Vamos destacar inicialmente o significado do trecho abaixo.

LAYER # Início do Layer
NAME 'Municipios' # Nome do Layer
STATUS Default # "Default" indica que o mapa será exibido.
TYPE POLYGON # Tipo de geometria contida na tabela espacial.
CONNECTIONTYPE postgis # Tipo da conexão.
CONNECTION "dbname=paraiba user=postgres host=localhost password=postgres"
DATA "the_geom FROM municipios USING UNIQUE gid USING SRID=4291"

Para compreender melhor o significado do trecho mostrado acima, vamos “quebrá-lo”:

CONNECTION # Parâmetro que define o início da conexão.
dbname=paraiba # Nome do banco de dados do PostGis.
user=postgres # Nome de Usuário.
host=localhost # Endereço da máquina onde está o banco.
password=postgres" # Senha de acesso ao banco.
DATA # Detalhes sobre o dado espacial.
"the_geom # Nome da coluna onde está armazenada a geometria.
municipios # Nome da tabela a ser visualizada.
SRID=4291" # Código de referência espacial para tabela.

Vamos destacar inicialmente o significado do trecho abaixo.

LAYER # Início do Layer
NAME 'municipios' # Nome do Layer
STATUS Default # "Default" indica que, por padrão, o mapa será exibido.
TYPE POLYGON # Tipo de geometria contida na tabela espacial.
CONNECTIONTYPE postgis # Tipo da conexão.
CONNECTION "dbname=paraiba user=postgres host=localhost password=postgres"
DATA "the_geom FROM vias USING UNIQUE gid USING SRID=29185"
<pre>
Para compreender melhor o significado do trecho mostrado acima, vamos “quebrá-lo”:
CONNECTION # Parâmetro que define o início da conexão.
dbname=paraiba # Nome do banco de dados do PostGIS.
user=postgres # Nome de Usuário.
host=localhost # Endereço da máquina onde está o banco.
password=postgres" # Senha de acesso ao banco.
DATA # Detalhes sobre o dado espacial.
"the_geom # Nome da coluna onde está armazenada a geometria.
municipios # Nome da tabela a ser visualizada.
SRID=4291" # Código de referência espacial para tabela.
<pre>
Se seguir este modelo sua conexão estará pronta! Alguma dúvida? Veja abaixo a visualização dos dados no MapServer:
Estabelecer Conexão entre MapServer e PostGIS

Você pode baixar um shapefile com a divisão municial do Estado da Paraíba, afim de exercitar o que foi mostrado no tutorial acima. Fique à vontade para enviar suas dúvidas.

Leitura complementar:

Assine nosso FeedAssine nosso Feed e receba nossas atualizações por e-mail. Curta nossa página no Facebook [PortalClickGeo] e siga nosso Twitter [@ClickGeo] para continuar atualizado sobre o Mundo das Geotecnologias.

4 Comentários


  1. ola, muito bom o exemplo mais eu gostaria de saber se tem um jeito de acessar os dados das tabelas porque dessa maneira aqui apareceu apenas como imagem com os dados inacessiveis

    Responder

  2. Fala Anderson,

    …cara, show de bola essa dica.
    Tanto pelo cuidado em esclarecer a passar o macetes como pela generosidade de compartilhar esse conhecimento.

    Quando puder, me indique um curso voltado para essas ferramentas. Tenho procurado. Gostaria de desenvolver aplicações com mapas, banco de dados e java, e tenho ainda dúvidas em relação quais seriam as ferramentas adequadas.

    Abraço.

    Responder

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *