대용량 파일을 삽입할 때 "ORA-03135: 연결 끊김"
Entity Framework(ODP.Net)를 사용하여 잠재적으로 많은 양의 이진 데이터를 원격 Oracle(11g) 데이터베이스에 삽입하려고 합니다.매우 작은 파일(5KB 미만)에서는 정상 작동하지만, 큰 파일(예: 44KB)에서는 "ORA-03135: 연결 끊김"이라는 오류가 나타납니다.
명령 실행 후 1초 이내에 예외가 발생하기 때문에 타이밍이 맞지 않는 것 같습니다.
다음 두 가지를 모두 연결 문자열에 설정하려고 했지만 소용이 없었습니다.
Validate Connection=true
Pooling=false
저도 한번 찾아봤는데요.listener.log
원격 컴퓨터에 파일을 저장합니다.연결은 이루어지지만 예외나 종료된 연결의 징후는 나타나지 않습니다.
저는 제안된 해결책이나 문제 해결 방법에 찬성합니다.
편집:
로컬 네트워크에서 Oracle 인스턴스에 액세스할 때도 동일한 SQL 작업이 작동합니다.
이것은 여러 가지 가능한 원인과 해결책이 있는 복잡한 문제일 수 있습니다.여기서부터 시작:
http://www.dba-oracle.com/t_ora_03135_connection_lost_contact.htm
답변: ORA-03135 오류의 경우 오류 유틸리티가 이를 표시합니다.
ORA-03135: 연결 끊김
원인: 1) 서버가 예기치 않게 종료되었거나 강제 종료되었습니다.또는 2) 서버가 연결 시간을 초과했습니다.
조치 : 1) 서버 세션이 종료되었는지 확인합니다.2) sqlnet.ora에 시간 초과 매개 변수가 제대로 설정되어 있는지 확인합니다.
방화벽이 연결을 종료할 때 원격으로 연결할 때 일반적인 ORA-03135 오류가 발생합니다.
ORA-03135 오류에 대한 한 가지 해결책은 sqlnet. 또는 파일의 expire_time 매개 변수 값을 높이거나 SQL*Plus 프로파일에서 expire 매개 변수를 확인하는 것입니다.
ORA-03135 오류를 진단하려면 먼저 ps –ef|grep 구문을 사용하여 OS PID가 여전히 존재하는지 확인합니다.
클라이언트와 서버 간에 NAT(Network Address Translation)이 있는지 확인합니다.
Windows(윈도우)에서 Windows 방화벽이 로컬 연결을 확인하는지 확인합니다.
Windows XP -> 제어판 -> 보안 -> 탭 "고급"
또한 매개 변수 sqlnet.inbound_connect_timeout 및 inbound_connect_timeout_listenname을 0으로 설정하면 ORA-03135 오류를 중지할 수 있습니다.
또한 위와 같이 데이터베이스 경보 로그에서 연결 삭제와 동시에 발생하는 오류를 확인합니다.예를 들어 ora-600 또는 ora-7445에 의해 발생할 수 있습니다.악수가 완료된 후에만 이 오류가 발생하므로 청취자 로그에 나타나지 않아야 합니다.
이 상황은 일반적으로 연결이 끊기거나 끊어져서 발생합니다.Pooling= false 후에 이 예외가 발생하면 tcp 유휴 시간 초과로 인해 방화벽이 연결을 차단할 수 있습니다.tcp 유휴 시간 초과 값이 예상 명령 실행 시간보다 큰지 확인
KeepAlive 설정을 사용해 보십시오. 이렇게 하면 연결이 끊기는 풀링 오류를 방지할 수 있습니다.
https://github.com/oracle/dotnet-db-samples/issues/58 (origin으로 이것은 를 위한 것입니다.NET Core 및 Oracle 버전용.관리되는 데이터 액세스.코어 2.19.100 이상)
connection.KeepAlive = true;
연결을 열기 전에
오라클 클라이언트 제거..Oracle 클라이언트를 다시 설치합니다.그리고 tnsnames 파일에 적절한 네트워크와 오라클 연결을 제공합니다.
언급URL : https://stackoverflow.com/questions/12163370/ora-03135-connection-lost-contact-when-inserting-large-file
'source' 카테고리의 다른 글
Oracle 11g에서 분할 테이블을 한 테이블스페이스에서 다른 테이블스페이스로 이동하려면 어떻게 해야 합니까? (0) | 2023.10.19 |
---|---|
WooCommerce - 카트에 있는 제품에 대해 선택된 변형을(를) (0) | 2023.10.19 |
Spring JpaRepository - 엔티티 분리 및 부착 (0) | 2023.10.19 |
상위 노드 없이 모든 하위 노드(요소, 주석, 텍스트)를 가져오는 XPath (0) | 2023.10.19 |
Xcode 6.1/Swift로 프로그래밍 방식으로 이미지를 UImageView로 설정 (0) | 2023.10.19 |