오늘은 리눅스(Linux)에서 쉘 스크립트(shell script)를 이용하여 PostgresqlDB query 실행하는 방법에 대해 포스팅 하려고 합니다. vi 편집기로 쉘 확장자(.sh)의 파일을 생성 및 편집합니다. vi testdb.sh 내용에 간단한 조회에 대한 아래와 같은 구문을 넣어보겠습니다. su - [DB계정] -c 'psql -d [DB명] -c [query]' su - postgres -c 'psql -d "clovirvdi_multi_nic" -c "select * from cr_vcenter"' 저장을 하고 스크립트를 실행하면 쿼리에 대한 결과를 확인 할 수 있습니다. ./testdb.sh [root@clovirvdi scripts]# ./testdb.sh vcenter_seq |..
Develope
오늘은 리눅스(Linux)의 DNS 설정 방법에 대해 포스팅을 하려고 합니다. 먼저 리눅스(Linux) DNS를 설정하는 파일인 resolv.conf 파일을 열어서 확인 및 설정을 하도록 합니다. vi /etc/resolv.conf resolv.conf에서는 아래와 같은 설정이 있습니다. nameserver 뒤에 DNS서버 IP를 입력하면 됩니다. nameserver가 여러개일 경우에 바로 아래 nameserver [IP] 형태로 추가하고 저장하면 됩니다. # Generated by NetworkManager # nameserver [IP] nameserver 172.16.15.34 nameserver 172.33.32.11 마지막으로 network를 재시작 해줍니다. service network res..
오늘은 tomcat heap memory 확인 및 설정 방법에 대해 포스팅 하겠습니다. heap memory를 확인하고 설정하는 이유는 tomcat이 실행되다가 GC(Garbage Collector)가 사용하는 heap memory를 모두 사용하여 memory leak 즉 메모리 누수가 발생하기 때문에 heap memory size를 늘려줘야 할 수 있습니다. tomcat memory 튜닝이라고 보면 되는데 무조건 많이 늘리는 것이 좋지는 않습니다. 사용하는 tomcat service의 정도에 따라 맞추어 tomcat memory를 튜닝해야 합니다. 먼저 tomcat heap memory 확인 방법을 알아보겠습니다. 아래 실행한 명령어 ps -aux | grep tomcat를 입력하여 실행되고 있는 to..
오늘은 리눅스(Linux)에서 Heap Usage: Exception in thread "main" java.lang.reflect.InvocationTargetException 문제에 대한 해결 방법을 포스팅 하려고 합니다. 해당 Exception은 아래 내용과 같이 jmap 명령어를 실행 시킬때 나타납니다. [root@clovirvdi clovir]# jmap -heap 11271 Attaching to process ID 11271, please wait... Debugger attached successfully. Server compiler detected. JVM version is 25.201-b09 using thread-local object allocation. Parallel GC w..
오늘은 리눅스(Linux)에서 scp 명령어를 이용하여 원격서버 간의 파일 전송 및 파일 가져오기를 하는 방법에 대해 포스팅 하겠습니다. scp 명령어는 로컬 서버에서 원격 서버로 파일 전송 및 파일 가져오기를 하기 위해 사용합니다. scp를 통해 Linux끼리도 가능하지만 Window에서도 함께 사용할 수 있습니다. 기본적으로 ssh와 같은 port를 사용하기 때문에 defalut port인 22 port로 사용이 가능하다면 포트 입력을 하지 않아도 되지만 22가 아닌 다른 port로 되어있다면 ssh port를 확인하여 -P [PORT]를 추가적으로 입력해야 합니다. 아래 예제를 통해 진행해보도록 하겠습니다. 1) 로컬 서버 -> 원격 서버 전송 scp -r -P [ssh Port] [로컬 서버 디렉..
Spring에서 Request요청에 따른 Response의 Content-Type을 변경할 수 있습니다. 결과값만 호출하여 사용하는 것이라면 크게 상관이 없을 수 있겠지만, API용도로 사용하던지, 결과 데이터를 무언가에 사용한다고 할때 Content-Type의 값이 중요할 수 있습니다. @RequestMapping안에 produces="application/json;"를 추가할 경우 아래 소스와 같이 Request를 받고 result라는 값을 return한다고 가정 했을때 "API result"라는 결과값은 json형태로 response하게 됩니다. @RequestMapping(value = "/userConnIP.data", method = RequestMethod.GET, produces="appl..
오늘은 코딜리티(codility) Lesson2 CyclicRotation 문제 풀이에 대해 포스팅 하려고 합니다. 저도 개발을 계속 배워나가고 있기 때문에 문제풀이에 대한 다른 의견들과 다른 풀이들을 작성해주시면 감사하겠습니다. 코딜리티를 잘 모르시는 분들은 아래 링크를 먼저 보고 오시는 것도 좋을 것 같습니다. [Develope/코딩 테스트] - 코딜리티(codility) 코딜리티(codility) 알고리즘, 코딩테스트를 할 수있는 다양한 사이트들이 있습니다. 요즘에는 IT 기업들이 코딩테스트를 통해 직원들을 뽑는경우가 많이 있습니다. 테스트를 하기 위한 시험 문제를 기업이 자체적으로 만드는 경우도.. bono915.tistory.com 코딜리티(codility) Lesson2 CyclicRotati..
오늘은 코딜리티(codility) Lesson2 OddOccurrencesInArray 문제 풀이를 포스팅 하려고 합니다. 저도 개발을 계속 배워나가고 있기 때문에 문제 풀이에 대해 고쳐야 할 점들과 다른 풀이 방법들을 댓글로 주시면 감사하겠습니다. 코딜리티에 잘 모르시는 분들은 아래 링크를 통해 먼저 보고 오셔도 좋을 것 같습니다. [Develope/코딩 테스트] - 코딜리티(codility) 코딜리티(codility) 알고리즘, 코딩테스트를 할 수있는 다양한 사이트들이 있습니다. 요즘에는 IT 기업들이 코딩테스트를 통해 직원들을 뽑는경우가 많이 있습니다. 테스트를 하기 위한 시험 문제를 기업이 자체적으로 만드는 경우도.. bono915.tistory.com 코딜리티(codility) Lesson2 O..