Resolution
Often, correcting route or naming syntax in the Advanced Oracle Connection dialog box or using your full .WORLD database name resolves most Oracle connection issues. If your connection error requires more troubleshooting, refer to the five common connection errors listed below.
- ORA-03113: end-of-file on communication channel
- ORA-12154: TNS: could not resolve the connect identifier specified: HOST value incorrect or Global name incorrect or unknown
- ORA-12514: TNS listener does not currently know of service requested in connect descriptor: SERVICE value incorrect
- ORA-12541: TNS: no listener: PORT value incorrect
- ORA-00932: inconsistent data types
ORA-03113: end-of-file on communication channel
ORA-03113 is a catch-all type error for any problem interrupting an Oracle session. There can be numerous causes for this error. Please refer to the list below for some troubleshooting guidance.
- Refer to Oracle documentation specific to this error: My Oracle Support.
- Oracle recommends that you check for network problems and review the SQL*Net setup.
- If you are connecting to Oracle 9.2.0.5, in many cases the primary cause of this error is Oracle bug 3010227. Ask your Oracle database administrator to apply Oracle patch 9.2.0.6 or another patch appropriate for your server.
- Set the Oracle initialization parameter 'STAR_TRANSFORMATION_ENABLED' to FALSE.
- Test changing the scheduled time of the extract refresh
- Alternatively, if you would like to test this issue further follow the optional procedure listed below.
Step 1
From the Tableau Desktop start page, select Connect to Data.
Step 2
On the Connect page, click Oracle, then click OK.
For more information about completing the connection steps, refer to the Oracle Database topic in the Desktop Help.
Step 3
- In the join area, hover over the Custom SQL table until the edit icon displays, and then click the icon.
- Copy the query in the Edit Custom SQL dialog box.
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"
Where "TestV1" is the name of your connection in Tableau.
Step 4
In a SQL session connected to this database, paste and run the query. The expected response is error ORA-7445: exception encountered: core dump, which confirms that the problem is ORA-3113, as expected.
ORA-12154: TNS: could not resolve the connect identifier specified
ORA-12154 occurs when the transparent network substrate (TNS) cannot resolve the service name. The service name is specified in the TNSNames.ora file, which is located in your %ORACLE_HOME%\network\admin\ folder. Most often, this error occurs when information in the TNSNames.ora file is incorrect. For example:
- The .world extension is not included on the database name.
- The SERVICE_NAME or HOST variable is incorrect.
- The Service and/or Port is included incorrectly in the data connection published to Server/Cloud (see Option 4).
To resolve this issue, try one of the four troubleshooting options, in the order listed below.
Option 1: Edit TNSNames.ora
Provide the full database name, including the .world extension in both of the following locations:
- The TNSNames.ora file.
And
- The Server text box of the Connect page.
Option 2: Ensure that Tableau Server Run As User account has permissions to TNSNames.ora (Tableau Server only)
If you have Tableau Server installed, complete the procedure below to ensure that the Tableau Server Run As user account has permissions to the location of the TNSNames.ora file. If the Run As user account does not have permissions, Tableau Server is unable to access the Oracle Data source details.
Step 1
Verify the location of the TNSNames.ora file, or the equivalent SQLNET.ora and LDAP.ora files on the machine.
Note: By default, the TNSNames.ora file is located in <oracle-directory>\network\admin directory. For example, C:\Oracle_Client\network\admin.
Step 2
Confirm that the TNS_ADMIN variable points to the location of the file or files described in step 1.
Note: To check the TNS_ADMIN variable, click the Start button, and select Control Panel > System. Click Advanced system settings, click the Advanced tab, and click Environmental Variables button.
The system variable file path must be in UNC format.
Step 3
Open TSM in a browser: https://<tsm-computer-name>:8850 For more information, see Sign in to Tableau Services Manager Web UI.
Step 4
Click the Security tab, and then click the Run As Service Account tab.
Under Server Run As User, copy the information in the Username field.
Step 5
Go to the folder where the TNSNames.ora file is located.
Step 6
Right-click the folder and select Properties. Click the Security tab and click the Edit button.
Step 7
Under Group or user names, click the Add button.
Step 8
In the Enter the object names to select text box, paste the details of the Run As User account you copied in step 6.
Step 9
When finished, click OK.
Step 10
In the Permissions area, ensure that the Full control and Modify check boxes are selected.
Step 11
Click OK to close the dialog boxes.
Option 3: Verify that all information in TNSNames.ora is correct
If the above troubleshooting steps do not resolve the issue, continue reading and complete the procedure to verify the other information in the TNSNames.ora file is provided correctly.
An example of a TNSNames.ora file is shown here:
QAORCL10.world =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = MY_HOST_NAME)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = MY_SERVICE_NAME)
)
)
The three variables of interest in the file are HOST, PORT, and SERVICE_NAME. Copy these variables from the TNSNames.ora file and keep them available. These variables are case sensitive.The following steps describe how to provide these variables for your connection.
Step 1
From the Tableau Desktop start page, select Connect to Data.
Step 2
On the Connect page, click Oracle.
Step 3
Provide the following information from the TNSNames.ora file:
- In the Server name text box, type the HOST name.
- In the Service text box, type the SERVICE_NAME.
- In the Port text box, type the PORT number.
- Specify whether to use Windows Authentication or a specific user name and password, and then click Connect.
Note: Variables are case sensitive.
Step 4
Select a schema from the Schema drop-down list, drag a table to the join area, and then click Go to Worksheet.
Step 5
Complete the steps in the Setting an Oracle Connection to Use TNSNames.ora or LDAP.ora article.
Important:
- Make sure that you save the TNSNames.ora file you use in ASCII encoding. Any other encoding besides ASCII, for example UTF-8 or Unicode, causes the ORA-12154 error message.
- These steps are usually required even if the Oracle software is already installed on the machine.
Step 6
Download and install the appropriate Oracle drivers from the Tableau Drivers page. Even if an Oracle driver is installed on your computer, it could be incompatible with Tableau and will require the version specified on the Drivers page.
Option 4 (Published workbook or data source)
When opening a published workbook connected to a published Oracle data source, remove the Service and/or Port from the connection:
- Download the published data source or workbook.
- In Tableau Desktop, open the published data source or workbook.
- Right-click the data source in the Data pane and select Edit Data Source.
- Remove the values from the Service and/or Port fields. For more information see Oracle help.
- Verify the connection works.
- Republish the data source or workbook.
- In Tableau Server, test the connection.
ORA-12514: TNS listener does not currently know of service requested in connect descriptor
Typically this error occurs when the SERVICE value is incorrect.
To resolve this issue, find out what the correct SERVICE value is, open the TNSNames.ora file located in your %ORACLE_HOME%\network\admin\ folder. Refer to the steps under ORA_12154 if necessary.
ORA-12541: TNS: no listener
Typically this error occurs when the PORT value is incorrect.
To resolve this issue, replace the PORT value with either 1521 or 1526. Try the value that is currently not in use.
ORA-00932: inconsistent data types
This error occurs when connecting to Oracle or when creating an extract from an Oracle data source. Typically this error is caused by the installation of incorrect Oracle drivers.
To resolve this issue, install the correct Oracle drivers from the Drivers page for the version of Tableau you are using.
In addition to the above common errors, if you are experiencing performance issues e.g. extract refresh taking long time, you can try downloading and installing the latest driver. The correct Driver can be downloaded from here.