본문 바로가기
MySql

MySQL MySqlException : 시간 초과가 만료되었습니다. 연결 시간 초과를 늘려도 효과가 없습니다.

by 베이스 공부 2021. 2. 4.
반응형

데이터베이스 크기가 증가함에 따라 실행하는 데 더 오래 걸리는 쿼리가 있습니다. 쿼리가 최적화되고 필요하지만 내 C # 콘솔 응용 프로그램에서 최근에 다음 오류가 발생했습니다.

Unhandled Exception: MySql.Data.MySqlClient.MySqlException: Timeout expired.

연결 문자열에서 연결 시간 초과를 늘리는 것은 도움이되지 않습니다. 나는 그것을 증가시켰다

연결 시간 초과 = 28800

...에

연결 시간 초과 = 128800

하지만이 변경에도 불구하고 여전히 오류가 발생합니다.

MySQL 워크 벤치에서 쿼리를 실행하면 약 10 초 밖에 걸리지 않으므로이 처리되지 않은 예외를 방지하는 방법을 잘 모르겠습니다.

"쿼리에 걸리는 시간"외에이 예외를 생성 할 수있는 다른 사항이 있습니까?

 

해결 방법

 

나는 전에이 문제가 있었다. ConnectTimeout 속성은 쿼리가 아닌 데이터베이스에 연결할 때 발생하는 시간 초과에만 적용됩니다.

그러나 CommandTimeout 은 쿼리가 반환 될 때까지 기다려야하는 시간을 지정합니다. 기본값은 30 초라고 생각합니다. MySql 라이브러리에 대한 설명서를 다시 확인하지만 SqlCommand의 경우 CommandTimeout은 밀리 초가 아닌 초 단위입니다.

 

참조 페이지 https://stackoverflow.com/questions/11509817

 

 

반응형

댓글