설치운영체제 centos8 stream 버전
postgis를 설치하기 위해서는 순서대로 의존성을 설치후 마지막에 설치를 하여야 한다.
설치 버전 정보
1. postgresql-15.0
2. geos-3.8.0
3. proj-6.2.1
4. cgal-4.14.2
5. sfcgal-v1.3.7
6. gdal-3.5.3
7. postgis-3.3.1
직접 소스를 컴파일 해서 설치 하는 경우 os배포판과 분리 하기 위해서 각 패지지 설치 경로를 만든다.
1. geos 소스 컴파일 설치
./configure --prefix=/apps/geos
make all
make install
2. proj6.6 소스 컴파일 설치
sqlite 의존성 패키지를 먼저 설치한다.
yum install sqlite-devel.x86_64
./configure --prefix=/apps/proj
make all
make install
잘 설치 되었는지 설치 라이브러리 확인
ldd /apps/proj/bin/proj
3. cgal 설치
의존성 설치
yum -y install epel-release
yum -y install cmake3
yum install gmp-devel.x86_64
yum install mpfr-devel.x86_64
yum install boost-devel.x86_64
yum install PackageKit-Qt5-devel.x86_64
cmake3 -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/apps/cgal
make all
make install
4.sfcgal 설치
CGAL_DIR=/apps/cgal cmake3 -DCMAKE_INSTALL_PREFIX=/apps/sfcgal -DCMAKE_BUILD_TYPE=Release .
추가후에 아래 명령어 실행하여 컴파일 한다.
LD_RUN_PATH=/apps/cgal/lib64 make all && make install
설치후에 sfcgal 라이브러리 참조 확인
ldd /apps/sfcgal/lib64/libSFCGAL.so.1.3.7
libCGAL_Core,libCGAL 이 두 라이브러리가 소스를 컴파일해서 설치한 위치의 라이브러리를 참조해야 합니다.
5. GDAL 설치
가장 거대한 라이브러리라서 컴파일 시간이 아주 오래 걸림
./configure \
--prefix=/apps/gdal \
--with-proj=/apps/proj \
--with-geos=/apps/geos/bin/geos-config \
--with-sfcgal=/apps/sfcgal/bin/sfcgal-config
LIBPNG support: no
$(LIBGDAL): $(GDAL_OBJ:.o=.lo)
$(LD) $(LDFLAGS) $(LIBS) -o $@ \
$(wordlist 1,$(MIDL),$(SORTED)) \
$(wordlist $(MIDR),$(words $(SORTED)),$(SORTED)) \
-rpath $(INST_LIB) \
-R /apps/sfcgal/lib64 \
-no-undefined \
-version-info $(LIBGDAL_CURRENT):$(LIBGDAL_REVISION):$(LIBGDAL_AGE)
make all
make install
5. 마지막 postgis 설치
의존성 설치
yum -y install json-c-devel protobuf-c-devel
yum install libxml2-devel.x86_64
/* 환경설정 명령이 기존과 좀 다름 복사해서 필요한 부분 수정후 실행 */
PKG_CONFIG_PATH=/apps/proj/lib/pkgconfig:/usr/lib64/pkgconfig \
LDFLAGS="-Wl,-rpath,/apps/geos/lib:/apps/proj/lib:/apps/sfcgal/lib64:/apps/gdal/lib -Wl,--enable-new-dtags" \
./configure \
--with-pgconfig=/apps/postgresql-15.0/bin/pg_config \
--with-geosconfig=/apps/geos/bin/geos-config \
--with-gdalconfig=/apps/gdal/bin/gdal-config \
--with-sfcgal=/apps/sfcgal/bin/sfcgal-config
make all
make install
POSTGIS 모듈을 데이터베이스에서 사용하기
CREATE EXTENSION POSTGIS
postgis 모듈이 잘 설치 되었다면, 데이터베이스 서버에서 CREATE EXTENSION 명령으로 해당 모듈을 등록해서 사용하면 됩니다.
psql 접속
GDAL 드라이버
에러발생시 확장팩 설치
create extension postgis_raster;
이런 상황에서는 st*gdal* 관련 함수가 정상 작동하지 않습니다. 그래서, 해당 서버는(또는 데이터베이스는, 또는 세션은) 사용할 수는 gdal 이미지 처리용 드라이브를 지정하는 작업을 해야합니다.
SET postgis.gdal_enabled_drivers = 'ENABLE_ALL';
export POSTGIS_GDAL_ENABLED_DRIVERS=ENABLE_ALL
'데이터베이스 > Postgresql' 카테고리의 다른 글
postgresql + pgpool-ii 셋팅 (0) | 2023.02.09 |
---|---|
[PostgreSql] 오라클 INSTR = POSITION (0) | 2022.06.30 |
[PostgreSql] 오라클 WM_CONCAT와 같은 기능 (0) | 2022.06.30 |
[PostgreSql] 특정문자를 짤라서 컬럼으로 변경 (0) | 2022.06.30 |
[PostgreSql] pg_cron job schedule 등록방법 (0) | 2022.06.29 |
댓글