반응형

리눅스 아파치 톰캣 설치,매니저 및 외부접속 설정, 지오서버 설치

1. wget http://mirror.navercorp.com/apache/tomcat/tomcat-8/v8.5.41/bin/apache-tomcat-8.5.41.tar.gz

2. tar -zxvf apache-tomcat-8.5.41.tar.gz 

3. cd apache-tomcat-8.5.41/

4. cd conf

5. vi server.xml

6.       <Connector port="사용할포트" protocol="HTTP/1.1"

            connectionTimeout="20000"
               redirectPort="8443" 
                address="0.0.0.0"
                useIPVHosts="true" />  
위와같이 수정

7. vi tomcat-users.xml

8.

<role rolename="manager-gui"/>

<role rolename="manager-script"/>

<role rolename="manager-status"/>

<user username="아이디" password="비밀번호" roles="manager-gui,manager-script,manager-status"/>
추가

9. vi /var/lib/postgresql/apache-tomcat-8.5.41/conf/Catalina/localhost/manager.xml 
로 없으면 파일 생성 있으면 수정

<Context privileged="true" antiResourceLocking="false" docBase="${catalina.home}/webapps/manager">

<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="^.*$" />

</Context>

 추가

10. cd /var/lib/postgresql/apache-tomcat-8.5.41/bin

11. ./startup.sh
로 서버 실행 후
인터넷 접속 브라우저로
http://hostaddr:port
로 톰캣 접속 되는지 확인

12. ./shutdown.sh
로 서버 종료

13. wget http://sourceforge.net/projects/geoserver/files/GeoServer/2.15.1/geoserver-2.15.1-war.zip

14. unzip geoserver-2.15.1-war.zip 

15. cp geoserver.war /var/lib/postgresql/apache-tomcat-8.5.41/webapps

16. cd /var/lib/postgresql/apache-tomcat-8.5.41/bin

17. ./startup.sh

18. 인터넷 접속 브라우저로
http://hostaddr:port/manager/html
로 접속하여 8번의 role 에 설정한 아이디 비밀번호 입력 후 로그인하여
war file to deploy항목에서 geoserver.war파일 선택 후 deploy버튼 클릭하여 배포를 완료하면 Applications 항목에 /geoserver를 확인

19. http://hostaddr:port/geoserver 
로 접속 되는지 확인

20. id : admin
    passwd : geoserver
로 접속 되는지 확인



참고한 페이지

https://elfinlas.tistory.com/369

https://zipeya.tistory.com/entry/GeoServer-%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0

http://blog.naver.com/PostView.nhn?blogId=ses1030&logNo=220823127740

https://bigpicture25.tistory.com/7

반응형
반응형

시작은 root 계정에서 시작하였습니다.

명령어들만 쭉 적었으니 잘 참고하시기 바랍니다.

 

1. echo "deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main" | sudo tee /etc/apt/sources.list.d/pgdg.list

2. wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -

3. sudo apt-get update

4. sudo apt-get install postgresql-11

5. sudo apt-get install pgadmin4

6. sudo apt-get install postgis

(Postgresql 을 설치하고 나면 관리자 계정 postgres 가 생성됨
이후로는 sudo su  - postgres 로 postgres 계정에서 진행)

7. psql

8. create extension postgis;

9. \q

(외부접속 허용 설정 https://moomini.tistory.com/90 참고)
10. sudo vi /etc/postgresql/11/main/postgresql.conf

11. #listen_address = 'localhost'  ->  listen_address = '*' 로 수정 후 저장 (앞에 # 지워야함)

12. sudo vi /etc/postgresql/11/main/pg_hba.conf

13. 맨 아래 #Allow replication connections from localhost, by  a user with the replication privilege 로 시작하는 부분 맨 아래에
host all all 0.0.0.0/0 md5
    추가

14. wget https://github.com/EnterpriseDB/mysql_fdw/archive/master.zip

15. unzip master.zip

16. cd mysql_fdw-master/

17. sudo apt-get install libpq-dev

18. sudo apt-get install mysql-client libmysqlclient-dev

19. sudo apt-get install libpq-dev postgresql-server-dev-11

20. make USE_PGXS=1

21. sudo make USE_PGXS=1 install

22. psql

23. create extension mysql_fdw;

24. CREATE SERVER mysql_server     
FOREIGN DATA WRAPPER mysql_fdw     
OPTIONS (host 'hostaddr', port '3306');

25. CREATE USER MAPPING FOR postgres
SERVER mysql_server
OPTIONS (username 'userid', password 'password1!'); //해당 DB 접속 가능한 아이디 비밀번호를 입력해야 함

26. IMPORT FOREIGN SCHEMA db_name FROM SERVER mysql_server INTO public;

------------------------------여기까지 작업 후 pgadmin4 으로 외부스키마 데이터 확인 -----------------------

mysql_fdw 예제
https://www.percona.com/blog/2018/08/24/postgresql-accessing-mysql-as-a-data-source-using-mysql_fdw/

참고자료
https://zetawiki.com/wiki/%EC%9A%B0%EB%B6%84%ED%88%AC_PostgreSQL_%EC%84%A4%EC%B9%98

반응형
반응형

Postgresql 을 ubuntu 에서

apt-get이 아닌 binary 로 직접 설치하려고

 

https://www.postgresdba.com/bbs/board.php?bo_table=C05&wr_id=26

 

커뮤니티 > 나만의 강좌및 팁 > 디비랑-6) PostgreSQL Binary/수동 설치 - All About PostgreSQL

## ## CentOS 6.4, PostgreSQL 9.2.4 community ## ## 1. PostgreSQL 다운로드     ㅇ http://www.postgresql.org/ftp/source 에서 확인. root# cd /usr/local/src root# wget http://ftp.postgresql.org/pub/source/v9.2.4/postgresql-9.2.4.tar.gz root# tar zxvf postgresql-9.2.4.t

www.postgresdba.com

이 블로그를 참조하여 설치를 하던 중

make check 를 하는 부분에서

이런 에러가 났습니다.

 

인터넷을 아무리 뒤져도 해결방법이 나오지 않아서

로그 파일을 찾아보니

이렇게 initdb는  postgres 계정만 실행할 수 있기 때문에 에러가 발생한 것을 알 수 있었습니다.

 

그래서

su - postgres

로 접속하여 다시 

make check

를 실행해보니

파일을 생성할 수 있는 권한이 없어서

Permission Denied

에러가 발생하였습니다.

 

그래서 다시 root 계정으로 돌아와서

chown -fR postgres:postgres ./*

로 postgres 계정에 읽고 쓸 수 있는 권한을 부여하니

오류가 해결되었습니다.

반응형
반응형

회사에서 최근 GIS 와 관련된 프로젝트를 맡게 되어서

공부를 하며 정리한 내용들을 포스팅 해볼까 합니다.

 

철저하게 개발자적 관점에서 GIS에 대해 아무것도 모르던 상태에서 공부한 것들이기 때문에

많은 오류가 있을수도 있으니 철저하게 지적해주시면 감사하겠습니다.

(이후로는 개인적으로 정리한 것이기 때문에 ~다 체를 사용하였으니 양해부탁드립니다... (-.-) (_ _) (-.-) 꾸벅)

 


우선 GIS는 기본적으로 공간데이터와 속성데이터로 이루어졌다.

지구상의 한 점의 위도, 경도값을 이용하여 POINT 를 만들고,

POINT 들이 모여 LINE 을 만들고,

LINE 들이 모여 POLYGON 을 만든다.

 

그리고 저 공간에 예를들면 고도는 얼마인지, 온도는 얼마인지, 지역 이름이 뭔지 같은 데이터들이 속성데이터들이다.

그리고 그 데이터들은 대부분 데이터베이스에 테이블로 관리된다.

위도

경도

이름

고도

온도

시간

37.5651171

126.9814028

서울시청

5m

20

20190517

이런식으로 관리되고

저 위의 테이블에서 위도 경도값이 공간데이터, 나머지들이 속성데이터이다.

물론 저 위도, 경도 값만으로는 개발을 할 수 없기 때문에 저 값을 다시 공간데이터로 바꾸어야 하지만

추후 다시 얘기하도록 하고 우선은 넘어가도록 하자..

 

공간데이터는 다시 크게 두 종류로 나누어 지는데

Vector 데이터와 Raster 데이터다.

벡터 데이터는 위도, 경도 절대좌표값 등을 이용하여 점,,면의 정보를 저장하는 방식이고,

래스터데이터는 격자(cell)로 이루어진 데이터로 항공영상, 위성영상 등의 정보를 표현하는데 용이하다.

 

벡터와 래스터의 예

 

공간데이터에서 가장 중요한 파일 포맷 중 하나가 .shp 라는 파일 포맷으로 된 SHAPEFILE 이다.

쉐이프 파일은 ESRI 사에서 개발한 GIS 프로그램에 사용되는 표준 포맷 파일이다. 거의 세계 공통으로 쓰이며 지리현상에 대한 기하학적 위차와 속성정보를 저장, 제공해주는 데이터 포맷이다.

보통 3~5 개의 파일묶음으로 구성되어 있으며 각각의 역할은

 

       .shp : 지리 사상의 기하학 정보를 저장

 

       .shx : 지리 사상의 기하학 정보의 인덱스를 저장(shp파일의 인덱스)

 

       .dbf : 지리 사상의 속성 정보를 제공하는 dBASE 파일(table)

 

       .prj : 좌표계의 정보가 담겨있음. 따라서 prj 파일이 없는 경우 별도로 좌표계를 지정해줘야함

 

       .qpj : prj 파일과 연동된 파일로 Qgis에서 쉐이프 파일을 활용할 때 필요하다. Qgis에서 prj 파일을 호출할 때

       좌표계를 혼동하는 오류가 발생해 이를 보완하는 역할

 

 

등의 역할을 한다. 이 중 prj와 qpj 는 생략되어있기도 하다.

 


내가 가지고 있는 위치정보를 서비스하기 위해선

위와 같은 과정이 필요하다.

우선 본인이 가지고 있는 공간데이터들을 Postgresql 이라는 데이터베이스에 저장한다.

MYSql 이나 오라클처럼 잘 알려진 데이터베이스를 놔두고 굳이 Postgresql 을 사용하는 이유는

바로 공간데이터에 관련된 함수를 가장 잘 제공하기 때문이다.

Postgresql 은 자체적으로 Postgis 라는 확장 프로그램을 제공하는데

Postgis 에서 공간데이터로처리할 수 있는 거의 모든 함수를 기본적으로 제공하기 때문에

다른 DB들보다 GIS를 서비스하기에 유용하다.

MYSql 도 자체적으로 공간함수를 제공하지만 직접 사용해본 결과

Postgresql 에 비해서 현저히 떨어진다.

게다가 Postgresql shp 파일도 바로 임포트 시킬 수 있다.

 

이렇게 Postgresql 에 저장된 데이터들을 개인적으로 내 로컬PC에서 다루고 가공하고 싶다면

QGIS 혹은 uDig 라는 툴을 사용하면 된다.

QGIS 밖에 사용을 해보지 않았기 때문에

만약 추후 포스팅을 하더라도 QGIS 위주로 포스팅을 하게될 것 같다.

QGIS 에서는 Postgresql 뿐만 아니라 다른 DB에 저장되어 있는 공간데이터들을 쉽게 불러올 수 있고

직관적으로 지도 위에 표시해주는데에 용이하다.

때문에 내가 가지고 있는 자료들을 개인적으로 시각화하여 다루고싶다면

QGIS 라는 툴을 사용하면 된다.

 

만약 공간데이터를 웹에 서비스 하고 싶다면

Postgis 에서 Geoserver 라는 서버를 거쳐 OpenLayers 라는 스크립트 라이브러리를 통해

웹브라우저에 표시하면 된다.

 

Geoserver는 지리공간데이터를 공유하고 편집할 수 있는 Java로 개발된 오픈소스 GIS 소프트웨어 서버로

상호운용성을 전제로 개발되었기 때문에, 개방형 표준을 사용하여 다양한 공간 데이터 소스를 서비스할 수 있다.

 

OpenLayers 는 자바스크립트 라이브러리의 일종으로

Geoserver 를 통해 생성된 레이어를 스크립트 언어를 이용하여 시각적으로 가공하여 웹 상에 표시할 수 있다. OpenLayers 의 장점은 우선 오픈소스이기 때문에

다양한 지도 (Google Maps, OSM, Bing Maps) 서비스들과 호환이 잘 되고

거의 모든 OGC(Open Geospatial Consortium) 표준을 지원하여 사용이 가능하다.

 OGC 표준을 간단하게 정리하면

 

   Web Map Service(WMS)

 - GIS 데이터에 접근하기 위한 인터페이스로써 웹을 통해 지도 이미지(형식)로 서비스함. 다시 말해, 데이터서버에 저장된 레이어 또는 분석을 통해 생성된 벡터 및 래스터 데이터를 시각화 하는 서비스

 

   Web Feature Service(WFS)

- 웹을 통해 벡터형식으로 GIS 데이터를 제공하기 위한 인터페이스로, 데이터서버에 저장된 벡터 레이어를 공간 및 속성조건을 이용해서 불러오거나 관리(피쳐의 추가, 수정, 삭제) 하기 위한 서비스

 

   Web Coverage Service(WCS)

-  웹을 통해 래스터 형식을 GIS 데이터를 제공하기 위한 인터페이스, 위성영상 등과 같은 자료를 서비스

   

-  Web Processing Service(WPS)

- 지리정보에 대한 다양한 처리 서비스(Geo-Processing Service)를 웹상에서 정의하고 접근할 수 있도록 하기 위한 인터페이스, 모든 OGC 표준 웹 서비스들과 상호호환성을 갖도록 정의

 

가 되겠다.

 

여기까지가 내가 이해한 GIS 의 개념적인 이해이다.

 

마지막으로 GIS 와 관련해서 정보를 얻기 좋은 사이트들은

 

http://www.gisdeveloper.co.kr/

https://www.slideshare.net/lenablue1212/postgis-37751544

https://www.slideshare.net/jinifor/5open-layers

https://www.slideshare.net/kimseonggeon/geoserver-30424128

https://www.spacein.kr/main/index.do

https://openlayers.org/en/latest/examples/

http://www.biz-gis.com/

 

등이 있다.

반응형
반응형

1.    좌표계와 타원체 정의

 

측지좌표계를 만들기 위해선 지구의 형상을 알아야 함. 즉 타원체가 필요. Bessel, Clark, hayford 등등 여러 학자들이 천문 측량을 통해 지구의 형상을 측정해 타원체를 규명 => 이러한 타원체들을 기준으로 지구상의 위치를 수치화한 것이 측지좌표계 (측지계와 좌표계는 약간의 의미 차이만 있을 뿐 거의 동일)

 

측지좌표계 : WGS84, UTM, TM

지구타원체 : GRS80, BESSEL

 

2.    GIS 좌표계의 종류

 

2-1 지역측지계

세계 측지계가 도입되기 전까지 지역별 측지계를 사용. 대표적으로 일본에서 Bessel 타원체가 일본의 지형과 가장 유사하다고 판단하여 동경측지좌표계를 제작. (동경좌표계를 제작할 때 쓰이는 Bessel 타원체의 투영법이 TM 도법이어서 TM 좌표계라고도 부름)

 

2-2 세계측지계

GPS 위성 24 대를 이용해 전 세계에 적용하기에 적합한 타원체를 확보하였고, 이것이 바로 GRS80 타원체. 그리고 지구의 중심의 위치를 결정하기 위하여 199711000초에 천체를 기준으로 지구의 중심의 위치를 기준으로 하는 XYZ 3차원 좌표 체계를 결정하고 이를 “ITRF 97” 이라고 명명

ITRF => International Earth Rotation and Reference System Service(오타 수정)

ITRF => International Terrestrial Reference Frame

따라서 전 세계적으로 GRS80 타원체에 ITRF 97 (현재는 ITRF 2000 ) 체계를 결합하여 위치를 결정하고, 이를 세계측지계로 사용. (우리나라에서도 최근까지 동경측지계를 사용하다가 현재 세계측지계로 바꿈)

2-3 WGS84 ITRF 2000 계의 차이

WGS84 타원체는 GRS80 타원체 정의 전 미국에서 GPS 위성의 궤도 운용을 위한 타원체였음, 이는 GRS80 타원체와 수치적으로 거의 차이가 없는 동일한 타원체임. 하지만 WGS84 계에 있어서 지구의 중심의 위치에 대해 미국에서 명확한 좌표를 제공하지 않고있고, 학자들의 연구에 의해 몇십년 전에는 WGS84계의 중심과 ITRF 계의 중심의 차이가 10미터 가량 발생한다는 학설이 있었고, 현재는 그 차이가 현저히 줄어들어 지구의 중심이 거의 동일하기 때문에 WGS84타원체와 WGS84 좌표계의 조합과 GRS80 타원체와 ITRF 2000 좌표계의 조합이 거의 동일하다고 판단되고 있음. WGS84 타원체의 경우 UTM 도법을 사용하여 투영하기 때문에 UTM 이라고도 부름

하지만 군사목적으로 발사된 GPS 위성의 운용이 미국의 권한이고, 지구 중심에 대한 명확한 좌표를 제공하지 않고 있으므로, 세계 측지계에는  GRS80 – ITRF2000 계를 활용함 하지만 해양, 항공 등에 있어서는 미국의 영향으로 인해 여전히 WGS84를 많이 활용.

 

 

 

출처

https://m.blog.naver.com/PostView.nhn?blogId=rparadise&logNo=80151886039&proxyReferer=https%3A%2F%2Fwww.google.com%2F

 

측지계

* 아래 내용은 [건설기술자 전문교육] 측지학 과목의 국토지리정보원 안기석 사무관님 교육을 토대로 작성...

blog.naver.com

http://www.biz-gis.com/index.php?mid=pds&document_srl=65754

 

좌표계 관련 설명 - 자료실 - 주식회사 비즈GIS (BIZ-GIS Inc.)

좌표계 관련해서 정리가 잘된 자료들, 네이버 백과사전 등등 참고하여 정리해 봤습니다.(참고한 자료를 그대로 인용한 부분도 많습니다.) 최근 좌표계에 흥미가 생겨 공부하는 샘 치고 정리한 자료여서 잘못된 부분이 있을 수 있습니다. 알려 주시면 수정하도록 하겠습니다.   1. 지오이드와 타원체   지도제작을 하기 위해서는 지구를 일정한 기준 하에 두어야 한다. 하지만 지구는 완전한 구(球)가 아니라 적도반지름이 ...

www.biz-gis.com

 

반응형
반응형

지역에서 수집한 각종 지리 정보를 수치화하여 컴퓨터에 입력·정보·처리하고, 이를 사용자의 요구에 따라 다양한 방법으로 분석·종합하여 제공하는 정보 처리 시스템을 말한다. 

오늘날 지리 정보 체계는 정책 결정의 일관성을 유지하고 합리적인 의사 결정을 내릴 수 있도록 자료를 제공하여 주기 때문에 지역 개발 대상지로서의 적합성 판정, 환경 문제의 원인과 대책 수립, 고급 수준의 국토 관리 등에 이용되고 있다.



반응형

+ Recent posts