안녕하세요.
도저히 찾다 찾다 안되겠어서 이렇게 글을 올립니다.
[ 환경 ]
- 서버1
DB2버젼 : db exc 9.7
시스템 : centos 5.x
사용 형태
1) C와 JAVA로 APP를 작성 하였고 DB2를 메인으로 하여 사용중
2) ESQL 로 프로그래밍 되어있음. ( 프리컴파일 )
3) C와 JAVA 모두 정상적으로 DB접속이 가능함.
4) db2 connect to xxx 명령어로 db 접속 가능.
5) 원격지에서의 접속을 위해 DB2 TCP 접속 설정이 되어있음
- 서버2
DB2버젼 : 8.1 client.
시스템 : centos 5.x
사용형태
1) DB2 클라이언트 설치 완료.
2) 원격접속을 위한 카탈로그 설정을 함 . ( 노드 설정 및 db 카탈로그 설정 )
3) 카탈로그 설정대로 시스템 쉘에서 db2 connect to xxx user xxx using xxx 명령으로 정상적으로 접속 됨.
4) 1번 서버에서 작성이 완료된 응용 프로그램을 사용해 접속을 시도하면 오류.
- 응용프로그램 내부의 알리아스, 유저, 비밀번호 등은 이미 확인 하였습니다.
- 응용프로그램의 접속정보로 db2 connect to ... 를 시도 해도 정상적으로 접속이 됩니다.
자 이제 질문 들어갈게요.
알고 계신 부분만 이라도 답변해 주시면 대단히 감사 하겠습니다.
1. ESQL 로 프로그래밍된 응용프로그램은 db2 클라이언트만 설치된 서버에서는 다른서버로 원격 접속이 불가능 한가요?
2. ESQL 의 sql connect 형태를 보면 EXEC SQL CONNECT TO :dbalias USER :user USING :pswd; 로 되어 있는데 원격지에서 접속하려면 이 구문
이외에 필요한 부분이 더 있는지요.
3. 응용 프로그램 에서 구동시에 -5055라는 sql code 를 출력 하였습니다. 검색을 해보면
SQL5055C The content of the database configuration file is not valid. 와 같은 구문을 찾을수 있었습니다.
그렇다면 무언가 db를 구성하는 파일중 내용이 잘못 된게 있다는거 같은데 찾아봐도 더이상 내용이 나오지가 않네요.
아시는분은 답변 부탁드리겠습니다.
4. 응용프로그램 내부에 sql connect 를 하는 부분을 보면 EXEC SQL CONNECT TO :dbalias USER :user USING :pswd; 이 구문외에는
접속에 해당하는 구문이 없는데 빼먹고 안한 부분이 있는지요.
위의 질문들은 모두 서버2에서 응용프로그램으로 서버1로의 접속이 이루어지지 않아서 드리는 질문입니다.
질문에 대답 안하시고 접속하는 방법만이라도 알려주시면 정말로 감사하겠습니다.
긴글 읽어주셔서 감사합니다.
|