# Oracle

Esta seção explica como configurar a conectividade com um destino do Oracle usando o conector de destino do Oracle. O Oracle pode ser usado apenas em uma tarefa de replicação. Antes de se conectar a um destino do Oracle você precisa configurar o [Permissões necessárias](https://help.qlik.com/pt-BR/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/TargetConnections/oracle-target.htm#Permissi) no banco de dados. Se você estiver se conectando ao Oracle via Gateway Data Movement, também precisará instalar o driver, conforme descrito em [Configuração do driver](https://help.qlik.com/pt-BR/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/TargetConnections/oracle-target.htm#Driver).

Para obter informações sobre as limitações e considerações ao usar o conector do Oracle, consulte [Limitações e considerações](https://help.qlik.com/pt-BR/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/TargetConnections/oracle-target.htm#Limitati).

## Configurando propriedades de conexão

Para configurar o conector, faça o seguinte:

1. Em Conexões, clique em Criar conexão.

2. Selecione o conector de destino do Oracle e forneça as seguintes configurações:

### Destino de dados

* Gateway de dados: Ao trabalhar com o Gateway Data Movement, selecione o gateway de dados que será usado para testar a conexão com o destino Oracle. Deve ser o mesmo gateway usado para acessar a fonte de dados.

  Nota informativa

  * Este campo não está disponível com as assinaturas do Iniciante do Qlik Talend Cloud, pois o Gateway Data Movement não é compatível com esse nível de assinatura.

  * Você também precisa instalar o driver apropriado na máquina do Gateway Data Movement. Para detalhes, consulte [Configuração do driver](https://help.qlik.com/pt-BR/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/TargetConnections/oracle-target.htm#Driver) abaixo.

* String de conexão: a String de Conexão Oracle do banco de dados Oracle com o qual você deseja trabalhar.

  Nota informativa

  * Ao replicar para um Oracle Autonomous Data Warehouse, primeiro você precisa executar o procedimento descrito em [Conectando-se a um armazém de dados autônomo do Oracle](https://help.qlik.com/pt-BR/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/TargetConnections/oracle-target.htm#Connecti).
  * Essas informações diferenciam maiúsculas de minúsculas.

### Propriedades da conta

Nome de usuário e Senha: o nome de usuário e a senha de um usuário autorizado a acessar o banco de dados Oracle Server.

### Propriedades internas

Propriedades internas são para casos de uso especiais e, portanto, não são expostas na caixa de diálogo. Você só deve usá-las se instruído pelo Suporte da Qlik.

Use os botões the Criar novo icon e the Cancelar icon à direita dos campos para adicionar ou remover propriedades conforme necessário.

### Nome

O nome de exibição da conexão.

## Pré-requisitos

### Permissões necessárias

O usuário especificado na string de conexão deve receber os seguintes privilégios no banco de dados Oracle:

* CREATE ANY TABLE

* CREATE ANY INDEXES

* ALTER ANY TABLE

* DROP ANY TABLE

* INSERT ANY TABLE

* UPDATE ANY TABLE

* DELETE ANY TABLE

* SELECT ANY TABLE

* SELECT all\_indexes

* SELECT all\_ind\_columns

* SELECT all\_constraints

* SELECT all\_cons\_columns

* LOCK ANY TABLE

### Configuração do driver

Você pode instalar o driver usando o utilitário de instalação do driver (recomendado) ou manualmente. A instalação manual só deve ser tentada no caso improvável de você encontrar um problema com o utilitário de instalação do driver.

#### Usando o utilitário de instalação de driver para instalar o driver

Esta seção descreve como instalar o driver necessário. O processo envolve a execução de um script que baixará, instalará e configurará automaticamente os driver necessários. Você também pode executar scripts para atualizar e desinstalar o driver como necessário.

Preparando a instalação

* Certifique-se de que o Python 3.6.x ou mais recente esteja instalado no servidor de gateway do Data Movement.

  O Python vem pré-instalado na maioria das distribuições do Linux. Você pode verificar qual versão do Python está instalada em seu sistema executando o seguinte comando:

  python3 --version

Instalando o driver

Para baixar e instalar o driver:

1. Na máquina do gateway do Data Movement, altere o diretório de trabalho para:

   opt/qlik/gateway/movement/drivers/bin

2. Execute o seguinte comando:

   Sintaxe:

   ./install oracle

   Se o driver não puder ser baixado (devido a restrições de acesso ou problemas técnicos), uma mensagem será exibida informando onde baixar o driver e onde copiá-lo na máquina de gateway do Data Movement. Depois de fazer isso, execute o comando install oracle novamente.

   Caso contrário, o EULA do driver será exibido.

3. Realize uma das seguintes ações:

   * Pressione [Enter] repetidamente para percorrer lentamente o EULA.
   * Pressione a barra de espaço repetidamente para rolar rapidamente pelo EULA.
   * Pressione q para sair do texto da licença e ser apresentado às opções de aceitação do EULA.

4. Realize uma das seguintes ações:

   * Digite "y" e pressione [Enter] para aceitar o EULA e iniciar a instalação.

   * Digite "n" e pressione [Enter] para rejeitar o EULA e sair da instalação.

   * Digite "v" e pressione [Enter] para visualizar o EULA novamente.

   O driver será instalado.

Atualizando o driver

Execute o comando de atualização se quiser desinstalar versões anteriores do driver antes de instalar o driver fornecido.

Para baixar e atualizar o driver:

1. Na máquina do gateway do Data Movement, altere o diretório de trabalho para:

   opt/qlik/gateway/movement/drivers/bin

2. Execute o seguinte comando:

   Sintaxe:

   ./update oracle

   Se o driver não puder ser baixado (devido a restrições de acesso ou problemas técnicos), uma mensagem será exibida informando onde baixar o driver e onde copiá-lo na máquina de gateway do Data Movement. Depois de fazer isso, execute o comando update oracle novamente.

   Caso contrário, o EULA do driver será exibido.

3. Realize uma das seguintes ações:

   * Pressione [Enter] repetidamente para percorrer lentamente o EULA.
   * Pressione a barra de espaço repetidamente para rolar rapidamente pelo EULA.
   * Pressione q para sair do texto da licença e ser apresentado às opções de aceitação do EULA.

4. Realize uma das seguintes ações:

   * Digite "y" e pressione [Enter] para aceitar o EULA e iniciar a instalação.
   * Digite "n" e pressione [Enter] para rejeitar o EULA e sair da instalação.
   * Digite "v" e pressione [Enter] para revisar o EULA desde o início.

   O driver antigo será desinstalado, e o novo driver será instalado.

Desinstalando o driver

Execute o comando de desinstalação se quiser desinstalar o driver.

Para desinstalar o driver:

1. Pare todas as tarefas configuradas para usar esse conector.

2. Na máquina do gateway do Data Movement, altere o diretório de trabalho para:

   opt/qlik/gateway/movement/drivers/bin

3. Execute o seguinte comando:

   Sintaxe:

   ./uninstall oracle

   O driver será desinstalado.

#### Instalando o driver manualmente

Você só deve tentar instalar o driver manualmente se a instalação automática do driver não for concluída com êxito.

Após a instalação do Gateway Data Movement, baixe o driver oracle-instantclient-basiclite-&lt;version&gt;.x86\_64.rpm. Você pode encontrar um link de download direto para a versão compatível em binary-artifacts em /opt/qlik/gateway/movement/drivers/manifests/oracle.yaml. Assim que o download for concluído, copie o RPM para a máquina Gateway Data Movement.

Em seguida, no servidor do Gateway Data Movement, abra um prompt de shell e faça o seguinte:

1. Pare o serviço do Gateway Data Movement:

   sudo systemctl stop repagent

2. Opcionalmente, confirme se o serviço foi interrompido:

   sudo systemctl status repagent

   O status deverá ser o seguinte:

   Active: inactive (dead) since &lt;timestamp&gt; ago

3. Instale o driver (RPM).

4. Além disso, se ainda não estiver incluído em seu sistema, crie um link simbólico no diretório `$Oracle_Home\lib`. Nomeie o link como `libclntsh.so` e aponte-o para uma versão específica deste arquivo.

   Exemplo:

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

5. Altere o diretório de trabalho para &lt;Gateway Data Movement-Install-Dir&gt;/bin e anexe a variável de ambiente `LD_LIBRARY_PATH` ao diretório do Oracle Instant Client e ao diretório Gateway Data Movementlib, copiando o local do driver para o arquivo `site_arep_login.sh`:

   echo "export LD\_LIBRARY\_PATH=\$LD\_LIBRARY\_PATH:/opt/oracle/instantclient\_&lt;version&gt;:/opt/qlik/gateway/movement/lib/" &gt;&gt; site\_arep\_login.sh

6. Opcionalmente, confirme se a localização do driver foi copiada:

   ```
   cat site_arep_login.sh
                           
   ```

7. Inicie o serviço do Gateway Data Movement:

   sudo systemctl start repagent

8. Opcionalmente, confirme se o serviço foi iniciado:

   sudo systemctl status repagent

   O status deverá ser o seguinte:

   Active: active (running) since &lt;timestamp&gt; ago

### Conectando-se a um armazém de dados autônomo do Oracle

O procedimento a seguir deve ser realizados ao replicar para um Oracle Autonomous Data Warehouse.

Para configurar a conectividade com o Oracle Autonomous Data Warehouse (ADW), você precisa do arquivo ZIP de Credenciais do cliente (Wallet) que baixou ao configurar seu ambiente do Oracle Autonomous Data Warehouse.

Para permitir que o Qlik Talend Data Integration se conecte ao Oracle Autonomous Data Warehouse:

1. Extraia o conteúdo do arquivo ZIP de credenciais do cliente para uma pasta de sua escolha.

   Pode ser qualquer pasta, mas para efeitos deste procedimento, /home/adw\_credentials será a pasta Linux que contém os arquivos extraídos.

2. Na pasta que contém os arquivos extraídos, edite o arquivo sqlnet.ora, substituindo ?/network/admin pelo caminho da pasta que contém os arquivos extraídos:

   `WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="/home/adw_credentials")))`

   `SSL_SERVER_DN_MATCH=yes`

3. Crie a variável de ambiente TNS\_ADMIN e defina-a como o local do arquivo de credenciais.

   Execute os seguintes comandos:

   `export TNS_ADMIN=/home/adw_credentials`

   `export PATH=$TNS_ADMIN:$PATH`

4. No campo String de conexão do conector de Destino Oracle, insira um dos nomes do arquivo tnsnames.ora.

Para obter mais informações sobre como configurar a conectividade com o Oracle ADW, consulte:

[Conectar o processamento autônomo de transações usando um aplicativo cliente](https://docs.oracle.com/en/cloud/paas/atp-cloud/atpug/connect-preparing.html#GUID-EFAFA00E-54CC-47C7-8C71-E7868279EF3B)

## Limitações e considerações

As seguintes limitações se aplicam ao usar o Oracle como destino de replicação:

* Não é possível criar novos esquemas no banco de dados Oracle. Para replicar para um novo esquema, o nome do novo esquema já deve existir no banco de dados de destino. Você deve então especificar o novo nome do esquema na guia [Metadata](https://help.qlik.com/pt-BR/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Replicating/replicating-settings-metadata.htm) de configurações da tarefa.

* Ao trabalhar no modo [Aplicação otimizada em lote](https://help.qlik.com/pt-BR/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Replicating/replicating-settings-replication.htm), colunas LOB vazias podem ser replicadas como valores NULL.

* Após a conclusão do carregamento total, se a opção Limitar tamanho do LOB a estiver ativada e uma tabela contiver dados NCLOB, o tamanho do NCLOB no destino será truncado para metade do tamanho especificado no campo [Limitar tamanho do LOB a](https://help.qlik.com/pt-BR/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Replicating/replicating-settings-metadata.htm). A CDC ainda irá truncá-lo de acordo com o limite.

## Tipos de dados

As informações do tipo de dados nativo são preservadas e exibidas na coluna Tipo de dados nativo nas visualizações do conjunto de dados. Se a coluna não estiver visível, será necessário abrir o seletor de colunas da visualização do conjunto de dados e selecionar a coluna Tipo de dados nativo.

Tipos de dados

| Qlik Cloud Tipos de dados | Tipos de dados Oracle |
| --- | --- |
| BOOLEAN | NUMBER (1) |
| BYTES | RAW (length) |
| DATE | DATETIME |
| TIME | TIMESTAMP (0) |
| DATETIME | Se scale &lt;= 9, então TIMESTAMP (scale)<br><br>Caso contrário, VARCHAR2 (37) |
| INT1 | NUMBER (3) |
| INT2 | NUMBER (5) |
| INT4 | NUMBER (10) |
| INT8 | NUMBER (19) |
| NUMERIC | NUMBER (p,s) |
| REAL4 | BINARY\_FLOAT |
| REAL8 | BINARY\_DOUBLE |
| STRING | Com indicação de data: DATE<br><br>Com indicação de hora: TIMESTAMP<br><br>Com indicação de carimbo de data/hora: TIMESTAMP<br><br>Com indicação de timestamp\_with\_timezone: TIMESTAMP WITH TIMEZONE<br><br>Com indicação de timestamp\_with\_local\_timezone: TIMESTAMP WITH LOCAL TIMEZONE<br><br>Com indicação de interval\_year\_to\_month: INTERVAL YEAR TO MONTH<br><br>Com indicação de interval\_day\_to\_second: INTERVAL DAY TO SECOND<br><br>Se Comprimento &gt; 4000: CLOB<br><br>Em todos os outros casos: VARCHAR2 (comprimento) |
| UINT1 | NUMBER (3) |
| UINT2 | NUMBER (5) |
| UINT4 | NUMBER (10) |
| UINT8 | NUMBER (19) |
| WSTRING | NVARCHAR2 (length)<br><br>Observe que, quando o comprimento for maior que 2.000, o tipo de dados da coluna será NCLOB. |
| BLOB | BLOB<br><br>Nota informativa<br><br><ul> <li>Para usar esse tipo de dados em uma tarefa de replicação, você deve ativar o uso de BLOBs para uma tarefa específica.</li> <li>Durante o CDC ou durante o carregamento total, quando a opção <span>Permitir tamanho LOB ilimitado</span> está habilitada, os tipos de dados LOB têm suporte apenas em tabelas com chave primária ou índice exclusivo. </li> </ul> |
| CLOB | CLOB<br><br>Nota informativa<br><br><ul> <li>Para usar esse tipo de dados em uma tarefa de replicação, você deve ativar o uso de CLOBs para uma tarefa específica.</li> <li>Durante o CDC ou durante o carregamento total, quando a opção <span>Permitir tamanho LOB ilimitado</span> está habilitada, os tipos de dados LOB têm suporte apenas em tabelas com chave primária ou índice exclusivo. </li> </ul> |
| NCLOB | NCLOB<br><br>Nota informativa<br><br><ul> <li>Para usar esse tipo de dados em uma tarefa de replicação, você deve ativar o uso de NCLOBs para uma tarefa específica.</li> <li>Durante o CDC ou durante o carregamento total, quando a opção <span>Permitir tamanho LOB ilimitado</span> está habilitada, os tipos de dados LOB têm suporte apenas em tabelas com chave primária ou índice exclusivo. </li> </ul> |
| O tipo de dados de destino XMLTYPE só é relevante em tarefas de replicação Oracle para Oracle. Veja a nota abaixo. | XMLTYPE |