自定义和调整连接
您可以使用 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 或属性文件保存到正确的位置并重新启动应用程序后,它们将应用于同一数据源类型的所有连接。