---
schema_version: "1"
id: 22e3b5745c99585d0d0beb4e3e991eb46d94276da91c1d9184ea4d488f5380b3
title: Oracle
collection: tableau
version: next
locale: zh-cn
portal_url: https://docs.salesforce.com/tableau/next/zh-cn/pro/desktop/examples_oracle.md
canonical_url: https://help.tableau.com/v0.0/pro/desktop/zh-cn/examples_oracle.htm
source_site: help.tableau.com
content_type: documentation
content_hash: 1034ad09de9c7b9edab7edef38b268b8bf84e0cbc365d2d198f99da97d470bb8
description: Connect Tableau to an Oracle database and set up the data source.
---
[跳转到主要内容](#main-content)

# Oracle

本文介绍如何将 Tableau 连接到 Oracle 数据库并设置数据源。

**注意：**从 Tableau 2020.2 开始，如果要将使用 net\_service\_names 的数据源和工作簿发布到 Tableau Server，请务必查看知识库文章 [设置 Oracle 连接以使用 TNSNames.ora 或 LDAP.ora](https://kb.tableau.com/articles/howto/setting-an-oracle-connection-to-use-tnsnames-ora-or-ldap-ora?lang=zh-cn) 中描述的更改。

## 开始之前

在开始之前，请收集以下连接信息：

- 承载要连接到的数据库的服务器的名称以及 Oracle 服务名称和端口，或者 TNS 名称
- 身份验证方法：集成身份验证或用户名和密码
- 是否要连接到 SSL 服务器？您必须配置 Oracle 客户端，然后才能将 SSL 用于 Tableau。
    
    如果您使用的是版本 2020.2 或更高版本，请参见 [Oracle JDBC 连接需要 SSL](https://help.tableau.com/v0.0/pro/desktop/zh-cn/jdbc_oracle_ssl_config.htm)。
- （可选）要在每次 Tableau 连接时运行的初始 SQL 语句

### 需要驱动程序

此连接器需要驱动程序才能与数据库通信。如果计算机上未安装该驱动程序，Tableau 将在连接对话框中显示一条错误消息，其中包含指向[驱动程序下载](https://www.tableau.com/zh-cn/support/drivers)页面的链接，您可在该页面中找到驱动程序链接和安装说明。

### JDBC 驱动程序与 OCI 驱动程序

从版本 2020.2 开始，Tableau 建议您将 JDBC 驱动程序（可从 [驱动程序下载](https://www.tableau.com/zh-cn/support/drivers)页面获得）与该连接器一起使用。较新的 JDBC 驱动程序解决了 OCI 驱动程序的一些限制，例如没有空间支持或 Linux 上的 Kerberos 委派。

## 进行连接并设置数据源

1. 启动 Tableau，并在“连接”下选择“Oracle”。有关数据连接的完整列表，请在“至服务器”下选择“更多”。然后执行以下操作：

1. 输入服务器名称或 TNS 名称。
    
    - 如果输入服务器名称，您必须输入 Oracle 服务名称和端口号。
        
        **注意：**若要查找正确的服务名称，请打开 tnsnames.ora 文件（默认情况下位于 ORACLE\_HOME/network/admin 目录中），然后搜索 **net\_service\_name** 部分。使用为 **service\_name** 列出的值 。
    - 如果输入 TNS 名称，请**不要**输入 Oracle 服务名称和端口号。
2. 选择登录到服务器的方式。指定是使用集成身份验证还是使用特定的用户名和密码。
    
    在连接到 SSL 服务器时，选中“需要 SSL”复选框。
3. （可选）选择“初始 SQL”以指定要在每次连接开始时（例如打开工作簿、刷新数据提取、登录到 Tableau Server 或发布到 Tableau Server 时）运行的 SQL 命令。有关详细信息，请参见[运行初始 SQL](https://help.tableau.com/v0.0/pro/desktop/zh-cn/connect_basic_initialsql.htm)。
4. 选择“登录”。
    
    如果 Tableau 无法建立连接，请验证您的凭据是否正确。如果仍然无法连接，则说明您的计算机在定位服务器时遇到问题。请与您的网络管理员或数据库管理员联系以获得更多帮助。

3. 在数据源页面上，执行下列操作：
    
    1. （可选）在页面顶部选择默认数据源名称，然后输入要在 Tableau 中使用的唯一数据源名称。例如，使用可帮助其他数据源用户推断出要连接的数据源的数据源命名约定。
    2. 从“架构”下拉列表中，选择搜索图标，或在文本框中输入架构名称并选择搜索图标，然后选择架构。注意：搜索区分大小写。
    3. 在“表”下，选择搜索图标，或输入表名称并选择搜索图标，然后选择表。
        
        注意：搜索区分大小写。
        
        Tableau Desktop 还支持连接到 Oracle 表函数，这些函数出现在“数据源”页面左侧窗格中的“存储过程”下。
        
        从 Tableau 版本 2020.2 开始，您可以连接到空间列。有关详细信息，请参见[连接到数据库中的空间数据](https://help.tableau.com/v0.0/pro/desktop/zh-cn/maps_spatial_sql.htm)。
    4. 将表拖到画布，然后选择工作表标签以开始分析。
        
        使用自定义 SQL 连接到特定查询，而非整个数据源。有关详细信息，请参见[连接到自定义 SQL 查询](https://help.tableau.com/v0.0/pro/desktop/zh-cn/customsql.htm)。

## 登录到 Mac

如果在 Mac 上使用 Tableau Desktop，则在输入服务器名称进行连接时，请使用完全限定的域名（例如 mydb.test.ourdomain.lan）而不是相对域名（例如 mydb 或 mydb.test）。

或者，可以将域添加到 Mac 计算机的“搜索域”的列表中，以便在您连接时，只需要提供服务器名称。若要更新“搜索域”的列表，请转到“系统首选项”\>“网络”\>“高级”，然后打开“DNS”选项卡。

## 在 Tableau 中使用网络服务定义

为了在 Tableau 中使用网络服务定义，必须将 `TNS_ADMIN` 或 `ORACLE_HOME` 设置为环境变量。若要将 `TNS_ADMIN` 设置为环境变量，请使用包含 `tnsnames.ora` 文件的完整目录路径。若要将 `ORACLE_HOME` 设置为环境变量，请使用主 Oracle 目录的路径。

## 将工作簿从 Oracle OCI 连接器迁移到 Oracle JDBC 连接器

如果使用带有 SSL 的 Oracle OCI 连接器创建工作簿，然后尝试使用基于 JDBC 的 Oracle 连接器打开工作簿，则 Tableau 将无法找到相应的 SSL 证书。

#### 迁移工作簿

1. 将证书从 PKCS12 格式（由 Oracle Wallet 使用）转换为 JKS 格式。使用以下命令：
    
    keytool -importkeystore -srckeystore PFX\_P12\_FILE\_NAME -srcstoretype pkcs12 -srcstorepass PFX\_P12\_FILE -srcalias SOURCE\_ALIAS -destkeystore KEYSTORE\_FILE -deststoretype jks -deststorepass PASSWORD -destalias ALIAS\_NAME
2. 修改 oracle.properties 以自定义此连接，如下所示：
    
    javax.net.ssl.trustStore = <新 jks 文件路径>  
    javax.net.ssl.trustStoreType = JKS  
    javax.net.ssl.trustStorePassword = <新 jks 文件密码>

## 另请参见

- [设置数据源](https://help.tableau.com/v0.0/pro/desktop/zh-cn/datasource_prepare.htm) – 向此数据源中添加更多数据，或者在分析数据之前准备数据。
- [构建图表和分析数据](https://help.tableau.com/v0.0/pro/desktop/zh-cn/design_and_analyze.htm) – 开始数据分析。

- [Tableau 和 JDBC](https://help.tableau.com/current/pro/desktop/zh-cn/jdbc_tableau.htm) - 查找有关在 Tableau 中使用 JDBC 驱动程序和对其进行故障排除的提示。
- [Oracle JDBC 连接需要 SSL](https://help.tableau.com/v0.0/pro/desktop/zh-cn/jdbc_oracle_ssl_config.htm) - 将受信任的 SSL 证书添加到 Oracle JDBC 连接。
- [Oracle 连接错误故障排除](https://kb.tableau.com/articles/Issue/troubleshooting-oracle-connection-errors?lang=zh-cn) - 查看有关如何排查错误的 Tableau 知识库文章。