TOra 2.1.1 for Oracle

Alabb egy rovid leirast olvashattok a TOra nevezetu adatbazis-toolkit telepiteserol Linuxon.
Most szeptemberben jott ki egy friss release, Debian, Fedora/RedHat, Mac OSX es Windows rendszerekre kisebb-nagyobb csuszasokkal binaris csomag formajaban is megtalalhato a projekt sourceforge-os oldalan. Windows-ra egyelore csak a tavalyi 2.0-bol van build.

1.) Letoltes

- Oracle Instant Client for Linux (32bit)
* Instant Client Package - Basic
* Instant Client Package - SQL*Plus
* Instant Client Package - SDK

Ehelyett nyilvan barmi egyeb (tehat pl a rendes Oracle RDBMS) is megfelel, amiben az alabbi library-k megvannak (szerk. nem neveztem meg oket, szoval azok, amik benne vannak az instantclient-ben).
Az Oracle tamogatas nelkul a TOra MySQL-hez es PostgreSQL-hez is hasznalhato.

- TOra forraskod

2.) Oracle Instant Client 'telepitese' es konfiguracioja

Ha az RPM-ek helyett a zip-eket hasznaljuk, nem teljesen egyertelmu, hogy minek hol kell lennie, de mindenesetre az alabbiakkal nalam mukodik a TOra. Az SDK a fejleszteshez kellhet, amivel en nem foglalkozom. En a zip-eket kibontva a file-okat egyedi utvonalra telepitettem, a kovetkezo strukturaban (~150MB):

binarisok:

/usr/local/oracle/bin/genezi
/usr/local/oracle/bin/sqlplus
/usr/local/oracle/bin/adrci

library-k:

/usr/local/oracle/jdbc/lib/*.jar
/usr/local/oracle/lib/*.so*

konfiguracio:

/usr/local/oracle/ldap.ora
/usr/local/oracle/tnsnames.ora
/usr/local/oracle/sqlnet.ora
/usr/local/oracle/sqlplus/admin/glogin.sql

headerek (SDK):

/usr/local/oracle/rdbms/public/*.h

3.) TOra forditasa

Ehelyett valaszthatjuk az RPM vagy a DEB telepiteset is, szerencses esetben akar mas rendszereken is teljesulhetnek a fuggosegek, de a forditas sem jelent nagy kihivast.

Fuggosegek (Frugalware -current):

qt4 qt4-tools libqtsql libqtnetwork libqtxml qscintilla2-qt4 qt4-linguist +ezek fuggosegei (par qt4 lib, gstreamer)
Emellett nyilvan kell nehany szokasos build eszkoz is (gcc/g++, automake/autoconf stb.)

configure:

LD_LIBRARY_PATH=/usr/local/oracle/lib ORACLE_HOME=/usr/local/oracle ./configure --with-qt-dir=/usr/lib/qt --with-qt-include=/usr/include/Qt

A default prefix /usr/local/tora, nekem ez megfelelt, izles szerint atirhato a configure --prefix= opciojaval.

make:

--- szerk. kimaradt, hogy valahogyan a linkert sehogy nem tudtam ravenni arra, hogy felvegye az Oracle-os libeket (LD_LIBRARY_PATH meg volt adva, ld fenn, de -blibpath se valt be), igy jobb hijan mind a 8-10 darabot atlinkeltem a /usr/lib/ ala, eljen ;-(

Nalam ~12 perc volt egy Athlon64 3000+ CPU-n. Telepitve ~50MB az egesz.

4.) Kornyezet konfiguracioja

Valtozok

LD_LIBRARY_PATH-hez kell az Oracle library-k konyvtara (nalam /usr/local/oracle/lib) is, ezt bele kell tenni a megfelelo ld.so.conf file-ba (disztribuciotol fugg, Frugalware-en /etc/ld.so.conf -ba kell a konyvtarat felvenni, majd ldconfig-ot futtatni).

Az alabbiak tetszolegesen per-user vagy globalisan is beallithatok. A TOra hasznalatahoz nem szuksegesek, hacsak a .ora file-ok mas helyen vannak, mint a forditaskor megadott Oracle path.

export ORACLE_HOME=/usr/local/oracle
export TNS_ADMIN=$ORACLE_HOME

5.) Oracle nevfeloldas

En az LDAP-ot hasznalom, mert itt az (is) van. Egyebkent a $TNS_ADMIN/tnsnames.ora vagy a $HOME/.tnsnames.ora kitoltese a legegyszerubb megoldas, viszont nalam nem mukodott.

sqlnet.ora:

NAMES.DIRECTORY_PATH= (LDAP, TNSNAMES, EZCONNECT, ONAMES, HOSTNAME)

ldap.ora:

DEFAULT_ADMIN_CONTEXT = "kitoltendo"
DIRECTORY_SERVERS= (ldapserver IP:ldapserver port)
DIRECTORY_SERVER_TYPE = OID

Ezutan mindenkeppen erdemes kiprobalni, hogy az adatbazis-kapcsolat mukodik-e az sqlplus-szal, mert ha nem, a TOra-nak is problemai lesznek ;-)

6.) TOra futtatasa

Nehany megdobbento tapasztalatra tehetunk szert, ha elkezdjuk hasznalni a programot, az elso es leginkabb mellbevago elmeny az, hogy nincs 'connection manager', a hasznalt kapcsolatokat a program megjegyzi, de ezeket peldaul torolni nem lehet. Ugyanigy nincs sok lehetoseg az UI-n belul a menuk atrendezesere[1] vagy a bal oldali Connections/Directory frame athelyezesere, csak bezarni lehet oket (pedig adna magat, hogy a baloldali gombok elrejtenek ezeket). Az Edit/Preferences alatt se szamitsunk sok lehetosegre. Valoszinu, hogy a globalis Qt beallitasokkal lehet meg valamennyit faragni a megjelenesen. Az alkalmazas felulete nem kulonosebben latvanyos, alapbol 6 style van benne.
Az editor alapszintaxisa nem tul szemkivero, a szinek visszafogottak.

A menuket nem lehet a 'View' alatt ki/bekapcsolni, hanem jobb klikkre jon fel egy checkbox-os valasztoablak.
[1] Preferences/Tools alatt az egyes eszkozoket kulon-kulon lehet ki/bekapcsolni.

Nalam a kovetkezo beallitasokkal mukodik a kapcsolodas:

* Connection provider: Oracle (TNS)
* Username/Password:
* Schema/Database:
* Options: SQL*Net

7.) Egyebek

A bug reportokat az amugy felettebb gyer forgalmu sourceforge-os levlistan lehet leadni.
Manpage nincs, ellenben info oldal van, amiben szinte a teljes dokumentacio szerepel, ez amugy HTML formatumban is megtalalhato a telepitesben.

A konfiguracio a ~/.config/TOra/TOra.conf file-ban talalhato, dokumentacioja nincs...

Hozzászólások