跳到主要內容 跳至補充內容

必要條件

在您可以登陸或複寫資料之前,確認完成下列先決條件:

  • 在 Data Movement 閘道伺服器安裝必要 driver

  • 在資料來源授予必要權限

  • 設定資料來源連接器

驅動程式的設定

您可以使用驅動程式安裝公用程式 (建議) 或手動安裝 driver。只能在不太可能發生的事件 (您在使用驅動程式安裝公用程式時遇到問題) 中嘗試手動安裝。

使用驅動程式安裝公用程式來安裝驅動程式

此區段描述如何安裝所需的 driver。該流程涉及執行將會自動下載、安裝並設定所需 driver 的指令碼。您也可以執行指令碼,以根據需求更新並解除安裝 driver

準備安裝

  • 確認 Python 3.6 或更高版本安裝於 資料移動 閘道伺服器。

    Python 會預先安裝在大部分的 Linux 發行版。您可以執行下列命令,以查看哪個 Python 版本安裝在您的系統上:

    python3 --version

安裝 driver

若要下載並安裝 driver

  1. 資料移動 閘道機器上,將工作目錄變更為:

    opt/qlik/gateway/movement/drivers/bin

  2. 執行下列命令:

    語法:

    ./install oracle

    若無法下載 driver (由於存取限制或技術問題),將會顯示訊息,指示您到哪裡下載 driver 以及在 資料移動 閘道機器上的何處複製。完成後,再次執行 install oracle 命令。

    否則,就會顯示 driver 的 EULA。

  3. 執行下列其中一個動作:

    • 重複按下 [Enter] 以緩慢瀏覽 EULA。
    • 重複按下空格鍵以快速瀏覽 EULA。
    • 按下 q 以結束授權文字並呈現 EULA 接受選項。
  4. 執行下列其中一個動作:

    • 輸入「y」並按下 [Enter] 以接受 EULA 並開始安裝。
    • 輸入「n」並按下 [Enter] 以拒絕 EULA 並退出安裝。
    • 輸入「v」並按下 [Enter] 以再次檢視 EULA。

  5. 將會安裝 driver

更新 driver

若您想要在安裝提供的 driver 之前解除安裝先前的 driver 版本,請執行更新命令。

若要下載並更新 driver

  1. 資料移動 閘道機器上,將工作目錄變更為:

    opt/qlik/gateway/movement/drivers/bin

  2. 執行下列命令:

    語法:

    ./update oracle

    若無法下載 driver (由於存取限制或技術問題),將會顯示訊息,指示您到哪裡下載 driver 以及在 資料移動 閘道機器上的何處複製。完成後,再次執行 update oracle 命令。

    否則,就會顯示 driver 的 EULA。

  3. 執行下列其中一個動作:

    • 重複按下 [Enter] 以緩慢瀏覽 EULA。
    • 重複按下空格鍵以快速瀏覽 EULA。
    • 按下 q 以結束授權文字並呈現 EULA 接受選項。
  4. 執行下列其中一個動作:

    • 輸入「y」並按下 [Enter] 以接受 EULA 並開始安裝。
    • 輸入「n」並按下 [Enter] 以拒絕 EULA 並退出安裝。
    • 輸入「v」並按下 [Enter] 以從頭檢閱 EULA。
  5. 將會解除安裝舊版 driver,並安裝新版 driver

解除安裝 driver

若您想要解除安裝 driver,請執行解除安裝命令。

若要解除安裝 driver

  1. 停止設定為使用此連接器的所有任務。

  2. 資料移動 閘道機器上,將工作目錄變更為:

    opt/qlik/gateway/movement/drivers/bin

  3. 執行下列命令:

    語法:

    ./uninstall oracle

    將會解除安裝 driver

手動安裝驅動程式

只有在自動驅動程式安裝無法成功完成時,才能嘗試手動安裝 driver

安裝 資料移動閘道 後,下載 oracle-instantclient-basiclite-<version>.x86_64.rpm 驅動程式。您可以在 /opt/qlik/gateway/movement/drivers/manifests/oracle.yamlbinary-artifacts 之下找到支援版本的直接下載連結。下載完成後,將 RPM 複製到 資料移動閘道 機器。

接著,在 資料移動閘道 伺服器上,開啟 shell prompt 並進行以下項目:

  1. 停止 資料移動閘道 服務:

    sudo systemctl stop repagent

  2. 可自選,確認服務已停止:

    sudo systemctl status repagent

  3. 狀態應如下所示:

    Active: inactive (dead) since <timestamp> ago

  4. 安裝驅動程式 (RPM)。
  5. 此外,如尚未納入您的系統,請在 $Oracle_Home\lib 目錄中建立象徵連結。將連結命名為 libclntsh.so,並指向此檔案的特定版本。

    lrwxrwxrwx 1 oracle oracle 63 Oct 2 14:16 libclntsh.so -> /u01/app/oracle/home/lib/libclntsh.so.21.1

  6. 將工作目錄變更為 <資料移動閘道-Install-Dir>/bin 並將 LD_LIBRARY_PATH 環境變數附加到 Oracle instant Client 目錄以及 資料移動閘道lib 目錄,作法是將驅動程式的位置複製到 site_arep_login.sh 檔案:

    echo "export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:/opt/oracle/instantclient_<version>:/opt/qlik/gateway/movement/lib/" >> site_arep_login.sh

  7. 可自選,確認已複製驅動程式位置:

    cat site_arep_login.sh
  8. 開始 資料移動閘道 服務:

    sudo systemctl start repagent

  9. 可自選,確認服務已開始:

    sudo systemctl status repagent

    狀態應如下所示:

    Active: active (running) since <timestamp> ago

提供 Oracle 帳戶存取權

您必須向 資料移動閘道 使用者提供 Oracle 帳戶存取權。這位使用者必須具有對 Oracle 資料庫的讀/寫權限。關於設定 Oracle 帳戶存取權如需詳細資訊,請參閱必要權限

確定 ARCHIVELOG 模式開啟

Oracle 能以兩種模式執行:ARCHIVELOG 模式和 NOARCHIVELOG 模式。如要將 Oracle 記錄搭配 資料移動閘道 使用,請以 ARCHIVELOG 模式執行資料庫。如果記錄未設定為 ARCHIVELOG 模式,則請執行以下查詢:

ALTER database ARCHIVELOG

請注意,若您的 Oracle 資料庫執行個體是在 Amazon RDS,需要執行不同的命令。如需詳細資訊,請參閱 啟用自動備份設定封存

設定補充記錄

必須為 Oracle 資料庫在資料庫層級、以及表格層級兩者啟用補充記錄。

資訊備註

要從 Oracle 待命環境登陸時,必須在主要 Oracle 執行個體 (如下文說明) 設定補充記錄,不可設定在待命執行個體。

在資料庫層級檢查及啟用補充記錄

  1. 執行以下查詢:

    SELECT name, value, description FROM v$parameter WHERE name = 'compatible';

    傳回的結果應該是從 GE to n.n.n 其中 n.n.n 是 Oracle 資料庫版本 (例如 10.0.0)。

    警告備註

    參數值必須符合資料庫的實際版本。

  2. 執行以下查詢:

    SELECT supplemental_log_data_min FROM v$database;

    傳回的結果應為 YES IMPLICIT

    執行以下查詢以啟用補充記錄:

    ALTER DATABASE ADD SUPPLEMENTAL LOG DATA

    資訊備註

    若您的 Oracle 資料庫執行個體是在 Amazon RDS,需要執行不同的命令。如需詳細資訊,請參閱使用 Amazon RDS for Oracle

在表格層級檢查及啟用補充記錄

  1. 如要檢查是否在表格層級啟用補充記錄,請執行以下查詢:

    語法:

    select count(*) from ALL_LOG_GROUPS where LOG_GROUP_TYPE='ALL COLUMN LOGGING' and OWNER= 'OWNER' and TABLE_NAME='TABLE-NAME';

    範例:

    select count(*) from ALL_LOG_GROUPS where LOG_GROUP_TYPE='ALL COLUMN LOGGING' and OWNER= 'HR' and TABLE_NAME='EMPLOYEES';

  2. 如要在表格層級啟用補充記錄,請執行以下查詢:

    語法:

    ALTER TABLE TABLE-NAME ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;

    範例:

    ALTER TABLE HR.EMPLOYEES ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;

另請參見: 必要權限

此頁面是否對您有幫助?

若您發現此頁面或其內容有任何問題——錯字、遺漏步驟或技術錯誤——請告知我們可以如何改善!