반응형
데이터베이스 크기가 증가함에 따라 실행하는 데 더 오래 걸리는 쿼리가 있습니다. 쿼리가 최적화되고 필요하지만 내 C # 콘솔 응용 프로그램에서 최근에 다음 오류가 발생했습니다.
Unhandled Exception: MySql.Data.MySqlClient.MySqlException: Timeout expired.
연결 문자열에서 연결 시간 초과를 늘리는 것은 도움이되지 않습니다. 나는 그것을 증가시켰다
연결 시간 초과 = 28800
...에
연결 시간 초과 = 128800
하지만이 변경에도 불구하고 여전히 오류가 발생합니다.
MySQL 워크 벤치에서 쿼리를 실행하면 약 10 초 밖에 걸리지 않으므로이 처리되지 않은 예외를 방지하는 방법을 잘 모르겠습니다.
"쿼리에 걸리는 시간"외에이 예외를 생성 할 수있는 다른 사항이 있습니까?
해결 방법
나는 전에이 문제가 있었다. ConnectTimeout 속성은 쿼리가 아닌 데이터베이스에 연결할 때 발생하는 시간 초과에만 적용됩니다.
그러나 CommandTimeout 은 쿼리가 반환 될 때까지 기다려야하는 시간을 지정합니다. 기본값은 30 초라고 생각합니다. MySql 라이브러리에 대한 설명서를 다시 확인하지만 SqlCommand의 경우 CommandTimeout은 밀리 초가 아닌 초 단위입니다.
참조 페이지 https://stackoverflow.com/questions/11509817
반응형
'MySql' 카테고리의 다른 글
MySQL mysql 데이터베이스에서 드롭 다운 목록을 채우고 값을 반복하지 마십시오. (0) | 2021.02.04 |
---|---|
MySQL에서 MAX와 LIMIT를 함께 사용하는 방법 (0) | 2021.02.04 |
MySQL 타임 스탬프 형식 "Y-M-D H : M : S"와 일치하는 정규 표현식 (0) | 2021.02.04 |
MySQL 저장 프로 시저와 복잡한 쿼리 (0) | 2021.02.04 |
MySQL에서 기본 키가 아닌 필드를 auto_increment해야합니다. (0) | 2021.02.04 |
댓글