自定义和调整连接

您可以使用 TDC 文件自定义连接字符串的参数和连接的功能。这适用于 ODBC 和 JDBC 连接。

如果要自定义基于 JDBC 的连接,您也可以修改属性文件中的连接字符串参数。有关详细信息,请参见使用属性文件来自定义 JDBC 连接

重要信息:TDC 文件可用于定制连接的功能或诊断和解决与连接数据相关的问题。Tableau 无法彻底测试您可能对这些文件进行的所有潜在修改。创建和使用 TDC 文件需要手动编辑,并且在将其部署到生产环境之前对其进行彻底测试至关重要。

使用 TDC 文件来自定义连接

注意:每个连接器只能有一个 TDC 文件。如果有多个 TDC 文件引用同一个连接器,则只会应用一个。

TDC(Tableau 数据源自定义)文件是带有文件扩展名“.tdc”的 XML 文件。这些文件用于自定义特定于 Tableau 的设置。对于基于 ODBC 的连接,您还可以使用 TDC 文件来定义 ODBC 驱动程序支持的 ODBC 和 SQL 标准部分。

TDC 文件包含供应商名称、驱动程序名称和 <connection-customization>(也包括类)部分。对于内置连接器,供应商名称和驱动程序名称必须与连接器的类名称匹配。通常,供应商名称与驱动程序名称匹配。“其他数据库”连接器使用两个通用类名称:

  • 对于“其他数据库 (JDBC)”连接器,类名称为“genericjdbc”。
  • 对于“其他数据库 (ODBC)”连接器,类名称为“genericjdbc”。

如果现有工作簿或数据源文件已启用自定义项部分,Tableau 将仅使用它定义的自定义项,而不是 TDC 文件中定义的任何自定义项。

TDC 文件的结构

每个 TDC 文件都采用以下基本结构:

<connection-customization class=DSCLASS enabled='true' version='10.0'>
    <vendor name=VENDOR />
    <driver name=DRIVER />
    <customizations>
        <customization name='CAP_FAST_METADATA' value='yes'/>
        <customization name='CAP_SOMETHING_ELSE' value='yes'/>
        ...
    </customizations>
</connection-customization>

TDC 文件有三个主要部分:

  • 连接自定义变量
  • 供应商和驱动程序名称
  • 自定义项本身

connection-customization 部分包括以下内容:

  • class:想要连接并自定义的数据源。
  • enabled:指定是否应用了 TDC 文件连接自定义项。在 TDC 文件中,始终设置为“true”。
  • version:Tableau 忽略版本号。

下一部分至关重要,因为它标识此 TDC 文件的数据源的数据库提供程序的供应商名称和驱动程序名称。每个 TDC 文件只能绑定到一个数据源类型。对于我们的本机数据源,这些名称必须同时匹配数据源类名称;例如,对于我们的 Teradata 连接为“teradata”。对于 ODBC 数据源,TDC 文件的供应商名称和驱动程序名称必须与数据库和驱动程序向 Tableau 报告的内容匹配;例如,分别为“SQLite”和“SQLite3 ODBC Driver”。

最后一部分列出了实际的连接自定义项。

这里有两个示例 TDC 文件:第一个是通用 ODBC 连接;第二个是经过修改的本机 Salesforce 连接。请注意,这些仅用于示例目的,列出的自定义项并非为实现特定目标而选择。

<?xml version='1.0' encoding='utf-8' ?>
<connection-customization class='genericodbc' enabled='true' version='8.10'>
<vendor name='Gen_ODBC_Vendor'/>
<driver name='Gen_Driver'/>
<customizations>
<customization name='CAP_FAST_METADATA' value='yes' />
<customization name='CAP_ODBC_BIND_FORCE_MAX_STRING_BUFFERS' value='yes' />
<customization name='CAP_ODBC_BIND_PRESERVE_BOM' value='yes' />
</customizations>
</connection-customization>
<?xml version='1.0' encoding='utf-8' ?>
<connection-customization class='salesforce' enabled='true' version='8.10'>
  <vendor name='salesforce'/> 
  <driver name='salesforce'/>
  <customizations>
    <customization name='CAP_ODBC_EXPORT_CONTINUE_ON_ERROR' value='yes' />
    <customization name='CAP_ODBC_EXPORT_FORCE_SINGLE_ROW_BINDING' value='yes' />
    <customization name='CAP_ODBC_EXPORT_SUPPRESS_STRING_WIDTH_VALIDATION' value='no' />
  </customizations>
</connection-customization>

有关可用自定义项的详细信息,请参见:

使用属性文件来自定义 JDBC 连接

属性文件由 JDBC 使用,并直接传递到 JDBC 驱动程序。这些文件是具有“.properties”文件扩展名的纯文本文件。它们包含每个连接参数的键值对。

将属性文件与 JDBC 连接结合使用类似于在 ODBC 连接的 TDC 文件中使用 odbc-connect-string-extras 参数。

注意:属性文件应采用 Latin-1 格式(请参见https://en.wikipedia.org/wiki/.properties(链接在新窗口中打开))。但是,只要它仅包括 ASCII 字符,您就可以安全地以 UTF-8 格式保存文件,而无需 BOM(字节顺序标记)。

在文件中,将每个键值对放在其自己的行上,不带分隔符。为文件指定与相应连接器相同的名称,但具有“.properties””文件扩展名。例如,SAP HANA 连接器的属性文件将是“saphana.properties”。

安装 tdc 和属性文件

一旦创建了自定义文件(TDC 或属性),必须将其放置在特定的“Datasource”目录,以便 Tableau 产品能够发现和使用它。例如,如果用户要将内容从 Tableau Desktop 发布到 Tableau Server,则应将自定义内容复制到两个产品目录中。

将文件复制到适当的目录后,必须重新启动 Tableau(如果使用 Tableau Server,则包括所有节点)才能识别更改。请参见下文了解默认安装目录路径。

Tableau Desktop 应用程序路径

  • Desktop/Windows:C:\Users\myuser\My Tableau Repository\Datasources
  • Desktop/Mac:~/Documents/My Tableau Repository/Datasources
  • Prep Builder/Windows:C:\Users\myuser\Documents\My Tableau Prep Repository\Datasource
  • Prep Builder/Mac:~/Documents/My Tableau Prep Repository/Datasources
  • Bridge/Windows:C:\Users\myuser\Documents\My Tableau Bridge Repository\Datasources
  • Bridge/Linux:/root/Documents/My_Tableau_Bridge_Repository/Datasources/

Tableau Server 路径

注意:必须将自定义文件复制到每个正在使用的服务器节点的相应目录中。

  • Windows:
  • Server:C:\Program Files\Tableau\Tableau Server\data\tabsvc\vizqlserver\Datasources
    C:\Program Files\Tableau\Tableau Server\packages\bin.<build number>
  • 虚拟连接:C:\Program Files\Tableau\Tableau Server\data\tabsvc\minerva\Datasources
  • Prep 流程:C:\Program Files\Tableau\Tableau Server\data\tabsvc\flowprocessor\Datasources
  • Prep Web 制作:C:\Program Files\Tableau\Tableau Server\data\tabsvc\flowminerva\Datasources
  • Linux
  • Server:/var/opt/tableau/tableau_server/data/tabsvc/vizqlserver/Datasources/
  • 虚拟连接:/var/opt/tableau/tableau_server/data/tabsvc/minerva/Datasources/
  • Prep 流程:/var/opt/tableau/tableau_server/data/tabsvc/flowprocessor/Datasources/
  • Prep Web 制作:/var/opt/tableau/tableau_server/data/tabsvc/flowminerva/Datasources/

将自定义 TDC 或属性文件保存到正确的位置并重新启动应用程序后,它们将应用于同一数据源类型的所有连接。

感谢您的反馈!您的反馈已成功提交。谢谢!