Lépés 1.
| Telepítse és konfigurálja az Oracle ügyfélprogramot a DB2 befogadott
kiszolgálóra, az Oracle által biztosított dokumentáció felhasználásával!
Mind az SQL*Net, mind a Net8 egyaránt használható Oracle Version 7 és
Oracle Version 8 adatforrások elérésére.
Ajánlások UNIX platformon futó befogadott kiszolgálók esetére:
| Az Oracle ügyfélprogram telepítése alatt kérje az SQL*Net, illetve Net8
újrakapcsolódását!
|
|
Lépés 2.
| Állítsa be az adatforrás környezeti változóit a
DB2DJ.ini módosításával és a db2set parancs
végrehajtásával. A db2set parancs módosítja a DB2
profilnyilvántartását az aktuális beállításoknak megfelelően.
A DB2DJ.ini fájl tartalmazza a konfigurációs információt a
befogadott kiszolgálón telepített Oracle ügyfélprogramra vonatkozóan.
Többpartíciós adatbázisrendszerben egyetlen DB2DJ.ini fájl használható
egy adott példány valamennyi csomópontjára vonatkozóan, de lehetőség van arra
is, hogy egy egyedi DB2DJ.ini fájlt használjon egy adott
példány egy vagy több csomópontjára. Nem particionált
adatbázisrendszerben csak egyetlen DB2DJ.ini fájl tartozhat
egy példányhoz.

| Amennyiben a DB2DJ.ini alapértelmezett beállításai megfelelnek az
adott konfigurációban, folytassa itt: 2.
|
- Hívja be szövegszerkesztőbe a sqllib/cfg helyen található
DB2DJ.ini fájlt és állítsa be benne a következő környezeti
változókat:
ORACLE_HOME
|
Állítsa be az ORACLE_HOME környezeti változót az Oracle
alkönyvtárra. Például:
ORACLE_HOME=oracle_alkönyvtár
Az SQL*Net, illetve a Net8 alatt előírás, hogy ez a változó a befogadott
példány elindítása előtt már be legyen állítva. Ha ezt a változót
megváltoztatja, a befogadott példányt le kell állítani és újra kell indítani
ahhoz, hogy az új ORACLE_HOME érték érvénybe lépjen.
Ha az az ORACLE_HOME környezeti változó a befogadott példány egy bizonyos
felhasználójánál van beállítva, a befogadott példány ezt nem veszi
figyelembe. A befogadott példány csak akkor veszi figyelembe az
ORACLE_HOME változó értékét, ha azt a DB2 profil bejegyzésekor állította
be.
| ORACLE_BASE
|
A UNIX különböző verziói alatt futó befogadott kiszolgálók esetében,
amennyiben az Oracle ügyfélprogram telepítése során beállítja az ORACLE_BASE
változót, a befogadott kiszolgálón is beállítandó ennek megfelelően az
ORACLE_BASE környezeti változó:
ORACLE_BASE=oracle_saját_alkönyvtár
| ORA_NLS
|
A UNIX olyan verziói alatt futó befogadott kiszolgálók esetében,amelyek
Oracle 7.2, vagy újabb adatforrást kívánnak elérni, állítsa be az
ORA_NLS környezeti változót:
ORA_NLS=oracle_saját_alkönyvtár /ocommon/nls/admin/data
| TNS_ADMIN
|
Amennyiben az SQL*Net, illetve Net8 tnsnames.ora fájlja
az alapértelmezett keresési útvonalon kívül található, a TNS_ADMIN környezeti
változóban beállítandó a tnsnames.ora fájl helye,
például:
TNS_ADMIN=x:\útvolnal\tnsnames.ora
Windows kiszolgálón:
| A fájl alapértelmezett elhelyezkedése a használatban lévő ügyfélprogram
fajtájának függvénye:
- Ha az SQL*Net-et használja, a tnsnames.ora fájl az
%ORACLE_HOME%\NETWORK\ADMIN alkönyvtárban található.
- Ha a Net8-at használja, a tnsnames.ora fájl az
%ORACLE_HOME%\NET8\ADMIN alkönyvtárban található.
| UNIX kiszolgálók esetén:
| A fájl alapértelmezett helye:
$ORACLE_HOME/admin/util/network
|
|
- A db2set paranccsal módosítsa a DB2
profil-bejegyzést a végrehajtott módosításoknak megfelelően!
Amennyiben ezt a DB2DJ.ini fájlt nem particionált
adatbázisrendszerben használja, illetve amennyiben az adott DB2DJ.ini
fájlt csupán az aktuális csomópontra kívánja alkalmazni, adja ki a következő
parancsot:
db2set DB2_DJ_INI = sqllib/cfg/db2dj.ini
Amennyiben viszont ezt a DB2DJ.ini fájlt particionált környezetben
használja és valamennyi csomópontra alkalmazni kívánja, a következő parancsot
adja ki:
db2set -g DB2_DJ_INI = sqllib/cfg/db2dj.ini
Amennyiben ezt a DB2DJ.ini fájlt particionált környezetben
használja, de csupán egy adott csomópontra kívánja alkalmazni, a következő
parancsot adja ki:
db2set -i INSTANCEX 3 DB2_DJ_INI = sqllib/cfg/node3.ini
ahol
- az INSTANCEX a példány neve.
- 3 a db2nodes.cfg fájl listájában szereplő
csomópont száma.
- a node3.ini a DB2DJ.ini fájl módosított és
átnevezett változata.
|
Lépés 3.
| Győződjön meg róla, hogy az SQL*Net, illetve a Net8 tnsnames.ora
fájlja tartalmazza a szükséges módosításokat valamennyi Oracle kiszolgálóra
vonatkozólag, amelyekkel a kommunikáció konfigurálás alatt áll.
A tnsnames.ora fájlon belül a SID az Oracle példány neve, a HOST
pedig az a gazdanév, ahol az Oracle kiszolgáló található.
|
Lépés 4.
| Indítsa újra a DB2 példányt:
Windows kiszolgálón:
|
NET STOP példány_neve
NET START példány_neve
| UNIX kiszolgálók esetén:
|
db2stop
db2start
|
|
Lépés 5.
| A CREATE WRAPPER utasítással hozza létre azt a csomagoló könyvtárat, amely
a Oracle adat-források elérése során felhasználásra kerül. A
csomagoló-modul használata az a technika, amivel a befogadott kiszolgálók
kommunikálnak az adatforrásokkal, ezt az eljárást használják az adatok
betöltéséhez. Az alábbi példa egy CREATE WRAPPER utasítást mutat
be:
CREATE WRAPPER SQLNET
ahol SQLNET az Oracle SQL*Net ügyfélprogramjának eléréséhez
használatos csomagoló modul alapértelmezett neve. Amennyiben az Oracle
Net8 ügyfélprogramját használja, természetesen a NET8-at kell
alkalmazni.
Az alapértelmezett név szabadon helyettesíthető tetszés szerinti saját
névvel; azonban ebben az esetben feltétlenül meg kell adnia a LIBRARY
paramétert és DB2 kiszolgáló csomagoló könyvtárának nevét. További
információ a csomagolókönyvtárak neveiről: SQL Reference.
|
Lépés 6.
| Lehetőség: A DB2_DJ_COMM környezeti változó beállítható úgy, hogy
magában foglalja a csomagoló könyvtárat, amely az előző lépésben létrehozott
csomagoló modulra vonatkozik; például:
db2set DB2_DJ_COMM = libsqlnet.a
A DB2_DJ_COMM környezeti változó határozza meg, hogy a csomagoló modul
betöltésre kerül-e a befogadott kiszolgáló indításakor. Amennyiben a
modul betöltődik, ez növelheti a teljesítményt az Oracle adatforrás első
elérésekor. További információ a csomagolókönyvtárak neveiről:
SQL Reference.
|
Lépés 7.
| A CREATE SERVER segítségével adhatja meg az egyes Oracle kiszolgálóknak,
hogy milyen kommunikációs módra legyenek konfigurálva; például:
CREATE SERVER ORASERVER TYPE ORACLE VERSION 7.2 WRAPPER SQLNET
OPTIONS (NODE "oranode")
ahol
- ORASERVER a Oracle adatforráshoz rendelt név. A névnek
egyedinek kell lennie.
- ORACLE az az adatforrás, amelyre a hozzáférést konfigurálni
kívánja.
- 7.2 a verziószáma a Oracle-nek, amellyel kapcsolatba
kíván lépni.
- SQLNET a csomagoló neve, amelyet a CREATE WRAPPER utasításban
megadott.
- oranode annak a csomópontnak a neve, ahol a
ORASERVER található. A csomóponti érték a
tnsnames.ora fájlból olvasható ki. Az értékben a kis- és a
nagybetű különbözőnek számít. ábra 6 szemlélteti a kapcsolatot a csomóponti beállítások és a
tnsnames.ora fájl között.
Annak ellenére, hogy a csomópont megadása opcionális, az Oracle
adatforrásoknál ennek megadása kötelező. Az SQL Reference című könyvben megtalálhatja a lehetséges beállítások átfogó listáját.
ábra 6 bemutatja a tnsnames.ora fájlban, valamint a
SYSCAT.SERVEROPTIONS és a SYSCAT.SERVERS nézetben található
információkat.
ábra 6. A DB2 rendszerfájlok és az Oracle tnsnames.ora fájl közötti összefüggés
|
Lépés 8.
| Ha a befogadott kiszolgálón egy felhasználói azonosító, illetve jelszó
különbözik az Oracle adatforrásán találhatótól, an CREATE USER MAPPING parancs
segítségével lehetséges a helyi felhasználói azonosító, illetve jelszó
hozzárendelése a Oracle adatforrásának megfelelő felhasználói azonosítójához,
illetve jelszavához; például:
CREATE USER MAPPING FOR DB2USER SERVER ORASERVER
OPTIONS (REMOTE_AUTHID 'orauser', REMOTE_PASSWORD "dayl1te")
ahol
- DB2USER a helyi felhasználói azonosító, amelyet hozzá kíván
rendelni az Oracle adatforrásának felhasználói azonosítójához.
- ORASERVER annak a Oracle adatforrásnak a neve, amelyet a CREATE
SERVER parancsban meghatározott.
- orauser az a felhasználói azonosító a Oracle adatforrásnál,
amelyhez hozzá kívánja rendelni a DB2USER-ben megadott felhasználói
nevet. Az értékben a kis- és a nagybetű különbözőnek számít.
Korlátozás:
| Az Oracle felhasználói azonosító (mármint az Oracle adatforrás
azonosítója, és nem a DB2 befogadott kiszolgálóé) létrehozása kötelezően az
Oracle create user parancsával hozandó létre, mégpedig az
'identified by' megadási mód alkalmazásával az 'identified
externally' helyett.
|
- dayl1te az "orauser"-hez tartozó jelszó. Az
értékben a kis- és a nagybetű különbözőnek számít.
|
Lépés 9.
| A CREATE NICKNAME paranccsal becenevet rendelhet hozzá a Oracle
adatforrásban egy nézethez, illetve táblához. A Oracle adatforrás
lekérdezésekor ezután ezt a becenevet használhatja az eredeti helyett.
A következő példában látható egy CREATE NICKNAME parancs:
CREATE NICKNAME ORASALES FOR ORASERVER.SALESDATA.MIDWEST
ahol
- ORASALES egy Oracle tábla, illetve nézet egyedi
beceneve.
- ORASERVER.SALESDATA.MIDWEST egy három részből
álló azonosító, mely a következő formátumot követi:
adatforrás_neve.
távoli_séma_neve.távoli_tábla_neve
A SQL Reference könyvben található további információ a CREATE NICKNAME utasítással
kapcsolatosan.
További információ a becenevekről általában: Administration
Guide.
|
Lépés 10.
| Ismételje meg az előző lépést valamennyi adatbázis-objektum
vonatkozásában, amelyeknek becenevet kíván adni!
|
Lépés 11.
| Szükség esetén a tnsnames.ora fájlban, a DESCRIPTION
szakaszában szereplő minden HOST-ra nézve frissítse UNIX kiszolgálón az
/etc/hosts fájlt, Windows kiszolgálón az
x:\winnt\system32\drivers\etc\hosts fájlt.
Az, hogy el kell-e végezni ezt a módosítást a fájlon, a TCP/IP hálózati
konfigurációjának függvénye. A hálózat egy részének le kell fordítania
a tnsnames.ora fájl DESCRIPTION részében megadott gazdanevet (a
példában "oranode") egy konkrét hálózati címre. Amennyiben a hálózatnak
van olyan névkiszolgálója, amely felismeri a gazdanevet, nincs szükség a
TCP/IP gazdanév-fájl módosítására. Egyébként viszont mindenképpen
szükség van a távoli gazdagép számára egy belépési címre. Annak
eldöntését, hogy az adott hálózat konfigurációja melyik típusba tartozik,
bízza a hálózat rendszergazdájára!
|