728x90
반응형

Postgresql에서 위치 정보를 저장하기 위해 PostGIS를 이용한다.

 

postgis를 사용하기 위해서 geos, proj.4를 먼저 설치한다.


geos는 Geometry Engine - Open Source의 약어로 좌표 계산에 사용되며, proj.4는 좌표 변환에 사용된다.

$ wget http://download.osgeo.org/geos/geos-3.3.6.tar.bz2
$ tar xjf geos-3.3.6.tar.bz2
$ cd geos-3.3.6
$ ./configure
$ make
$ sudo make install

$ wget http://download.osgeo.org/proj/proj-4.8.0.tar.gz
$ wget http://download.osgeo.org/proj/proj-datumgrid-1.5.zip
$ tar xzf proj-4.8.0.tar.gz
$ cd proj-4.8.0/nad
$ unzip ../../proj-datumgrid-1.5.zip
$ cd ..
$ ./configure
$ make
$ sudo make install

$ wget http://download.osgeo.org/postgis/source/postgis-2.0.2.tar.gz
$ tar xzf postgis-2.0.2.tar.gz
$ cd postgis-2.0.2
$ ./configure --with-geosconfig=/usr/local/bin/geos-config --without-raster
$ make
$ sudo make install

잘 설치가 됐는지 확인한다. SRID 값으로 4326은 WGS(World Geodetic System) 84를 의미한다.

 

전세계 지구 좌표를 표현하는 방식 중에 하나로 이를 이용하여 거리를 계산할 수 있다.

CREATE TABLE test_location (id SERIAL, name VARCHAR(24), geom geometry('POINT', 4326));

INSERT INTO test_location (name,geom) VALUES
('창경궁', ST_GeomFromText('POINT(126.99470043182373 37.58079163827203)', 4326));

SELECT id, name, ST_AsText(geom) from test_location;

 

반응형

'DB' 카테고리의 다른 글

[DB] SQLite  (0) 2020.01.25

+ Recent posts