32 비트 호스트에서 실행되는 WCF-Oracle 송신 포트가있는 BizTalk 2013r2 앱이 있습니다.
내 테스트 환경에서 실행하면 제대로 작동합니다. 그러나 내 dev 상자에서 다음 오류가 발생합니다.
"ORA-12154 : TNS : 지정된 연결 식별자를 확인할 수 없습니다"
송신 포트에 설정된 주소는 "oracledb : // test_godw_lincoln /"입니다. 내 이해는 IP 주소와 포트가 로컬 tnsnames.ora 파일에서 확인되어야한다는 것입니다. TNS_ADMIN에 대한 시스템 환경 변수가 올바르게 설정되어 있습니다.
명령 프롬프트에서 "set tns_admin"을 입력하면 다음이 표시됩니다.
TNS_ADMIN = C : \ app \ biztalk.admin \ product \ 12.1.0 \ client_1 \ Network \ Admin
"C : \ app \ biztalk.admin \ product \ 12.1.0 \ client_1 \ Network \ Admin \ tnsnames.ora"파일을 열면 다음 항목이 표시됩니다.
test_godw_lincoln =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = xx.xxx.xx.xx)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = gotest)
)
)
(실제 IP 주소로 대체했습니다)
동일한 dev vm에서 Sql Developer를 열면 tnsname 항목 "test_godw_lincoln"을 사용하여 필요한 데이터베이스에 대한 연결을 열 수 있습니다.
Oracle은 tnsnames.ora를 사용하지 않고도 어댑터에서 주소를 지정할 수 있다는 것을 알고 있지만 주변 트랜잭션을 사용하려면 (앱이이를 사용) 주소가 tnsnames.ora를 통해 있어야한다는 것을 이해합니다.
이 특정 VM에서 문제의 원인을 추적 할 수있는 방법에 대한 제안 사항이 있습니까?
Dmitir의 다시 질문-레지스트리가 비어 있습니다.
Felix의 재 제안-Visual Studio 서버 탐색기에서 동일한 개발 서버에 연결을 만들 수 있습니다.
그러나 "어댑터 서비스 사용"마법사 (생성 된 항목 추가)에서 연결을 시도하면 ORA-12154 오류가 발생합니다.
이것은 tnsnames.ora 파일의 신비한 문제로 귀결되었습니다. @Hichamveo의 제안이 도움이되었지만 작업 환경에서 내 나쁜 tnsnames.ora 파일을 시도하는 대신 작업 환경에서 tnsnames 파일을 복사했습니다. 그런 다음 dev VM이 작동하기 시작했음을 알았습니다. 그래서 문제가 ODAC / ODP.Net 어셈블리가 아닌 tnsnames.ora 파일에 있다는 것을 알았습니다.
그런 다음 잘못된 tnsnames 파일로 인해 무엇이 손상되었는지 정확히 파악하기 위해 상당한 시간을 보냈습니다. 파일 비교 도구를 사용하고 http://brantwills.github.io/tns-check/ 에서 linter를 사용해 보았지만 아무런 문제가 없었습니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다