ADO에서 디비에 접속상태에서 MYSQL이 죽은 경우..
레코셋을 생성하면 약 20초 후에 에러 을 출력합니다..
connectiontimeout
commandtimeout 모두 설정해도 안되는데... 좋은 방법이 있을까요?
목적은 5초내에 에러가 나던지 성공하던지 결정을 보고 싶은건데...
저도 이런경우가 있어서 타이머로 일정 시간동안 제일 간단한 쿼리문을 보냈습니다. 시원한 해결이 아니지만 MYSQL 일정 시간동안 쿼리가 없으면 자동으로 연결이 끈어 지는것 같습니다. 그리고 또 한가지는 쿼리문으로 자료를 가지고 온 후 악성코드나 기타 원인으로 네트웍이 끈어진경우 대책이 없습니다. 이런경우를 대비해 로컬에 한번더 저장 하던지... 일반 스트링그리드에 별도 저장후 저장된 자료를 표시 하는게 더 나을듣 합니다.
위의 경우는 다른 프로세스 락 대기 상태로 실행이 지연되는 것 같습니다.
wait_timeout 또는 interactvie_timeout 시스템 변수를 설정하여 시간을 조정해보는 것도 좋을 것 같습니다.