sftp shell을 작성할때 주의할점 수신서버에서 파일이 전송중인지 전송완료인지 판단하기 어려움송신프로그램에서 현재 sftp가 수행중인지 혹은 타임아웃인지 판단하기 어려움. 1번의 경우는 sftp 파일전송이 끝나면 dummy 파일을 하나 더 보내서 수신서버에서 dummy 파일로 전송완료 여부 확인 가능. 2번의 경우 expect 스크립트를 사용하면 다음과 같이 전송상태가 100% 인지 확인 가능하고 timeout 경우도 잡아낼수 있음. expect 스크립트의 default 타임아웃은 30초 이므로 용량이 큰 파일을 전송할때를 대비해서 타임아웃 시간 설정을 변경해준다. 예시에서는 timeout off (set timeout -1) #!/usr/bin/expect -fset timeout -1set rem..
expect 스크립트 사용시 주의할 점이 몇가지 있다. expect 로 받을 argument가 상황에 따라 다른경우. 다음의 sftp를 expect 스크립트로 호출하는 예를 살펴보자.다음은 sftp를 호출하고 expect 구문으로 자동 로그인을 하는 스크립트다. sftp를 실행하면 다음과 같은 메세지를 만난다.Are you sure you want to continue connecting (yes/no)?yes 를 선택하면user's password:이렇게 패스워드를 묻는다. 이렇게 expect argument를 생각하고 개발서버에서 위처럼 쉘을 개발했는데막상 배포서버와 운영서버에서 적용하고 테스트를 해보니yes/no 질문은 첫 실행때만 물어보고 두번째 실행부터는 물어보지 않는다. user's passw..
프로프레임의 DBIO는 DML문만 생성 가능하다. CREATE, DROP, TRUNCATE, ANALYZE 등의 DDL문은 DBIO로 생성이 불가능하다.그렇다면 DDL문을 프로프레임에서 사용하기 위해서는 어떻게 해야될까?방법은 두가지가 있다. DBA에게 function으로 해당 DDL문을 만들어달라고 하여 그 function을 호출하는 select DBIO를 만든 후해당 DBIO를 사용하는 비즈모듈을 만들어서 제공한다. 이 방법의 문제점은 oracle function이 DDL문을 지원하지 않는다는 점이다. 이 경우 function을 만들때 dynamicSQL을 사용하여 DDL을 excute 하도록 만들면 된다. DDL문을 function으로 만들수 없음create or replace function f ..
pfmTCacheInvalidate API는 TCache가 관리하는 cache_name 테이블에서 입력된 key에 해당하는 레코드 데이터를 초기화 한다. 사용법은 다음과 같다. long pfmTCacheInvalidate( const char* cache_name, const char* key, long flags ); 구성설명cache_namepfmtcache.cfg의 “CACHE_NAME”에 정의한 캐쉬 이름key입력 데이터의 앞 부분부터 pfmtcache.cfg 파일에 기록된 “SIZE_KEY”의 길이 만큼의 데이타flagsinvalidate를 할 때 내부적으로 사용하는 flag기본적으로 “0”의 값으로 세팅return 값성공시 : 0실패시 : negative pfmTCacheInvalidate 함..
DBIO는 각 DBMS 벤더의 Embedded SQL에서 지원하는 모든 SQL을 지원한다.오라클 DB를 사용중이라면 Pro*C precompiler 가 지원하는 모든 SQL 구문을 지원한다. Dynamic SQL dbio 는 컴파일이 되는데 다른 dbio 타입으로 컴파일시 에러나는 경우를 알기 위해서는두가지 SQL 형식의 차이점을 알아야 한다. SQL 형식은 Embedded SQL과 Dynamic SQL으로 나뉜다.Embdedded SQL - SQL 쿼리가 실행되는 시점에 지정된 변수 값을 제외하고는 SQL 구문의 변화가 없는 형식 (PERSIST, VIEW, EXEC)Dynamic SQL - SQL 쿼리가 실행되는 시점에 쿼리 문장이 달라지는 SQL 형식 (DYNAMIC) 같은 SQL 구문이더라도 PE..
프로프레임 연동된 DB의 계정정보가 바뀔경우 다음과 같은 설정을 함께 바꿔줘야 한다. 환경변수변경DB의 IP도 변경되었다면 $TNS_ADMIN/tnsnames.ora 파일을 수정해야한다. (DBA 에게 요청하여 sid 의 ip,port 수정)$ENVHOME/profile.oracle 파일의 CONNECTON_INFO를 수정하여 준다. (SID가 변경되었다면 SID도 수정) profile.oracle 수정 후 terminal 재접속 하여 환경변수가 변경된 것을 확인한다. DBIO connect 프로그램 및 스튜디오 접속정보 수정 $PFMDEVDIR/pfmDbioConnectDB/pfmDbioConnectDB.c 파일 안의 runtime, compile, srcgen의 db connection 정보를 변경한..
피연동에서 주연동으로 combuff 전달은 default 셋팅에서는 막혀있다.주연동에서 피연동으로 넘어갈때 주연동의 Customize 헤더 combuff 항목에 대한 포인터는 PFM_HDR_EXT_CB이고 (복사된 combuff의 포인터) 피연동의 combuff 포인터가 PFM_HDR_EXT 가 된다.연동 연산이 끝나고 다시 프로세스 주연동으로 돌아올때 PFM_HDR_EXT_CB 포인터에 있는 주연동의 combuff 값을 recover 하게 되므로 피연동의 combuff 값은 사라지게 된다. 피연동의 combuff 값을 주연동으로 전달하려면 다음과 같이 combuff가 주연동의 combuff 버젼으로 recover 되기전에 PFM_HDR_EXT_CB에 PFM_HDR_EXT 값을 memcpy 해주는 로직이..
- Total
- Today
- Yesterday
- AWS 신입
- gcp 자격증
- AWS 후기
- oracle
- 프로프레임
- 구글 이직
- AWS 취업 후기
- 2022 회고
- AWS 입사
- dbio
- Terraform GCP
- ProFrame
- AWS 이직
- expect 스크립트
- AWS 신입 채용
- 뱅크샐러드 면접
- AWS TECH U
- GCP 이직
- 아마존 입사
- Terraform
- AWS 문화
- SA란
- AWS Associate Solution Architect
- TECH U ASA
- 구글 입사 후기
- GCP 자격증 후기
- 아마존 이직
- 오라클
- AWS 인터뷰
- AWS 면접
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |