Oracle

本文介紹如何將 Tableau 連線到 Oracle 資料庫並設定資料來源。

附註:從 Tableau 2020.2 開始,若要使用 net_service_names 將資料來源或工作簿發佈至 Tableau Server,請確保檢閱知識庫文章「將 Oracle 連線設定為使用 TNSNames.ora 或 LDAP.ora」中描述的更新功能。

開始之前

在開始之前,請收集以下連線資訊:

  • 託管要連線到的資料庫的伺服器的名稱(主機名稱)以及 Oracle 服務名稱和埠,或 TNS 名稱

  • 驗證方法:整合驗證或使用者名和密碼

  • 是否要連線到 SSL 伺服器?您必須設定 Oracle 用戶端,然後才能將 SSL 用於 Tableau。

    如果您使用的是版本 2020.2 或更新版本,請參閱 Oracle JDBC 連線需要 SSL

  • (可選)要在每次 Tableau 連線時執行的初始 SQL 語句

需要驅動程式

此連接器需要驅動程式才能與資料庫通訊。如果電腦上未安裝該驅動程式,Tableau 會在連線對話方塊中顯示一條訊息,其中包含指向驅動程式下載(連結在新視窗開啟)頁面的連結,您可在該頁面中找到驅動程式連結和安裝說明。

JDBC 驅動程式對比 OCI 驅動程式

從版本 2020.2 開始,Tableau 建議您將 JDBC 驅動程式(可從 驅動程式下載(連結在新視窗開啟)頁面取得)與該連接器一起使用較新的 JDBC 驅動程式解決了 OCI 驅動程式的一些限制,例如沒有空間支援或 Linux 上的 Kerberos 委派。

附註:如果使用此連線器的 JDBC 驅動程式遇到問題,則 OCI 驅動程式仍然可用,便可以取而代之。需要說明,請參閱 驅動程式下載(連結在新視窗開啟)頁面。

進行連線並設定資料來源

  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

    4. 選取 [登入]

      如果 Tableau 無法建立連線,請驗證您的認證是否正確。如果仍然無法連線,則說明您的電腦在定位伺服器時遇到問題。請聯絡您的網路系統管理員或資料庫管理員。

  2. 在資料來源頁面上,執行下列操作:

    1. (可選)在頁面頂端選取預設資料來源名稱,然後輸入要在 Tableau 中使用的唯一資料來源名稱。舉例來說,使用可幫助其他資料來源使用者推斷出要連線的資料來源的資料來源命名約定。

    2. [結構描述] 下拉清單中,選取搜尋圖示,或在文字方塊中輸入結構描述名稱並選取搜尋圖示,然後選取結構描述。附註:搜尋區分大小寫。

    3. [表] 下,選取搜尋圖示,或輸入表名稱並選取搜尋圖示,然後選取表。

      附註:搜尋區分大小寫。

      Tableau Desktop 還支援連線到 Oracle 表函數,這些函數出現在 [資料來源] 頁面左側窗格中的 [預存程序] 下。

      從 Tableau 版本 2020.2 開始,您可以連線到空間列。如需詳細資訊,請參閱連線到資料庫中的空間資料(連結在新視窗開啟)

    4. 將表拖到畫布,然後選取工作表索引標籤以開始分析。

      使用自訂 SQL 連線到特定查詢,而非整個資料來源。有關詳情,請參閱連線到自訂 SQL 查詢

登入到 Mac

如果在 Mac 上使用 Tableau Desktop,則在輸入伺服器名稱進行連線時,請使用完整網域名稱(例如 mydb.test.ourdomain.lan)而不是相對的網域名稱(例如 mydb 或 mydb.test)。

或者,可以將網域新增到 Mac 電腦的「搜尋網域」的清單中,以便在您連線時,只需要提供伺服器名稱。若要更新「搜尋網域」的清單,請轉到「系統喜好設定」>「網路」>「進階」,然後開啟「DNS」索引標籤。

在 Tableau 中使用網路服務定義

若要在 Tableau 中使用網路服務定義,必須將 TNS_ADMINORACLE_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 = <new jks file path>
    javax.net.ssl.trustStoreType = JKS
    javax.net.ssl.trustStorePassword = <new jks file password>

 

另請參閱

感謝您的意見反應!已成功提交您的意見回饋。謝謝!