기술 자료

Oracle 연결 오류 문제 해결


게시 날짜: 03 May 2017
마지막 수정 날짜: 14 Mar 2019

문제

Oracle 연결 오류 문제를 해결하는 방법

Oracle 드라이버에는 고유 형식의 매우 특정한 연결 문이 필요합니다. 단, TNSNames.ora 파일은 필요하지 않을 수도 있습니다. 예를 들어 Tableau에서 제공한 Oracle 파일만 설치하고 독립 실행형 Oracle 클라이언트가 없는 경우 Oracle 오류 메시지에 TNSNames.ora 파일에 대한 참조가 계속 나타나 문제 해결을 복잡하게 만듭니다.

    환경

    • Tableau Desktop
    • Oracle

    해결 방법

    일반적으로 고급 Oracle 연결 대화 상자에서 경로 또는 명명 구문을 수정하거나 전체 .WORLD 데이터베이스 이름을 사용하면 Oracle 연결 문제가 대부분 해결됩니다. 추가적인 문제 해결이 필요한 연결 오류의 경우에는 아래에 나와 있는 5가지 일반적인 연결 오류를 참조하십시오.

    • ORA-03113: 통신 채널의 파일 끝
    • ORA-12154: TNS: 지정한 연결 식별자를 확인할 수 없음: 잘못된 HOST 값 또는 전역 이름이 잘못되었거나 알 수 없음
    • ORA-12514: TNS 수신기가 연결 설명자의 요청된 서비스를 현재 인식할 수 없음: 잘못된 SERVICE 값
    • ORA-12541: TNS: 수신기가 없음: 잘못된 PORT 값
    • ORA-00932: 데이터 유형 불일치

      ORA-03113: 통신 채널의 파일 끝

      ORA-03113은 캐치올(catch-all) 유형의 오류로, Oracle 세션을 중단시키는 모든 문제를 나타냅니다. 이 오류가 발생하는 원인은 매우 다양합니다. 아래 목록에서 몇 가지 문제 해결 지침을 참조하십시오.

      • 이 오류와 관련한 다음 Oracle 설명서를 참조하십시오. My Oracle Support
      • Oracle에서는 네트워크 문제가 없는지 확인하고 SQL*Net 설정을 검토해 볼 것을 권장합니다.
      • Oracle 9.2.0.5에 연결하는 경우에는 주로 Oracle 버그 3010227로 인해 이 오류가 발생합니다. Oracle 데이터베이스 관리자에게 요청하여 Oracle 패치 9.2.0.6 또는 서버에 적합한 다른 패치를 적용하십시오.
      • Oracle 초기화 매개 변수 'STAR_TRANSFORMATION_ENABLED'를 FALSE로 설정합니다.
      • 추출 새로 고침의 예약된 시간 변경 테스트
      • 또는 아래에 나와 있는 선택적인 절차에 따라 이 문제를 더 자세히 테스트해 볼 수도 있습니다.

      1단계 

      Tableau Desktop 시작 페이지에서 데이터에 연결을 선택합니다.

      2단계 

      연결 페이지에서 Oracle을 클릭한 다음 확인을 클릭합니다.

      연결 단계를 완료하는 자세한 방법은 Desktop 도움말에서 Oracle 데이터베이스 항목을 참조하십시오.

      3단계 

      1. 조인 영역에서 편집 아이콘이 나타날 때까지 사용자 지정 SQL 테이블을 마우스오버한 다음 편집 아이콘을 클릭합니다.
      2. 사용자 지정 SQL 편집 대화 상자에서 쿼리를 복사합니다.
      SELECT "NumericBins", "Key" as "Key",
      "NumericBins", "Measure E-2" AS "Measure E-2",
      "NumericBins", "Measure E-1" AS "Measure E-1",
      "NumericBins", "Measure E+0" AS "Measure E+0",
      "NumericBins", "Measure E+1" AS "Measure E+1",
      "NumericBins", "Measure E+4" AS "Measure E+4",
      "NumericBins", "Measure E+7" AS "Measure E+7"
      FROM "TestV1", "NumericBins" "NumericBins"

       
      여기서 "TestV1"은 Tableau의 연결 이름입니다.

      4단계 

      이 데이터베이스에 연결된 SQL 세션에서 쿼리를 붙여 넣고 실행합니다. 이때 ORA-7445: 예외 발생: 코어 덤프 오류가 응답으로 나타나면 ORA-3113 오류가 문제인 것으로 확인됩니다.

      ORA-12154: TNS: 지정한 연결 식별자를 확인할 수 없음

      ORA-12154 오류는 TNS(Transparent Network Substrate)에서 서비스 이름을 확인할 수 없는 경우 발생합니다. 서비스 이름은 %ORACLE_HOME%\network\admin\ 폴더에 있는 TNSNames.ora 파일에 지정되어 있습니다. 이 오류는 TNSNames.ora 파일의 정보가 잘못되었을 때 주로 발생합니다. 예를 들면 다음과 같습니다.

      • 데이터베이스 이름에 .world 확장명이 포함되어 있지 않습니다.
      • SERVICE_NAME 또는 HOST 변수가 잘못되었습니다.

      이 문제를 해결하려면 다음 3가지 문제 해결 옵션 중 하나를 아래에 나와 있는 순서대로 시도해 보십시오.

      옵션 1: TNSNames.ora 편집

      다음 두 위치에 .world 확장명을 포함한 전체 데이터베이스 이름을 지정합니다.

      • TNSNames.ora 파일

      • 연결 페이지의 서버 텍스트 상자

      옵션 2: Tableau Server '서비스 계정' 사용자 계정에 TNSNames.ora 사용 권한이 있는지 확인(Tableau Server만 해당)

      Tableau Server가 설치되어 있는 경우 아래 절차를 완료하여 Tableau Server '서비스 계정' 사용자 계정에 TNSNames.ora 파일 위치에 대한 사용 권한이 있는지 확인합니다. '서비스 계정' 사용자 계정에 사용 권한이 없는 경우 Tableau Server가 Oracle 데이터 원본 세부 정보에 액세스할 수 없습니다.

      1단계 

      컴퓨터에서 TNSNames.ora 파일 또는 해당 SQLNET.ora 및 LDAP.ora 파일의 위치를 확인합니다.

      참고: 기본적으로 TNSNames.ora 파일은 <oracle-directory>\network\admin 디렉터리에 있습니다. 예: C:\Oracle_Client\network\admin. 

      2단계 

      TNS_ADMIN 변수가 1단계에서 설명한 파일의 위치를 가리키는지 확인합니다.

      참고: TNS_ADMIN 변수를 확인하려면 시작 단추를 클릭하고 제어판 > 시스템을 선택합니다. 고급 시스템 설정을 클릭하고 고급 탭을 클릭한 다음 환경 변수 단추를 클릭합니다.
      시스템 변수 파일 경로는 UNC 형식이어야 합니다.

      3단계 

      Windows 시작 단추에서 Tableau Server <version> > Tableau Server 구성을 선택합니다.

      4단계 

      서버 서비스 계정 사용자에서 사용자 텍스트 상자의 정보를 복사합니다.

      5단계 

      TNSNames.ora 파일이 있는 폴더로 이동합니다.

      6단계 

      해당 폴더를 마우스 오른쪽 단추로 클릭하고 속성을 선택합니다. 보안 탭을 클릭하고 편집 단추를 클릭합니다.

      7단계 

      그룹 또는 사용자 이름에서 추가 단추를 클릭합니다.

      8단계 

      선택할 개체 이름을 입력하십시오. 텍스트 상자에 6단계에서 복사한 '서비스 계정' 사용자 계정의 세부 정보를 붙여 넣습니다.

      9단계 

      작업을 마쳤으면 확인을 클릭합니다.

      10단계 

      사용 권한 영역에서 모든 권한수정 확인란이 선택되어 있는지 확인합니다.

      11단계 

      확인을 클릭하여 대화 상자를 닫습니다.

         

        옵션 3: TNSNames.ora의 정보가 올바른지 확인

        위 문제 해결 단계로 문제가 해결되지 않을 경우 이어지는 내용을 계속 참조하여 TNSNames.ora 파일의 다른 정보가 올바르게 지정되었는지 확인하는 절차를 완료하십시오.

        다음은 TNSNames.ora 파일의 예입니다.

        QAORCL10.world =

        (DESCRIPTION =

        (ADDRESS_LIST =

        (ADDRESS = (PROTOCOL = TCP)(HOST = MY_HOST_NAME)(PORT = 1521))

        )

        (CONNECT_DATA =

        (SERVICE_NAME = MY_SERVICE_NAME)

        )

        )

        이 파일에서 유의해야 할 3가지 변수는 HOST, PORTSERVICE_NAME입니다. 이러한 변수를 문제 해결 과정에 사용할 수 있도록 TNSNames.ora 파일에서 복사해 둡니다. 이러한 변수는 대/소문자를 구분합니다. 다음 단계에서는 연결에 대해 이러한 변수를 지정하는 방법을 설명합니다.

        1단계 

        Tableau Desktop 시작 페이지에서 데이터에 연결을 선택합니다.

        2단계 

        연결 페이지에서 Oracle을 클릭합니다.

        3단계 

        TNSNames.ora 파일의 다음 정보를 제공합니다.

        • 서버 이름 텍스트 상자에 HOST 이름을 입력합니다.
        • 서비스 텍스트 상자에 SERVICE_NAME을 입력합니다.
        • 포트 텍스트 상자에 PORT 번호를 입력합니다.
        • Windows 인증을 사용할지, 아니면 특정 사용자 이름과 암호를 사용할지를 지정한 다음 연결을 클릭합니다.

        참고: 변수는 대/소문자를 구분합니다.

        4단계 

        스키마 드롭다운 목록에서 스키마를 선택하고 테이블을 조인 영역으로 끌어온 다음 워크시트로 이동을 클릭합니다.

        5단계 

        TNSNames.ora 또는 LDAP.ora를 사용하도록 Oracle 연결 설정 문서에 나와 있는 단계를 완료합니다.

        중요: 

        • 사용하는 TNSNames.ora 파일을 ASCII 인코딩으로 저장하십시오. ASCII 이외에 UTF-8 또는 유니코드와 같은 다른 인코딩으로 저장할 경우 ORA-12154 오류 메시지가 발생합니다.
        • 일반적으로 Oracle 소프트웨어가 컴퓨터에 이미 설치되어 있는 경우에도 이러한 단계를 수행해야 합니다.

        6단계

        Tableau 드라이버 페이지에서 적합한 Oracle 드라이버를 다운로드하여 설치합니다. 컴퓨터에 Oracle 드라이버가 설치되어 있더라도 Tableau와 호환되지 않을 수 있으며 드라이버 페이지에 명시되어 있는 버전이 필요할 수 있습니다.

        ORA-12514: TNS 수신기가 연결 설명자의 요청된 서비스를 현재 인식할 수 없음

        일반적으로 이 오류는 SERVICE 값이 잘못된 경우에 발생합니다.

        이 문제를 해결하려면 %ORACLE_HOME%\network\admin\ 폴더에 있는 TNSNames.ora 파일을 열어 올바른 SERVICE 값을 확인하십시오. 필요한 경우 ORA_12154의 단계를 참조하십시오.

        ORA-12541: TNS: 수신기가 없음

        일반적으로 이 오류는 PORT 값이 잘못된 경우에 발생합니다.

        이 문제를 해결하려면 PORT 값을 1521 또는 1526으로 바꾸십시오. 현재 사용하지 않는 값으로 지정해 보십시오.

        ORA-00932: 데이터 유형 불일치

        이 오류는 Oracle에 연결하거나 Oracle 데이터 원본에서 추출을 만드는 경우에 발생합니다. 일반적으로 이 오류는 잘못된 Oracle 드라이버 설치가 원인입니다.

        이 문제를 해결하려면 드라이버 페이지에서 사용 중인 Tableau 버전에 맞는 Oracle 드라이버를 설치하십시오.

          추가 정보

          제안 사항

          Oracle 클라이언트가 컴퓨터에 설치되어 있지 않으면 데이터베이스 관리자에게 요청하여 필요한 파일을 구하십시오. Oracle 데이터 연결 오류가 계속되는 경우에는 다음을 수행하십시오.

          • TNS_ADMIN 변수를 만드는 데 사용한 TNSNames.ora 폴더 경로를 확인합니다.
          • 컴퓨터를 다시 시작하여 TNS_ADMIN 변수가 인식되도록 합니다.
          • Tableau에서 사용하는 Oracle 연결 이름이 TNSNames.ora Net Service Name 항목과 정확히 일치하는지 확인합니다. 이 이름은 대/소문자를 구분합니다.
          • Windows를 다시 시작해야 Oracle 드라이버에서 TNS_ADMIN 시스템 변수가 인식되는 경우도 있습니다.
          • 로컬 IT 담당자에게 문의하여 TNSNames.ora 파일이 최신 상태인지 확인합니다.
          • Oracle 연결에 LDAP가 사용되는 경우 SQLNet.ora 파일과 TNSNames.ora 파일이 포함되어 있는지 확인합니다.

          ORA-12154: TNS가 서비스 이름 팁을 확인할 수 없음

          참고: 타사 콘텐츠를 정확하게 참조하기 위해 모든 노력을 기울이지만 제공된 정보는 사전 고지 없이 변경될 수 있습니다. 


          이 문서에 대한 논의... 피드백 포럼
          이 문서로 문제가 해결되었습니까?