반응형
__ postgis 설치했는데 shp2pgsql 없을 때
__ postgresql 버전 하나만 남기고 삭제__
작업전 상황
Postgresql12 에 Postgis3 설치 완료 상태
psql
쉘에서 확인하면 잘 들어가있는데 shp2pgsql
실행하려고 하니 찾을 수 없다고 뜸
알아본 결과 위 링크처럼 설치하면 Postgresql
안에서 Postgis
extension 은 사용 가능하나
전역적으로 Postgris
가 설치되어 있지않기에 shp2pgsql
은 사용 불가
해결방법 - Postgis 전역설치
# shp2pgsql 깔려있는지 확인 / 위치확인
shp2pgsql
which shp2pgsql
# 전역설치 시작
sudo apt-get install postgis
설치완료 아래처럼 뜨면 성공
엥? Postgres 여러버전 중 하나만 남기고 삭제
위처럼 전역설치하니 이번에는 shp2pgsql
사용되고 다 잘되는 듯 했으나
위 사진처럼 뜨고 아래 경로로 가보니 Posgresql 16 이 알아서 깔려있음 (번들로 깔려온듯)
이거 지우는 방법
# 현재 설치된 psql 패키지 목록 확인
dpkg -l | grep postgresql
# 아래 3개 순차적으로 삭제
# --purge 는 패키지를 제거하면서, 관련된 설정 파일과 모든 데이터를 완전히 삭제
sudo apt-get remove --purge postgresql-16
sudo apt-get remove --purge postgresql-client-16
sudo apt-get remove --purge postgresql-16-postgis-3-scripts
지움
# 있는거 버전 확인
shp2pgsql
pgsql2shp
# 여기에 원래 버전만 남아잇는거 확인
cd /var/lib/postgresql/
팁
- psql 접속 및 설정
# 쉘 접속
psql -U postgres
# 설정수정 및 재실행
cd /etc/postgresql/12/main/
sudo vi pg_hba.conf
sudo vi postgresql.conf
sudo systemctl restart postgresql
- shp2pgsql 명령어
# shp 파일로 sql 생성
shp2pgsql -I -s 5186 /home/test/shp/ETL_OCUP_C_PS.shp public.test > test.sql
# sql 문 실행
psql -U postgres -d postgres -f /home/test/test.sql
반응형
'Server > Linux' 카테고리의 다른 글
[CentOS] 폐쇄망 yum 레포지토리 구현 (로컬) (0) | 2024.11.27 |
---|---|
[우분투] 도커 설치하기 (0) | 2024.07.03 |
[우분투]리눅스 노드 원하는 버전 설치 (1) | 2024.07.03 |
[우분투] 리눅스 IP 변경 방법 (0) | 2024.07.03 |
[우분투] 리눅스 Postgresql, Postgis 설치 (0) | 2024.07.03 |