저번 포스팅에서 gdal을 활용해서 postgis 테이블로 변환을 해봤다.
mysql 또한 spatial query 공간 쿼리를 지원하고 있어서 gdal로 shape 파일을 mysql로 변환하는 명령어에 대해 알아보고자 한다.
공간 쿼리에 대한 더 자세한 사항은 아래 링크를 참조하면 된다.
dev.mysql.com/doc/refman/5.7/en/spatial-function-reference.html
보통 gdal을 리눅스에 설치할 경우 mariadb-client에 관한 패키지가 설치되어 있어야 한다.
먼저 전체 명령어에 대해 알아보자
ogr2ogr -f MySQL MySQL:디비이름,host=localhost,user=유저,password=비밀번호 shape파일 경로 -nln 생성할 테이블 이름 -a_srs EPSG:4326 -update -overwrite -lco engine=MYISAM --config SHAPE_ENCODING "UTF-8"
a_srs은 변환할 좌표계 옵션
overwrite 기존 테이블이 존재할 경우 덮어쓰기
--skipfailure 예외처리 옵션 insert 도중 에러가 발생하면 그 레코드는 스킵한다.
dbf 파일을 geotools를 활용해서 속성 데이터에 접근할 수도 있지만 좀 더 편리하게 속성 데이터에 접근하기 위해서 shape파일을 컨버팅해준다.
물론 .dbf 파일이 같은 경로에 없으면 컨버팅 되지 않는 걸로 알고 있다.
다음 gdal 관련 포스팅에서는 좌표를 포함한 csv 파일을 shape 파일로 변환하는 것에 대해 알아보겠다.
'GDAL' 카테고리의 다른 글
postgresql 테이블을 geojson,gml 파일로 변환하기 (0) | 2021.06.15 |
---|---|
gdal shpaefile to database convert(postgis) (0) | 2021.04.15 |