sql >> Databáze >  >> RDS >> Oracle

Připojení k databázi Oracle 12c z Pentaho Data Integration (Kettle) Community Edition

Úvod

Nástroje Pentaho Data Integration (DI) (také známé jako Kettle) obsahují výkonný sortiment nástrojů pro filtrování a transformaci dat, které lze použít k provádění procesů extrahování, transformace a načítání. Pentaho DI Community Edition přichází s kolekcí databázových ovladačů, které mohou přistupovat k mnoha různým databázovým systémům buď jako zdroj dat (vstup) nebo cíl (výstup). Komunitní edice se však nemusí dodávat s ovladači pro databázi Oracle. Následující poznámky předpokládají, že Pentaho DI (konvice) byla nainstalována v souladu s těmito poznámkami k instalaci Pentaho DI.

Instalace ovladačů Oracle JDBC

Chcete-li používat zdroje dat Oracle s Pentaho DI, musíte se nejprve ujistit, že jsou nainstalovány ovladače Oracle JDBC. Pokud ne, získejte je od společnosti Oracle a nainstalujte je do složky lib pro Pentaho DI.

Ovladače Oracle JDBC jsou dodávány s každou instalací Oracle Server a lze je nalézt v \jdbc složka domovské stránky Oracle. Pokud nemáte přístup k serveru Oracle, můžete si stáhnout nejnovější ovladače z webu JDBC společnosti Oracle. Ujistěte se, že jste si stáhli ovladače JDBC, které odpovídají verzi Java Runtime Environment (JRE), kterou používáte.

Zkopírujte ovladače Oracle JDBC Drivers do složky Pentaho\data-integration\lib. Při spuštění Pentaho DI s Java7 použijte verze Java 7 ovladačů JDBC, jak je znázorněno na obrázku níže:

Přidání podpory pro peněženky Oracle

Pokud se hodláte připojit k zabezpečené databázi Oracle, jako je autonomní databáze v Oracle Cloud (jako v tomto příkladu), nezapomeňte si také stáhnout a zkopírovat soubory podpory JDBC včetně (pro JDK verze 8):

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

DŮLEŽITÉ:Po zkopírování nového jar nezapomeňte znovu spustit Pentaho Data Integration soubory do lib složka.

Pokyny pro nastavení nového připojení k Oracle od PDI jsou uvedeny na další stránce.

Spuštění Pentaho DI a vytvoření transformace výstupu tabulky

Spusťte Spoon a vytvořte novou transformaci pro výstup tabulky

Získejte vlastnosti výstupu tabulky, jak je uvedeno níže:

Pro připojení klikněte na tlačítko New… a vytvořte nové připojení.

Pojmenujte své nové připojení k databázi a jako Typ připojení vyberte Oracle. Vyberte JDBC (Native) jako typ přístupu.

Vyplňte název hostitele nebo adresu IP serveru, na kterém je aktuálně spuštěn Oracle. Pokud používáte Oracle na svém vlastním místním počítači, použijte adresu IP localhost 127.0.0.1. Nastavte číslo portu na místo, kde běží posluchač databáze Oracle. Ve výchozím nastavení je to port 1521.

Vyplňte Název databáze podle názvu služby Oracle nebo SID. Pokud je vaše databáze Oracle 12c nakonfigurována se zásuvnými databázemi, použijte lomítko následované názvem zásuvné databáze (pdb1 v příkladu níže).

Zadejte uživatelské jméno a heslo účtu Oracle pro připojení. Pokud pole Tablespace for Data a Tablespace for Index zůstanou prázdná, použijí se výchozí tabulkové prostory pro schéma. Pokud je chcete změnit, zadejte názvy tabulkových prostorů podle pokynů.

Po dokončení otestujte připojení kliknutím na tlačítko Test.

Běžné chybové zprávy

Pokud se test nezdaří, zkontrolujte chybové zprávy. Například:

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

Zkontrolujte uživatelské jméno a heslo

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

Zkontrolujte název databáze (název služby Oracle, SID nebo název připojitelné databáze)

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

Zkontrolujte název hostitele a/nebo číslo portu.

ORA-28000, Account Locked

Ujistěte se, že je účet Oracle odemčen a heslo je aktuální. V některých případech, pokud je heslo v „době odkladu“, může to Pentaho stále interpretovat jako „účet uzamčen“. Správce databáze bude možná muset váš účet odemknout ručně (ALTER USER xyz ACCOUNT UNLOCK; ) nebo resetujte své heslo.

Jakmile je test úspěšný, klikněte na tlačítko OK a spojení databáze se uloží do transformace výstupu tabulky. Ujistěte se, že cílové schéma odpovídá uživatelskému jménu a/nebo zamýšlenému schématu pro operaci výstupu (nebo vstupu) dat.


  1. Zde jsou tři důvody, proč můžete ve své instanci SQL zaznamenat špičkovou aktivitu

  2. Chyba serveru SQL 206:Kolize typu operandu

  3. Příklad zřetězené funkce Oracle

  4. Rychle vytvořte rozhraní PHP CRUD pomocí nástroje PDO Advanced CRUD Generator Tool