반응형
오늘은 리눅스(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 | vcenter_id | vc_dn | vc_url | vc_id | vc_pwd | infra_seq | use_yn | del_time
-------------+---------------+------------------------------------------------------------------------------------------------+---------------+-------------+----------+-----------+--------+----------
46 | 172.16.15.201 | CN=09d7918d-00a9-4852-89e5-155e83127385,OU=VirtualCenter,OU=Properties,DC=vdi,DC=vmware,DC=int | 172.16.15.201 | cl2\cladmin | vmware1! | 43 | Y |
48 | 172.16.15.103 | CN= | 172.16.15.103 | cl2\cladmin | vmware1! | 43 | N |
(2개 행)
String형태의 조건문이 없는 경우는 간단하지만 String형태의 조건문을 입력하려면 아래와 같이
작은 따옴표와 큰 따옴표를 적절하게 이용해야 합니다.
다시 한번 vi 편집기를 열고 쿼리를 만들어 보겠습니다.
vi testdb2.sh
아래 쿼리문과 같이 String에 해당하는 부분은 '"'내용'"'으로 감싸넣어야 쿼리를 정상적으로
동작할 수 있습니다.
su - postgres -c 'psql -d "clovirvdi_multi_nic" -c "select * from cr_vcenter where vc_url ='"'172.16.15.103'"'"'
지금까지 리눅스(Linux)에서 쉘 스크립트(shell script)를 이용하여
PostgresqlDB query 실행하는 방법에 대한 포스팅이였습니다.
반응형
'Develope > Linux' 카테고리의 다른 글
[Linux] Apache SSL 인증서 생성 방법 (0) | 2020.01.21 |
---|---|
[Linux] 리눅스 서비스 등록 방법 - chkconfig (0) | 2020.01.14 |
[Linux] 리눅스 DNS 설정 방법 (2) | 2019.11.26 |
[Linux] 리눅스 tomcat heap memory 확인 및 설정 (0) | 2019.10.21 |
[Linux] 리눅스 Heap Usage:Exception in thread "main" java.lang.reflect.InvocationTargetException 해결 방법 (0) | 2019.10.21 |