Következő Előző Tartalom

6. JDBC támogatás telepítése

Van néhány adatbázis, ami fut Linux alatt és támogatja a JDBC interfészt. Ezek például:

Ha csak egy DBMS-t szeretnél kipróbálni, akkor először a PostgreSQL-el próbálkozz, ez minden nagyobb Linux-disztribúcióban benne van és lehet, hogy már telepítve van a rendszeredre.

6.1 IBM DB2

A leírás elkészítése folyamatban van.

További információ található a http://www-4.ibm.com/software/data/db2/linux/ oldalon.

6.2 MiniSQL

A leírás elkészítése folyamatban van.

További információ található a http://www.hughes.com.au/ oldalon.

6.3 MySQL

A leírás elkészítése folyamatban van.

További információ található a http://www.mysql.org/ oldalon.

6.4 Oracle

A leírás elkészítése folyamatban van.

További információ található a http://platforms.oracle.com/linux/ oldalon.

6.5 PostgreSQL

Háttér

A PostgreSQL egy kifinomult objektum-relációs alapú DBMS, amely támogatja a legtöbb SQL konstruktort, subselect-et, tranzakciókat és a felhasználó által definiált típusokat és funkciókat. Ez a jelenlegi legjobb nyílt forráskódú adatbáziskezelő, ami elérhető. Kereskedelmi forgalomban is kapható a PostgreSQL Inc-től. A jelenlegi verzió a 6.5.3-as és elérhető bármelyik tüköroldalról vagy CD-ről. (A PostgreSQL weboldaláról)

Lehetséges, hogy a PostgreSQL már a Linux disztribúciódban benne van, hiszen ez is nyílt forráskódú.

Letöltés és telepítés

Azt javasolom, hogy kezdetben inkább azt a PostgreSQL-t használd, amelyik a Linux disztribúciódban van, mintsem egy letöltött verziót.

Vagy ha mégsem azt akarod használni, akkor megtalálod a PostgreSQL-t a http://www.postgresql.org oldalon.

Annak ellenőrzéséhez, hogy a PostgreSQL már telepítve van-e a gépedre, írd be a következő parancsot:

rpm -qa | grep postgresql

vagy

which postmaster
which psql

Szükséged lesz a telepített postgresql, postgresql-szerver, és postgresql-java csomagokra, hogy a Javát együtt használd a PostgreSQL-el.

Ellenőrizd, hogy fut-e a PostgreSQL:

ps -f -u postgres

Most látnod kell a postmaster, a PostgreSQL démon futását.

Ha a postmaster nem fut, akkor van egy Sys V Init szkript, amivel elindíthatod. Ez a legtöbb disztribúcióban az /etc/rc.d/init.d könyvtárban található. A PostgreSQL indításához írd be:

cd /etc/rc.d/init.d
./postgresql start

Használhatod a fentebb már leírt ps parancsot, a PostgreSQL futásának ellenőrzéséhez.

Megjegyzés: A JDBC használatához a PostgreSQL-t -i -vel kell indítanod! Egyébként csak UNIX domain socket-eket fog támogatni, TCP/IP kapcsolatot nem. Ellenőrizd, hogy a postmaster az -i paraméterrel indult!

Készíts egy próba adatbázist:

su - postgres
createdb javatest

Nem szabad hibaüzenetet kapnod.

Készíts egy próba táblát egy próba sorral. Elsőként jelentkezz be az interaktív PostgreSQL felületre és kapcsolódj a javatest adatbázishoz, amit készítettél:

psql javatest

Egy megerősítést kell látnod, hogy kapcsolódtál a javatest adatbázishoz. Azután készíts egy próba táblát (psql nélkül):

create table test (col1 varchar(255));

A "CREATE" üzenetet kell látnod, ha elkészült.

A következő lépésben helyezz el benne egy sort (psql nélkül):

insert into test (col1) values ('Hello, from PostgreSQL!');

Egy "INSERT" válaszüzenetet kell kapnod.

Végül ellenőrizd, hogy a sor a helyén van (psql nélkül):

select col1 from test;  

Most látnod kell a lekérdezés eredményét. A kilépéshez írd be, hogy "\q".

További segítségért nézd meg a Database-SQL-RDBMS HOW-TO doksit a http://metalab.unc.edu/mdw/HOWTO/PostgreSQL-HOWTO.html címen.

A szükséges JAR-okat hozzá kell adnod a CLASSPATH változóhoz. A PostgreSQL JAR-ok a postgresql-jdbc csomagban vannak.

export CLASSPATH=$CLASSPATH:/usr/lib/pgsql/jdbc6.5-1.2.jar

Helyettesítsd a megfelelő útvonalat arra ahol a te PostgreSQL csomagod van.

A telepítés ellenőrzése

Most már fordíthatsz és futtathatsz egy egyszerű JDBC alkalmazást, ami PostgreSQL-t használ. Készítsd el a következő programot:

import java.sql.*;

class PostgreSQLTest {
  public static void main (String[] args) {
    try {
      Driver driver = (Driver)
        Class.forName("postgresql.Driver").newInstance();
      DriverManager.registerDriver(driver);

      String     url = "jdbc:postgresql:javatest"; 
      Connection con = DriverManager.getConnection(url, "postgres", ""); 
      Statement  stm = con.createStatement(); 
 
      stm.setQueryTimeout(10); 
      ResultSet  rs  = stm.executeQuery("select col1 from test"); 
 
      rs.next(); 
 
      System.out.println(rs.getString(1)); 
 
    } catch (SQLException e) { 
 
      System.out.println("Exception!"); 
      System.out.println(e.toString()); 
  } 
} 

Fordítsd le a Java fordítóval.

javac PostgreSQLTest.java  

Ha a fordító hibát produkál, ellenőrizd duplán a szintaxist és ellenőrizd a PATH és a CLASSPATH változók beállításait.

Futtasd a programot a JVM-el.

java PostgreSQLTest  

Ha a JVM hibát produkál, akkor ellenőrizd a PATH és a CLASSPATH útvonalakat.

A következőt kell látnod:

Hello, from PostgreSQL!  

Gratulálok, telepítetted, beállítottad és tesztelted a JDBC interfészt a PostgreSQL-el!

További információk

További információért keresd fel a PostgreSQL weboldalát a http://www.postgresql.org/. oldalon.

6.6 Sybase

Háttér

A Sybase Adaptive Server Enterprise egy kereskedelmi forgalomban lévő RDBMS, ami elérhető Linux operációs rendszerre. A Sybase jelenleg kiadott verziója a 12.0-ás, Linuxra még csak a 11.9.2 érhető el.

Idézet a Sybase weboldaláról: "Az ASE-t a Linuxhoz implementálva, a Sybase az első magasan skálázható, nagy hatékonyságú adatbázis motort adja a Linux fejlesztők kezébe. A csomag tartalmazza az Adaptive Server Enterprise irányadó sajátosságait és a kapcsolódó komponenseket. Az Adaptive Server Enterprise fejlesztésre szabadon használható."

Letöltés

A Sybase ASE letölthető a http://www.sybase.com/products/databaseservers/linux/linux1192_reg.html oldalról.

A letölthez regisztrálnod kell magad a Sybase-nél és el kell fogadnod a licenc feltételeit.

A Sybase JDBC meghajtó letölthető a http://www.sybase.com/products/internet/jconnect/ oldalról.

A letöltésnél válaszd a jConnect 4.2/5.2 csomagot.

Ha van hozzáférésed a Sybase szerver hálózatához, akkor csak letöltened és telepítened kell a JDBC meghajtót.

Telepítés

A Sybase telepítése ezen HOGYAN hatókörén kívül esik. Ez a HOGYAN feltételezi, hogy a Sybase-t rendben telepítetted és konfiguráltad, és kész vagy a Sybase isql használatára.

Jelentkezz be az isql-be mint rendszer adminisztrátor és készíts egy teszt felhasználót és adatbázist.

create database javatest  
go 
sp_addlogin javatest, javatest, javatest 
go 
use javatest 
go 
sp_dbowner javatest 
go 

Nem szabad hibaüzenetet kapnod.

Készíts egy próba táblát egy próba sorral. Először jelentkezz be az isql-be mint a javatest felhasználója és írd be a következőt:

create table test (col1 varchar(255))  
go 

Nem szabad hibaüzenetet kapnod.

Vegyél fel egy rekordot:

insert into test (col1) values ('Hello, from Sybase!')  
go 

Nem szabad hibaüzenetet kapnod.

Végül ellenőrizd, hogy a rekord a helyén van:

select col1 from test  
go 

Most azt a sort kell látnod, amit bevittél.

Az isql-ből az "exit" beírásával tudsz kilépni.

További segítségért a Sybase-el való munkához nézd át a dokumentációját, ami letölthető.

Szükséged lesz a megfelelő JAR-okra a CLASSPATH változóban.

export CLASSPATH=$CLASSPATH:/usr/local/sybase/jConnect-5_2/classes/jconn2.jar  

A megfelelő útvonalat helyettesítsd, attól függően, hogy a jConnect hová települt a rendszeredben.

A telepítés ellenőrzése

Most már fordíthatsz és futtathatsz egy egyszerű JDBC alkalmazást, ami Sybase-t használ. Készítsd el a következő programot.

import java.sql.*;  
 
class SybaseTest { 
  public static void main (String[] args) { 
    try { 
      Driver driver = (Driver) 
        Class.forName("com.sybase.jdbc2.jdbc.SybDriver").newInstance(); 
      DriverManager.registerDriver(driver); 
 
      String     host = "127.0.0.1"; 
      String     port = "4100"; 
 
      String     url = "jdbc:sybase:Tds:" + host + ":" + port; 
      Connection con = DriverManager.getConnection(url, "javatest", "javatest"); 
      Statement  stm = con.createStatement(); 
 
      stm.setQueryTimeout(10); 
      ResultSet  rs  = stm.executeQuery("select col1 from test"); 
 
      rs.next(); 
 
      System.out.println(rs.getString(1)); 
 
    } catch (SQLException e) { 
 
      System.out.println("Exception!"); 
      System.out.println(e.toString()); 
  } 
} 

Ahol szükséges helyettesítsd a host-ot és a port számot. Nézd meg a $SYBASE/interfaces és a $DSQUERY belépéseit a host és port beállításához.

Fordítsd le a programot a Java fordítóval.

javac SybaseTest.java  

Ha a fordító hibát produkál, akkor nézd meg a szintaxist és ellenőrizd a PATH és a CLASSPATH változók beállításait.

Futtasd a programot a JVM-mel.

java SybaseTest  

Ha a JVM hibát produkál, akkor ellenőrizd a PATH és a CLASSPATH változók beállításait.

A következő eredményt kell látnod:

Hello, from Sybase!  

Gratulálok, telepítetted, beállítottad és tesztelted a JDBC interfészt a Sybase-hez.

További információk

További információért látogass el a Sybase jConnect weboldalára a http://www.sybase.com/products/internet/jconnect/ helyen.


Következő Előző Tartalom