Chcete-li pomocí přezdívek přistupovat k databázi Oracle,
proveďte následující kroky:
Krok 1.
| Na federovaném serveru DB2 instalujte a konfigurujte klientský software
pro Oracle podle dokumentace dodané společností Oracle.
Pro přístup ke zdrojům dat Oracle verze 7 nebo verze 8 můžete použít buď
program SQL*Net, nebo Net8.
Doporučení pro federované servery pracující na platformě UNIX:
| Během instalace klientského softwaru Oracle požadujte nové sestavení
programu SQL*Net, případně Net8.
|
|
Krok 2.
| Pomocí úpravy souboru DB2DJ.ini a provedení příkazu
db2set nastavte proměnné prostředí zdroje dat. Příkaz
db2set aktualizuje registr profilu DB2 podle vašich
nastavení.
Soubor DB2DJ.ini obsahuje konfigurační informace týkající se
klientského softwaru Oracle instalovaného na vašem federovaném serveru.
V systému dělené databáze můžete pro všechny uzly v určité instanci použít
jediný soubor DB2DJ.ini, nebo můžete pro jeden nebo více uzlů instance
použít jedinečný soubory DB2DJ.ini. V prostředí bez
dělení databáze může být v instanci pouze jeden soubor
DB2DJ.ini.

| Jsou-li předvolená nastavení v souboru DB2DJ.ini pro vaši
konfiguraci přijatelná, pokračujte částí 2.
|
- Otevřete editorem soubor DB2DJ.ini nacházející se v
adresáři sqllib/cfg a nastavte následující proměnné
prostředí:
ORACLE_HOME
|
Proměnnou prostředí ORACLE_HOME nastavte na domovský adresář produktu
Oracle, například takto:
ORACLE_HOME=domovský_adresář_oracle
Programy SQL*Net a Net8 vyžadují, aby tato proměnná byla nastavena dříve,
než bude spuštěna federovaná instance. Změníte-li tuto hodnotu,
federovaná instance musí být ukončena a znovu spuštěna, aby se nové nastavení
proměnné ORACLE_HOME projevilo.
Má-li některý uživatel federované instance proměnnou ORACLE_HOME nastavenu,
tato hodnota není federovanou instancí použita. Federovaná instance
používá pouze hodnotu proměnné ORACLE_HOME, která je nastavena v registru
profilu DB2.
| ORACLE_BASE
|
Pro federované servery pracující v systému UNIX platí, že nastavíte-li
proměnnou ORACLE_BASE během instalace klientského software Oracle, měli byste
hodnotu této proměnné nastavit také na federovaném serveru:
ORACLE_BASE=domovský_adresář_oracle
| ORA_NLS
|
Pro federované servery pracující na systému UNIX, které budou přistupovat
ke zdroji dat Oracle 7.2 nebo vyššímu, nastavte proměnnou prostředí
ORA_NLS:
ORA_NLS=domovský_adresář_oracle/ocommon/nls/admin/data
| TNS_ADMIN
|
Pokud se soubor tnsnames.ora protokolu SQL*Net nebo Net8
nachází jinde, než na předvolené cestě, musíte nastavit proměnnou prostředí
TNS_ADMIN, která určuje umístění souboru tnsnames.ora,
například takto:
TNS_ADMIN=x:\cesta\tnsnames.ora
Pro servery Windows:
| Předvolené umístění tohoto souboru závisí na použitém klientském
softwaru:
- Používáte-li program SQL*Net, soubor tnsnames.ora je umístěn v
adresáři %ORACLE_HOME%\NETWORK\ADMIN.
- Používáte-li program Net8, soubor tnsnames.ora je umístěn v
adresáři %ORACLE_HOME%\NET8\ADMIN.
| Pro servery UNIX:
| Předvolené umístění tohoto souboru je v adresáři
$ORACLE_HOME/admin/util/network
|
|
- Pomocí příkazu db2set aktualizujte registr
profilu DB2 podle provedených změn.
Používáte-li tento soubor DB2DJ.ini v prostředí bez dělení databáze
nebo chcete-li, aby byly hodnoty z tohoto souboru použity pouze na aktuální
uzel, proveďte příkaz:
db2set DB2_DJ_INI = sqllib/cfg/db2dj.ini
Používáte-li tento soubor DB2DJ.ini v prostředí systému dělené
databáze a chcete-li, aby byly hodnoty z tohoto souboru použity pro všechny
uzly této instance, proveďte příkaz:
db2set -g DB2_DJ_INI = sqllib/cfg/db2dj.ini
Používáte-li tento soubor DB2DJ.ini v prostředí systému dělené
databáze a chcete-li, aby byly hodnoty z tohoto souboru použity pro konkrétní
uzel této instance, proveďte příkaz:
db2set -i INSTANCEX 3 DB2_DJ_INI = sqllib/cfg/node3.ini
kde:
- INSTANCEX je jméno instance.
- 3 je číslo uzlu podle seznamu v souboru
db2nodes.cfg.
- node3.ini je upravená či přejmenovaná verze souboru
DB2DJ.ini.
|
Krok 3.
| Ověřte, zda je soubor tnsnames.ora aktualizován pro všechny servery
Oracle, pro které je konfigurována komunikace.
V souboru tnsnames.ora je SID jméno instance Oracle a HOST je jméno
hostitelského systému, na němž se nachází server Oracle.
|
Krok 4.
| Restartuje instanci DB2:
Pro servery Windows:
|
NET STOP jméno_instance
NET START jméno_instance
| Pro servery UNIX:
|
db2stop
db2start
|
|
Krok 5.
| Pomocí příkazu CREATE WRAPPER definujte knihovnu modulu wrapper, která
bude použita při přístupu ke zdrojům dat Oracle. Modul wrapper je
mechanismus, pomocí kterého federované servery komunikují se zdroji dat a
načítají z nich data. Následující příklad ukazuje použití příkazu
CREATE WRAPPER:
CREATE WRAPPER SQLNET
kde SQLNET je předvolené jméno modulu wrapper používané
klientským softwarem SQL*Net. Používáte-li klientský software Net8,
použijte parametr NET8.
Předvolené jméno můžete zaměnit nějakým, které si zvolíte; pokud tak
učiníte, musíte však za příkaz přidat parametr LIBRARY a jméno knihovny modulu
wrapper pro platformu serveru DB2. Další informace o jménech knihoven
modulu wrapper najdete v příručce SQL Reference.
|
Krok 6.
| Nepovinně lze nastavit proměnnou prostředí DB2_DJ_COMM tak, aby obsahovala
knihovnu modulu wrapper, který jste vytvořili v minulém kroku, například
takto:
db2set DB2_DJ_COMM = libsqlnet.a
Proměnná prostředí DB2_DJ_COMM určuje, zda se při inicializaci
federovaného serveru načítá modul wrappper, což může vést ke zrychlení provozu
při prvním přístupu ke zdroji dat Oracle. Další informace o jménech
knihoven modulu wrapper najdete v příručce SQL Reference.
|
Krok 7.
| Pomocí příkazu CREATE SERVER definujte všechny servery Oracle, pro které
je konfigurována komunikace, například takto:
CREATE SERVER ORASERVER TYPE ORACLE VERSION 7.2 WRAPPER SQLNET
OPTIONS (NODE "oranode")
kde:
- ORASERVER je jméno, které přiřadíte serveru Oracle. Toto
jméno musí být jednoznačné.
- ORACLE je typ zdroje dat, ke kterému konfigurujete
přístup.
- 7.2 je verze produktu Oracle, k němuž
přistupujete.
- SQLNET je jméno modulu wrapper, který definujete příkazem
CREATE WRAPPER.
- oranode je jméno uzlu, na němž se nachází server
ORASERVER. Hodnotu uzlu získáte ze souboru
tnsnames.ora. V této hodnotě se rozlišují velká a malá
písmena. Vztahy volby uzlu a souboru tnsnames.ora jsou
znázorněny na obrázku Obrázek 6.
Ačkoli je hodnota pro uzel zadána jako volba, je pro zdroje dat Oracle
vyžadována. Úplný seznam voleb najdete v příručce SQL
Reference.
Informace v souboru tnsnames.ora, pohled SYSCAT.SERVEROPTIONS
a pohled SYSCAT.SERVERS jsou popsány v oddílu Obrázek 6.
Obrázek 6. Vztah mezi systémovými soubory DB2 a souborem tnsnames.ora systému Oracle
|
Krok 8.
| Pokud je jméno uživatele či heslo na federovaném serveru různé od jména
uživatele či hesla na zdroji dat Oracle, namapujte pomocí příkazu CREATE USER
MAPPING lokální jméno uživatele na jméno uživatele a heslo definované na
zdroji dat Oracle, například takto:
CREATE USER MAPPING FOR DB2USER SERVER ORASERVER
OPTIONS ( REMOTE_AUTHID 'orauser', REMOTE_PASSWORD "dayl1te")
kde:
- DB2USER je lokální jméno uživatele, které mapujete na jméno
uživatele definované na zdroji dat Oracle.
- ORASERVER je jméno zdroje dat Oracle, které jste definovali
příkazem CREATE SERVER.
- orauser je jméno uživatele na zdroji dat Oracle, na kterého
mapujete uživatele DB2USER. V této hodnotě se rozlišují
velká a malá písmena.
Omezení:
| Jméno uživatele pro Oracle (na zdroji dat Oracle, ne na federovaném
serveru DB2) musí být vytvořeno pomocí příkazu create user s
klauzulí 'identified by' místo klauzule 'identified
externally'.
|
- dayl1te je heslo spojené s uživatelem
orauser. V této hodnotě se rozlišují velká a malá
písmena.
|
Krok 9.
| Pomocí příkazu CREATE NICKNAME přiřaďte pohledu nebo tabulce nacházející
se na zdroji dat Oracle přezdívku. Tuto přezdívku budete používat při
předávání dotazů zdroji dat Oracle. Následující příklad ukazuje použití
příkazu CREATE NICKNAME:
CREATE NICKNAME ORASALES FOR ORASERVER.SALESDATA.MIDWEST
kde:
- ORASALES je jednoznačná přezdívka pro tabulku nebo pohled
Oracle.
- ORASERVER.SALESDATA.MIDWEST je identifikátor
skládající se ze tří částí, který má tento formát:
jméno_zdroje_dat.jméno_vzdáleného_schématu.jméno_vzdálené_tabulky
Další informace o příkazu CREATE NICKNAME najdete v příručce SQL
Reference.
Další informace o přezdívkách obecně najdete v příručce Administration
Guide.
|
Krok 10.
| Předchozí krok zopakujte pro všechny databázové objekty, pro které chcete
vytvořit přezdívky.
|
Krok 11.
| V případě potřeby aktualizujte pro každou položku HOST v části DESCRIPTION
souboru tnsnames.ora soubor /etc/hosts pro
servery platformy UNIX a soubor
x:\winnt\system32\drivers\etc\hosts pro servery
platformy Windows.
To, zda máte tento soubor aktualizovat, záleží na konfiguraci vaší
sítě. Část sítě musí jméno vzdáleného hostitele zadané v části
DESCRIPTION souboru tnsnames.ora (například "oranode") přeložit na
adresu. Pokud je ve vaší síti server jmen, který jméno hostitele
rozpozná, nemusíte soubor TCP/IP hosts aktualizovat. V opačném případě
k tomuto vzdálenému hostiteli musí existovat položka. Konfiguraci vaší
sítě zjistěte od správce sítě.
|