Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Łączenie się z bazą danych Oracle 12c z Pentaho Data Integration (Kettle) Community Edition

Wprowadzenie

Narzędzia Pentaho Data Integration (DI) (znane również jako Kettle) zawierają potężny zestaw narzędzi do filtrowania i transformacji danych, których można używać do przeprowadzania procesów wyodrębniania, przekształcania i ładowania. Pentaho DI Community Edition zawiera kolekcję sterowników baz danych, które mogą uzyskiwać dostęp do wielu różnych systemów baz danych jako źródło danych (wejście) lub cel (wyjście). Jednak wersja Community może nie być dostarczana ze sterownikami do bazy danych Oracle. Poniższe uwagi zakładają, że Pentaho DI (czajnik) został zainstalowany zgodnie z tymi uwagami dotyczącymi instalacji Pentaho DI.

Instalowanie sterowników Oracle JDBC

Aby korzystać ze źródeł danych Oracle z Pentaho DI, należy najpierw upewnić się, że zainstalowano sterowniki Oracle JDBC. Jeśli nie, uzyskaj je od Oracle i zainstaluj w folderze lib dla Pentaho DI.

Sterowniki Oracle JDBC są dostarczane z każdą instalacją Oracle Server i można je znaleźć w \jdbc folder domu Oracle. Jeśli nie masz dostępu do serwera Oracle, możesz pobrać najnowsze sterowniki ze strony internetowej Oracle JDBC. Pamiętaj, aby pobrać sterowniki JDBC, które pasują do używanej wersji środowiska Java Runtime Environment (JRE).

Skopiuj sterowniki Oracle JDBC do folderu Pentaho\data-integration\lib. Podczas uruchamiania Pentaho DI z Java7 użyj wersji Java 7 sterowników JDBC, jak pokazano na poniższym rysunku:

Dodawanie wsparcia dla portfeli Oracle

Jeśli zamierzasz połączyć się z bezpieczną bazą danych Oracle, taką jak Autonomous Database w Oracle Cloud (jak w tym przykładzie), pamiętaj, aby również pobrać i skopiować pliki obsługi JDBC, w tym (dla JDK w wersji 8):

ojdbc8.jar
oraclepki.jar
osdt_cert.jar
osdt_core.jar

WAŻNE:Pamiętaj, aby ponownie uruchomić integrację danych Pentaho po skopiowaniu nowego jar pliki do lib folder.

Instrukcje dotyczące konfigurowania nowego połączenia z Oracle z PDI znajdują się na następnej stronie.

Uruchamianie Pentaho DI i tworzenie transformacji danych wyjściowych tabeli

Uruchom Spoon i utwórz nową transformację dla danych wyjściowych tabeli

Pobierz właściwości danych wyjściowych tabeli, jak pokazano poniżej:

W przypadku połączenia kliknij przycisk Nowe…, aby utworzyć nowe połączenie.

Nadaj nowemu połączeniu z bazą danych nazwę, a następnie wybierz Oracle jako Typ połączenia. Wybierz JDBC (natywny) jako typ dostępu.

Wpisz nazwę hosta lub adres IP serwera, na którym aktualnie działa Oracle. Jeśli używasz Oracle na własnym komputerze lokalnym, użyj adresu IP hosta lokalnego 127.0.0.1. Ustaw numer portu, na którym działa nasłuchiwanie bazy danych Oracle. Domyślnie jest to port 1521.

Wpisz nazwę bazy danych zgodnie z nazwą usługi Oracle lub identyfikatorem SID. Jeśli twoja baza danych Oracle 12c jest skonfigurowana z podłączanymi bazami danych, użyj ukośnika, po którym następuje nazwa podłączanej bazy danych (pdb1 w poniższym przykładzie).

Podaj nazwę użytkownika i hasło konta Oracle dla połączenia. Jeśli pola Przestrzeń tabel dla danych i Przestrzeń tabel dla indeksu pozostaną puste, zostaną użyte domyślne obszary tabel dla schematu. Jeśli chcesz je zmienić, wpisz nazwy obszarów tabel zgodnie z monitami.

Po zakończeniu kliknij przycisk Testuj, aby przetestować połączenie.

Typowe komunikaty o błędach

Jeśli test się nie powiedzie, sprawdź komunikaty o błędach. Na przykład:

Error connecting to database [Oracle12cDatabase] : org.pentaho.di.core.exception.KettleDatabaseException: 
Error occurred while trying to connect to the database
Error connecting to database: (using class oracle.jdbc.driver.OracleDriver)
ORA-01017: invalid username/password; logon denied

Sprawdź nazwę użytkownika i hasło

Error connecting to database [Oracle12cDatabase] : org.pentaho.di.core.exception.KettleDatabaseException: 
Error occurred while trying to connect to the database
Error connecting to database: (using class oracle.jdbc.driver.OracleDriver)
Listener refused the connection with the following error:
ORA-12514, TNS:listener does not currently know of service requested in connect descriptor

Sprawdź nazwę bazy danych (nazwę usługi Oracle, identyfikator SID lub nazwę bazy danych, którą można podłączyć)

Error connecting to database [Oracle12cDatabase] : org.pentaho.di.core.exception.KettleDatabaseException: 
Error occurred while trying to connect to the database
Error connecting to database: (using class oracle.jdbc.driver.OracleDriver)
IO Error: The Network Adapter could not establish the connection

Sprawdź nazwę hosta i/lub numer portu.

ORA-28000, Account Locked

Upewnij się, że konto Oracle jest odblokowane, a hasło jest aktualne. W niektórych przypadkach, jeśli hasło jest w „okresie prolongaty”, Pentaho może nadal interpretować to jako „zablokowane konto”. Administrator bazy danych może być zmuszony do ręcznego odblokowania konta (ALTER USER xyz ACCOUNT UNLOCK; ) lub zresetuj hasło.

Po pomyślnym zakończeniu testu kliknij przycisk OK, a baza danych Connection zostanie zapisana w transformacji Table Output. Upewnij się, że schemat docelowy jest zgodny z nazwą użytkownika i/lub zamierzonym schematem operacji wyprowadzania (lub wprowadzania) danych.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Samozadowolenie prowadzi do:Ryzyko staje się rzeczywistością

  2. Instalowanie Oracle 12c Standard Edition w systemie Windows 10 Professional

  3. Jak odświeżyć zmaterializowany widok w Oracle?

  4. Moje statystyki Optymalizatora 11g Praca, Zakończ ze mną – Naprawiono

  5. Błąd wyzwalacza Oracle ORA-04091