IBM DB2 Express-C per Linux HOWTO

Ian Hakes

Revision History

Revision 2.0 2007-07-15 Revised by: idmh

Revisione completa del documento per comprendere DB2 Express-C 9 e nuovi livelli di distribuzione di Linux

Revision 2.0.1 2007-08-22 Revised by: idmh

Aggiornamenti minori per comprendere istruzioni di riavvio per Ubuntu 7.04

Questo HOWTO è rivolto a chiunque sia interessato a installare e usare il database IBM DB2® Express-C 9 su un sistema operativo Linux®. L’obiettivo di questo documento è di fornire ulteriore supporto e dettagli specifici di distribuzione per rendervi operativi con DB2 sulla vostra distribuzione Linux preferita.

Traduzione a cura di Ivan Bazzi, revisione a cura di Antonio Colombo. Per versioni aggiornate di questo documento e per trovare altra documentazione in italiano sul software libero visitare il sito dell’ILDP (http://it.tldp.org)

1. Introduzione

1.1. Chi dovrebbe leggere questo HOWTO

Questo HOWTO è rivolto a chiunque sia interessato a installare e usare IBM DB2® Express-C 9 su una distribuzione Linux®. L’obiettivo è quello di includere il maggior numero possibile di distribuzioni, sia su architetture a 32–bit che a 64–bit. Poiché le mie risorse sia hardware che di tempo sono limitate, se qualcuno s’imbattesse in una combinazione distribuzione/architettura che non sia coperta qui o se incrontrasse un problema che non venisse qui affrontato, mi mandi una nota a db2howto@gmail.com e cercherò di aiutarlo a verificare o a risolvere il suo problema e ad aggiungere qui le informazioni relative.

Le informazioni contenute in questo documento sono basate su esperienze personali d’installazione e configurazione di IBM DB2 9 Express-C.

IBM DB2 Express-C per Linux HOWTO

1.2. Disclaimer

No liability for the contents of this document is accepted. Use the concepts, examples and information at your own risk. There may be errors and inaccuracies that could be damaging to your system. Proceed with caution, and, although it is highly unlikely that accidents will happen because of following advice or procedures described in this document, the author does not take any responsibility for any damage claimed to be caused by this document.

All copyrights are held by their by their respective owners, unless specifically noted otherwise. Use of a term in this document should not be regarded as affecting the validity of any trademark or service mark. Naming of particular products or brands should not be seen as endorsements.

This HOWTO is not official IBM documentation, and cannot be construed as such. IBM accepts no responsibility, liability or coverage for the material or instructions contained in this HOWTO. The views expressed in this document are those of the author, and not IBM Corporation.

1.3. Copyright and license

Copyright (c) 2007 IBM Corporation.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with the Invariant Sections being "Disclaimer" and "About the Authors". This document is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without ebaseven the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. A copy of the license is included in the section entitled "GNU Free Documentation License".

1.4. Riconoscimenti

Ian Hakes è l’attuale proprietario e manutentore di questo HOWTO. Siete pregati di spedire ogni suggerimento per miglioramenti, critiche o domande a db2howto@gmail.com.

Come sempre, un grande ringraziamento a Dan Scott, che continua ad essere una risorsa inestimabile sia per me che per la comunità open source in generale.

Vorrei ringraziare anche: Rav Ahuja, Boris Bialek, Jason Chan, Ryan Chase, Irina Delidjakova, Leon Katsnelson, e Darin McBride per il supporto, le indicazioni e la pazienza durante la composizione di questo documento.

Soprattutto devo ringraziare mia moglie e i miei figli che mi hanno consentito di passare notti e fine settimana al mio laptop e sulle macchine di test per mettere insieme questo documento. Non sarei riuscito a farlo senza il loro amore e sostegno.

1.5. Notizia sull’autore

Ian Hakes, lavora per il DB2 IBM dal 1999. Oggi si occupa di marketing tecnico del prodotto DB2 Express-C, sviluppando documentazione tecnica e diffondendo la buona novella del DB2 Express-C. In precedenza, era responsabile tecnico del dipartimento di sviluppo dell’informazione DB2, con la responsabilità della redazione del manuale di referimento DB2 SQL. Il suo tempo libero è per lo più impiegato alla tastiera di un computer, pensando a quanto sarebbe stato meglio andare al cinema o in barca a vela.

2. Perché DB2 Express-C 9?

Nel marzo del 2006, IBM prese la decisione strategica di rilasciare DB2, il loro migliore database, come software disponibile liberamente. È importante rendersi conto che l’edizione Express-C di DB2 è un prodotto software gratuito e libero, sebbene il codice sorgente non venga distribuito come parte del prodotto, questa edizione di DB2 è utilizzabile liberamente e con funzionalità completa, non "manomesso" in alcun modo.

Anche altri database di categoria aziendale hanno scelto di rilasciare versioni [libere] del loro software, ma DB2 Express-C è la sola a non porre alcuna limitazione alle dimensioni o al numero dei database che possono essere creati. L’unica limitazione all’utilizzo di DB2 Express-C è che può essere eseguito solo su sistemi con 2 CPU fisiche e con 4 GB di RAM. Visto che la maggior parte degli sviluppatori e delle attività economiche di piccole dimensioni usano sistemi che soddisfano queste specifiche, DB2 Express-C costituisce un’ottima scelta per gli sviluppatori e per le applicazioni d’impresa. In questo HOWTO, tutti i test e le discussioni sono basate su macchine che soddisfano queste specifiche di sistema.

Con DB2 Express-C, avete a disposizione un database libero con basse necessità di manutenzione, facile da installare e da far funzionare, con alcune carattiristiche potenti oltre ché con performance che tipicamente si trovano in software per database di livello aziendale molto più cari.

3. Cosa è incluso in DB2 Express-C 9

Dal punto di vista delle caratteristiche è impressionante cosa sia incluso nel DB2 Express-C scaricato. Per cominciare, avete lo stesso codice completo del motore del database server di livello aziendale senza alcuna limitazione di connessione. È inclusa anche la suite completa di strumenti per l’amministrazione dei database sia a linea di comando che ad interfaccia grafica e per sviluppare le applicazione per database. Avete pure le funzionalità complete di manutenzione automatica, insieme con le API [Interfaccia di Programmazione per un’Applicazione] di sviluppo e i driver per C/C++, Java, PHP, Perl e Ruby on Rails.

La ciliegina sulla torta è l’inclusione della nuova tecnologia ibrida di IBM pureXML™ che permette di memorizzare dati in formato XML in maniera nativa dentro il database senza spezzettamento o decomposizione dei dati. Questa è una caratteristica che tipicamente è disponibile come opzione separata per le altre edizioni di DB2 9 e che viene data agli utenti dell’edizione Express-C completamente gratis. Qualche volta è una cosa buona essere piccoli.

Ci sono tre architetture disponibili per Linux: la versione a 32 bit, la versione a 64 bit e la versione PowerPC, il che vi offre la possibilità di utilizzare il miglior hardware a disposizione per la vostra installazione di DB2.

4. Prerequisiti

I prerequisiti sono elementi hardware o software che sono necessari sul vostro sistema prima di poter installare o usare DB2 Express-C 9. Questa sezione copre:

• Requisiti Hardware:

• Processori supportati

• Requisiti di spazio disco

• Requisiti di memoria

• Requisiti Software:

• Distribuzioni Linux

• Requisiti di livello del kernel e delle librerie

• Ulteriori requisiti software

4.1. Requisiti hardware

4.1.1. Processori supportati

• x86 (processore a 32 bit)

• x86–64 (processore a 64 bit)

• POWER™ (qualsiasi iSeries™ o pSeries® che supporti Linux)

4.1.2. Requisiti di spazio disco

Vanno presi in considerazione i requisiti di spazio disco prima di installare e configurare DB2 sulla vostra distribuzione Linux:

Table 1. Requisiti di spazio disco

Tipo di installazione Descrizione

Requisiti di spazio disco

Typical DB2 viene installato con la maggior parte delle caratteristiche e funzionalità, inclusi strumenti grafici come il Control Center.

da 460 a 560 MB

Compact DB2 viene installato con caratteristiche e funzionalità fondamentali, ma senza strumenti grafici.

da 380 a 460 MB

Custom Questa opzione consente di selezionare le caratteristiche e le funzionalità che si vogliono installare.

da 320 a 820 MB

È importante predisporre abbastanza spazio su disco per il software, insieme con la documentazione del prodotto (se desiderata) e per i database da creare.

In DB2 9 si accede alla documentazione del prodotto attraverso il DB2 Information Center, o attraverso il web, oppure come installazione sul sistema locale. Per installare la documentazione localmente sono necessari almeno 100 MB quando s’installano i file fondamentali in lingua inglese. Ulteriore spazio è richiesto per altre ulteriori lingue. Se lo spazio disco è un problema, si può configurare DB2 per accedere all’Information Center dal Web. Maggiori dettagli sono disponibili in Installare il DB2 Information Center.

4.1.3. Requisiti di memoria

È consigliabile allocare un mimnimo di 512 MB di RAM per DB2 Express-C 9, e ulteriore memoria dovrebbe essere allocata per altro software e processi di comunicazione. Per determinare i requisiti di memoria considerate i seguenti punti:

• Lo spazio di SWAP dovrebbe essere almeno due volte la RAM.

• Ulteriore memoria va aggiunta per qualsiasi software che non sia DB2 e che possa essere in funzione sul sistema.

• Ulteriore memoria è necessaria per il supporto dei client del database e per l’attività del database.

• Questi requisiti di memoria dipendono dalle dimensioni e dalla complessità del sistema di database, oltre che da specifici requisiti di performance.

• La massima memoria RAM specificabile per un’installazione di DB2 Express-C è 4 GB.

4.2. Requisiti Software

4.2.1. Livelli di distribuzione supportati da DB2 Express-C 9

Per una lista di tutte le distribuzioni che sono ufficialmente supportate, oltre che per le ultime informazioni a proposito dei kernel, delle librerie, degli ambienti integrati in cluster e per articoli vari, visitare il sito DB2 for Linux validation (http://www.ibm.com/software/data/db2/linux/validate/) elencato in Risorse.

4.2.2. Ulteriori requisiti software

A seconda di quel che volete far fare a DB2, è probabile sia necessario installare ulteriori pacchetti software perchè DB2 funzioni in modo appropriato. Assicurarsi che questi pacchetti siano installati prima di usare DB2.

• Il software X Window capace di interpretare un gestore grafico di finestre (KDE, Gnome, ecc.). È necessario se si vuole usare l’installatore grafico di DB2 o qualsiasi strumento grafico di DB2.

• Un browser web per visualizzare gli argomenti contenuti nel DB2 Information Center.

• Se si sta usando NIS o NIS+ per l’autenticazione in sicurezza sul sistema, bisogna creare account utente per DB2 prima di installare DB2.

• Ulteriori pacchetti come da elenco nella tabella seguente:

Table 2. Requisiti dei pacchetti

Nome del pacchetto Nome RPM

Descrizione

compat- libstdc++ compat-libstdc++ Richiesto solo sulle architetture a 64 bit. Richiesto per la

compatibilità a ritroso con librerie C++ standard usate da DB2.

nfs-utils nfs-utils (versione 1.0 o successive)

Pacchetto di supporto per il Network File System. Permette l’accesso di file locali da parte di macchine remote. Necessario su sistemi che utilizzino File System montati tramite NFS.

Per controllare se questi pacchetti sono installati usare i comandi rpm -q:

  rpm -qa compat-libstdc++*

Per installare questi pacchetti su Linux Red Hat usare i CD d’installazione di Linux Red Hat ed il comando rpm o il programma di utilità up2date. Per esempio, per installare il pacchetto compat-libstdc++ dal CD di Linux Red Hat, montare il Red Hat Linux CD #4 e scrivere questo comando come root:

rpm -ivh /mnt/cdrom/RedHat/RPMS/compat-libstdc++-296-2.96-132.7.2.i386.rpm

Per installarlo con il pacchetto up2date, eseguite questo comando come root:

up2date compat-libstdc++

Per installare questi pacchetti su Linux SUSE si può usare sia rpm che il comodo programma di utilità YaST (Yet another Setup tool). Per esempio, per installare nfs-utils su SLES 9 usando YaST:

1. Collegarsi come root

2. Da YaST Control Center, selezionate Software -> Software Management, poi usate la ricerca di "nfs-utils" per trovare i pacchetti appropriati.

5. Considerazioni sull’installazione e pianificazione

Dopo aver verificato che il vostro sistema soddisfi i requisiti fondamentali, si deve fare un piano di installazione considerando i metodi d’installazione e la creazione di utenti e gruppi:

• Scelte d’installazione:

• Installazione con db2setup

• Installazione con db2_install

• Installazione tramite il file di risposte di DB2

• Impostazione degli utenti e dei gruppi:

• Requisiti per gli utenti e per i gruppi

• Creare gli utenti

5.1. Metodi d’installazione

Dopo aver scaricato ed estratto il file tar.gz, l’albero dei file appare come questo:

exp/ -|

     disk1/ -|
       db2_install     (* script d'installazione a linea di comando *)
       db2setup        (* lanciatore dell'installazione tramite GUI *)
       installFixPack (* non applicabile ad Express-C *)
       db2/ -|         (* file di licenza e di installazione  *)
       doc/ -|         (* note di rilascio e istruzioni per l'installazione *)

Si possono usare tre metodi per installare DB2:

• Programma di utilità db2setup

• Programma di utilità db2_install

• Un file di risposte per DB2

Ogni metodo ha i suoi vantaggi e svantaggi. La scelta del metodo dipende dal vostro livello di abilità e dal tipo di ambiente, ma in generale, se è disponibile un’interfaccia grafica, l’uso di db2setup è preferibile per la facilità d’installazione.

5.1.1. Installazione con db2setup

Il comando db2setup richiama DB2 Launchpad, uno strumento grafico che configura e organizza l’installazione di DB2. Stabilisce l’insieme dei file e delle directory di DB2, crea e configura le istanze di DB2, gli utenti ed i gruppi, le comunicazioni, il database d’amministrazione utilizzato dagli strumenti di DB2 e imposta i processi di notifica. DB2 Launchpad consente anche di creare un file delle risposte per riutilizzare un’impostazione particolare su altri sistemi.

L’uso di db2setup è il miglior metodo per utenti con minore esperienza, perché la maggior parte delle configurazioni vengono eseguite automaticamente durante l’installazione. Come già detto, è necessario un sistema X Window in grado di rappresentare un’interfaccia grafica per usare db2setup con successo.

5.1.2. Installazione con db2_install

Lo script di comandi db2_install installa tutti i pacchetti DB2 sul vostro sistema Linux. Questo sistema è affidabile e usato comunemente da utenti esperti per installare DB2 su sistemi più grandi e complessi. Però, compiti come l’impostazione di utenti e gruppi, la creazione d’istanze, la creazione di un catalogo di strumenti del database e l’impostazione della notifica vanno eseguiti manualmente dopo che l’installazione è completata.

Una limitazione di db2_install è che installa aiuti all’utente (come help, messaggi e interfacce per strumenti) soltanto in inglese, mentre db2setup supporta l’installazione di ulteriori lingue. Inoltre, un’installazione con db2_install può prendere più tempo (a causa del più alto numero di configurazioni manuali); richiede un livello maggiore di conoscenza ed abilità, e non può essere utilizzato per creare file delle risposte.

5.1.3. Installazione tramite file delle risposte

Un file delle risposte può venir creato usando DB2 Setup Wizard ovvero modificando un file delle risposte per DB2 (.rsp) già esistente. Consente di installare DB2 su più macchine con impostazioni di installazione e di configurazione consistenti tra loro. Un’installazione tramite file delle risposte è veloce, perchè aggira la configurazione del wizard grafico. Un altro vantaggio dell’uso di un file delle risposte al posto del comando db2_install è che crea un Database Administration Server (DAS) su ogni macchina, mentre con db2_install il DAS deve essere creato manualmente dopo l’installazione.

C’è un esempio di file delle risposte (db2exp.rsp), incluso nell’immagine di installazione, che può essere modificato e usato per installare DB2, per configurare gli utenti, per creare le istanze, per impostare le notifiche, per creare i cataloghi degli strumenti e per configurare un gran numero di parametri per la gestione del database. Questo è il metodo più veloce se si hanno già a disposizione tutte le informazioni necessarie. A differenza di db2setup, l’installazione tramite il file di risposte non è interattiva, e la preparazione iniziale del file delle risposte richiede più tempo.

5.2. Impostazione degli utenti e dei gruppi

DB2 richiede ID utente e gruppi per l’autenticazione presso il database. Questa sezione discute questi ID e gruppi e come crearli.

5.2.1. Requisiti di utenti e di gruppi

DB2 richiede un minimo di tre utenti e di tre gruppi: un proprietario d’istanza, un utente confinato e l’utente del Database Administration Server (DAS). Potete usare i nomi standard forniti dalle utilità usate per le impostazioni, ovvero specificare vostri nomi di utenti e di gruppi. Per esempio, considerare le seguenti ID utente e nomi di gruppi predefiniti prodotti da DB2 Setup Launchpad:

Table 3. ID d’utenti e nomi di gruppi predefiniti

Utente necessario  Nome dell’utente  Nome del gruppo

Descrizione

Proprietario dell’istanza db2inst1 db2grp1 Amministra un’istanza DB2

Utente confinato db2fenc1 db2fgrp1 Responsabile dell’esecuzione di funzioni definite per l’utente "confinato", come JDF e stored procedure.

Utente DAS dasusr1 dasadm1 Amministra il DB2 Administration Server

5.2.2. Creazione di utenti

Bisogna avere l’autorità di root per creare utenti e gruppi. Ci sono tre modi per creare un ID utente per DB2:

• DB2 Launchpad: l’installazione con DB2 Launchpad crea per voi tutti gli utenti e i gruppi necessari durante l’installazione. Gli utenti e i gruppi di default che vengono creati sono mostrati nella tabella sopra. Questo metodo dà inoltre la possibilità di specificare i nomi preferiti per gli utenti e per i gruppi.

• File delle risposte: gli utenti possono essere creati anche durante un’installazione tramite file delle risposte se si specificano informazioni sugl utenti e sui gruppi nel file delle risposte. Per esempio, si considerino i seguenti elementi in un file di risposte che creano i tre utenti e gruppi necessari a DB2:

  * Utente del DAS
  DAS_USERNAME = dasusr1
  DAS_GROUP_NAME = dasadm1
  DAS_HOME_DIRECTORY = /home/dasusr1
  DAS_PASSWORD = ******
  * Utente proprietario dell'istanza
  inst1.NAME = db2inst1
  inst1.GROUP_NAME = db2grp1
  inst1.HOME_DIRECTORY = /db2home/db2inst1
  inst1.PASSWORD = ******
  inst1.AUTOSTART = YES
  inst1.AUTHENTICATION = SERVER
  inst1.SVCENAME = db2c_db2inst1
  inst1.PORT_NUMBER = 50001
  inst1.FCM_PORT_NUMBER = 60000
  inst1.MAX_LOGICAL_NODES = 4
  * Utente confinato
  nst1.FENCED_USERNAME = db2fenc1
  inst1.FENCED_GROUP_NAME = db2fgrp1
  inst1.FENCED_HOME_DIRECTORY = /db2home/db2fenc1
  inst1.FENCED_PASSWORD = ******

• Manualmente usando la linea di comando. Per usare questo metodo, sono questi i passi necessari:

1. Collegatevi alla macchina come root.

2. Create i gruppi per il proprietario dell’istanza, per l’utente confinato e per l’utente di DAS usando questi comandi:

      groupadd db2grp1
      groupadd db2fgrp1
      groupadd dasadm1

Linux creerà i gruppi usando i primi numeri di ID di gruppo (GID) disponibili. Se preferite potete specificare i numeri di GID.

3. Create un utente che appartenga a ciascun gruppo specificandone anche la home directory. Per esempio, potete scegliere di mettere tutte le home directory in /db2home utilizzando i seguenti comandi:

      useradd -g db2grp1  -m -d /db2home/db2inst1 db2inst1 -p password1
      useradd -g db2fgrp1 -m -d /db2home/db2fenc1 db2fenc1 -p password2
      useradd -g dasadm1  -m -d /db2home/dasusr1 dasusr1 -p password3

5.2.3. Aggiungete utenti esistenti agli utenti di DB2

Per permettere ad utenti di sistema già esistenti di agire come amministratori di un’istanza DB2, bisogna fare qualche modifica agli account utente già esistenti:

• Aggiungete l’utente al gruppo db2grp1. Il parametro di configurazione del gestore del database SYSADM_GROUP controlla chi ha quel livello di accesso per tutti i database in quell’istanza. Si può determinare quale gruppo sia impostato come gruppo SYSADM immettendo il comando:

db2 get dbm cfg | grep SYSADM_GROUP

In modo predefiito, DB2 lo imposta come db2grp1. Per aggiungere l’utente al gruppo SYSADM modificate il file /etc/groups (come root) aggiungendo l’ID dell’account dell’utente alla linea che descrive il gruppo di amministrazione del sistema DB2. Per esempio:

db2grp1:x:102:jackc,ellenp,frankj

• Aggiornare il profilo dell’utente aggiungendo le seguenti linee al file .bashrc nella home directory

# Le seguenti tre linee sono state aggiunte da DB2 SYSADM.
if [ -f /home/frankj/sqllib/db2profile ]; then
     . /home/frankj/sqllib/db2profile
fi

• Dopo l’installazione, se si desidera consentire o revocare l’accesso ai database (o ad altri oggetti), usare la sezione "Utenti e gruppi" del Control Center o le istruzioni SQL GRANT e REVOKE. Se volete vedere un esempio, in modo predefinito il database SAMPLE assegna alcuni privilegi a "PUBLIC".

6. Installare DB2 Express-C

Questo capitolo riguarda un tipico scenario di configurazione per installare DB2 Express-C su un sistema Linux a 32-bit, usando il metodo di installazione db2setup.

IBM DB2 Express-C per Linux HOWTO

6.1. Installazione con db2setup

6.1.1. Prerequisiti

• Assicuratevi che il vostro sistema soddisfi i requisiti di software, di memoria, e di disco delineati in Section 5.

• È necessaria l’autorità di root per fare l’installazione.

• Il DB2 Setup Launchpad è un installatore grafico. Dovete avere il software X Window System in grado di rappresentare un’interfaccia grafica utente (GUI) per poter eseguire DB2 Setup Launchpad sulla vostra macchina.

6.1.2. Procedura

Per installare DB2 Express-C 9:

1. Collegatevi al sistema come un utente con autorità di root.

2. Se state installando da un CD o un DVD, date il comando per montare il supporto d’installazione di DB2. Per esempio,

  mount /media/cdrom

Se state usando un file tar.gz scaricato, estraete i contenuti di questo archivio in una posizione sul vostro disco rigido. Per esempio, assumendo che il file tar.gz sia stato scaricato nella directory /tmp:

  cd /tmp
  tar zxf db2exc_912_LNX_x86.tar.gz

3. Spostatevi nella directory di installazione. Per un’installazione tramite CD/DVD:

  cd /media/cdrom/exp/disk1

Per il file tar.gz scaricato e scompattato:

  cd /tmp/exp/disk1

4. Eseguite il comando db2setup.

  ./db2setup

5. Quando IBM DB2 Setup Launchpad si apre, selezionate "Install a Product".

6. Selezionate il bottone "Install New" nella finestra principale.

7. Quando appare il wizard Welcome to the DB2 Setup, cliccate "Next".

8. Leggete l’accordo di licenza e selezionate il bottone "Accept" se accettate i termini (il bottone "Decline" è selezionato già automaticamente). Cliccate "Next".

9. Sulla finestra Select the installation type, selezionate il tipo di installazione che volete eseguire. Avete tre opzioni di installazione:

• Typical: 460–560 MB. Quest’opzione installa e configura la maggior parte dei componenti del DB2, usando una tipica configurazione con valori predefiniti. Quest’opzione include tutte le funzionalità principali, insieme al supporto ODBC e agli strumenti più comunemente usati quali Control Center. Potete selezionare il bottone "View Features" per vedere quali componenti sono installati con quest’opzione.

• Compact: 380–460 MB. Quest’opzione installa e configura solo i componenti base di DB2, con una configurazione minima sul vostro computer. Con quest’opzione avete il supporto base per client e server, insieme al supporto delle procedure Java e SQL. Ancora, potete cliccare il bottone "View Features" per maggiori informazioni.

• Custom: 320–820 MB. Quest’opzione consente di installare solo le componenti di vostra scelta; e di creare e personalizzare un’istanza base su DB2.

Fate la vostra scelta e cliccate "Next". (Il resto di queste istruzioni è basato sull’opzione di installazione Custom).

10. Sulla finestra Select the installation action , scegliete il bottone radio "Install DB2 Express on this computer". Potete scegliere anche di salvare le vostre impostazioni di installazione in un file delle risposte selezionando "Save your settings in a response file". Dovete scegliere quest’opzione se pensate di installare DB2, con le stesse impostazioni, su altri computer nel vostro ambiente.

11. Scegliete gli elementi di DB2 che volete nella finestra Select the features to install. Potete avere un’anticipazione di ciascun componente selezionandolo e leggendo le descrizioni corrispondenti nella sezione Description.

Potete anche scegliere dove installare i programmi DB2. Automaticamente, per una prima installazione, questa posizione è /opt/ibm/db2/V9.1/ Una volta deciso quali funzionalità volete installare e in quale posizione, cliccate "Next".

12. Selezionate quali lingue volete installare sul vostro computer per i messaggi e per le interfacce utente nella finestra Languages. L’inglese è sempre installato, indipendentemente dalle altre lingue scelte. Cliccate "Next".

13. Nella finestra Specify the location of the DB2 Information Center, scegliete come volete accedere al DB2 Information Center. Il DB2 Information Center contiene la documentazione per DB2 e altri prodotti legati a DB2. Il bottone "On the IBM Web site" è selezionato automaticamente. Scegliendo quest’opzione, DB2 è configurato per accedere alla documentazione sul Web usando un browser. Se avete una copia del DB2 Information Center installata altrove su un server dell’intranet, potete scegliere il bottone "On the following intranet server". Specificate il valore nei campi di testo Host name e Port number (il valore predefinito per il numero della porta è 51000). Cliccate il bottone "Help" per maggiori informazioni, altrimenti cliccate "Next".

14. Riempite con le informazioni relative all’utente che amministrerà DB2 Administration Server la finestra Set user information for the DB2 Administration Server. Selezionate il bottone "New user" oppure il bottone "Existing user". Le caselle di testo Password e Confirm password sono contornate in rosso per indicare che sono campi da specificare obbligatoriamente prima di poter proseguire con l’installazione. Se scegliete di creare un nuovo utente, un account utente verrà creato (inclusa una home directory) sul vostro sistema Linux. Cliccate "Next".

15. Se volete creare una nuova istanza DB2 di base, dove immagazzinare il vostro database, selezionate il bottone "Create a DB2 instance" della finestra Set up a DB2 instance. Altrimenti, selezionate il bottone "Defer this task until after installation is complete". Se selezionate questa seconda opzione, dovrete creare una nuova istanza dopo aver completato l’installazione usando il comando db2icrt. Cliccate "Help" per maggiori informazioni, altrimenti cliccate "Next".

16. Se create una nuova istanza, riempite con le informazioni relative al proprietario dell’istanza DB2 la finestra Set user information for the DB2 instance owner. Selezionate il bottone "New user", oppure il bottone "Existing user". Le caselle di testo Password e Confirm password sono contornate in rosso per indicare che sono campi da specificare obbligatoriamente prima di poter proseguire con l’installazione. Inoltre, se decidete di creare un nuovo utente, un account utente verrà creato (inclusa la home directory) sul vostro sistema Linux. Cliccate "Next".

17. Riempite con le informazioni per l’utente confinato di DB2 la finestra Set user information for the fenced user. Selezionate il bottone "New user", oppure il bottone "Existing user". Le caselle di testo Password e Confirm password sono contornate in rosso per indicare che sono campi da specificare obbligatoriamente prima di poter proseguire con l’installazione. Per maggiori informazioni sugli utenti confinati e su come gli utenti limitati siano legati alle funzioni definite dagli utenti (UDF) confinate e non ed alle stored procedure, cliccate "Help". Altrimenti, cliccate "Next" per proseguire.

18. Configurate l’istanza DB2 per comunicazioni TCP/IP nella finestra Configure instance IP communication and startup. Potete accettare i valori predefiniti che si trovano nei campi Service name e Port number, o sceglierne di vostri. Se volete configurare le proprietà dell’istanza in un momento successivo, selezionate il bottone "Do not configure at this time". Questo nome di servizio e questa porta vengono aggiunte al file dei servizi del sistema, che tipicamente si trova in

/etc/services.

Potete anche scegliere se far partire questa istanza all’avvio del sistema. Se avete deciso di far funzionare il sistema come server DB2 questo è consigliato . Cliccate "Next".

19. Nella finestra Prepare the DB2 tools catalog, selezionate il bottone "Prepare the DB2 tools catalog" se volete usare il Task Center o il Task Scheduler. Quest’opzione crea un database locale che immagazzina metadati riguardanti i compiti da eseguire. Se non ci fosse questo repository dei compiti, le attività pianificate non funzionerebbero. Se volete creare un catalogo di strumenti DB2 dopo aver completato l’installazione, selezionate il bottone "Do not prepare the DB2 tools catalog". Potete creare manualmente un catalogo di strumenti DB2 più tardi usando il comando CREATE TOOLS CATALOG. Cliccate "Next".

Se decidete di creare un catalogo di strumenti DB2, potete specificare in quale istanza, database e schema immagazzinare il catalogo di strumenti DB2. Il catalogo di strumenti DB2 sarà messo nella home directory del proprietario dell’istanza. Cliccate "Next".

20. Nella finestra Set up notifications specificate un mail server di notifica ed una lista di contatti. Questo consente a DB2 di notificare agli amministratori se un database richiede attenzione. Create una nuova lista di contatti registrata localmente, oppure usate una lista di contatti esistente che risieda su un server DB2 remoto. Usate un server SMTP che accetti dei messaggi SMTP non autenticati per le notifiche via email. Si può anche decidere di saltare questo passo; DB2 registrerà comunque tutte le notifiche di amministrazione nel file di log. Cliccate "Next".

21. Se avete specificato una nuova lista per i contatti nel precedente passo, allora in Specify a contact for health monitor notification, potete aggiungere un nome ed un indirizzo email a cui DB2 Health Center spedirà i messaggi per ogni avvertimento sullo stato di salute dei database DB2.

22. Nella finestra Start copying files, passate in rassegna le impostazioni d’installazione e cliccate "Finish" per completare l’installazione. Il pannello Current settings fornisce un sommario delle vostre impostazioni d’installazione e di configurazione.

Mentre i file vengono copiati sul vostro computer, vedrete due barre di stato sulla finestra Installing DB2 Express, una indicante il grado di completamento di ogni particolare fase d’installazione e una per il grado di completamento di tutta l’installazione. Quando l’installazione sarà finita, la finestra Setup Complete indicherà quali passi post-installazione, se ve ne fossero, dovranno essere eseguiti, insieme a una linguetta (etichettata "Log File") che mostra il file con il rapporto dell’installazione. Cliccate "Finish" per chiudere questa finestra e Setup Launchpad.

7. Installare DB2 Express-C su Red Hat Enterprise Linux (RHEL) 4

Prima di procedere assicuratevi di aver letto Section 5 ed Section 6.

Queste note d’installazione sono basate su un’installazione su singola partizione usando il kernel 2.6.9-55.0.2 EL.

7.1. Note d’installazione

L’installazione su Red Hat Enterprise Linux 4 si è conclusa con successo, senza problemi nel funzionamento dell’installatore a GUI e senza errori durante l’installazione. Quest’installazione lineare non è sorprendente, visto che RHEL 4 è una piattaforma per DB2 ufficialmente supportata.

7.2. Note di post-installazione

I test di base (vedere Section 21 per maggiori dettagli) sono stati eseguiti con successo.

Cionondimeno, ho scoperto che dopo un reboot, l’istanza DB2 non è stata riavviata automaticamente, ragion per cui i client non potevano connettersi al database. Per correggere questo problema, eseguite questo comando come proprietario dell’istanza:

db2set DB2AUTOSTART=YES

Questo assicurerà che l’istanza DB2 sia inizializzata e pronta a ricevere connessioni in arrivo dopo un reboot (intenzionale o meno che sia).

Inoltre, per consentire l’accesso al DB2 attraverso il firewall basato su iptables (che è attivato automaticamente), è stato necessario modificare l’insieme di regole del firewall, che si trovano nel file /etc/sysconfig/iptables. Se avete attivato il vostro firewall (usando il servizio iptables) e volete attivare la connettività dall’esterno al vostro server DB2, dovete consentire gli accessi tramite TCP e UDP alla porta 523 e gli accessi tramite TCP alle porte di servizio di DB2. Per fare in modo che questo funzioni, aggiungete queste regole al file iptables (in qualsiasi posizione tra le regole -j ACCEPT):

-A RH-Firewall-1-INPUT -p udp -m udp --dport 523 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 523 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 50000 -j ACCEPT

Queste regole sono state aggiunte direttamente al file iptables per assicurarsi che persistano nel caso di un reboot del sistema. Notate che avrete bisogno di aggiungere un’altra nuova regola TCP per consentire accessi al firewall nel caso creiate successivamente ulteriori istanze.

Potete usare db2 get dbm cfg | grep SVCENAME per ottenere i nomi dei servizi e poi controllare il file /etc/services per stabilire i valori delle porte corrispondenti che vanno aperte sul vostro firewall.

8. Installare DB2 Express-C su Fedora Core 6

Prima di procedere assicuratevi di aver letto Section 5 e Section 6.

Si noti che IBM non supporta ufficialmente questa distribuzione per DB2 9. Qualsiasi problema incontriate usando questa distribuzione deve essere replicato su una distribuzione supportata, prima che il Supporto IBM possa aiutarvi a risolvere il problema. Vedere il sito web di convalida DB2 Linux in Section 22.

Queste note d’installazione sono basate su un’installazione a 32-bit su singola partizione usando il kernel 2.6.18-1.2849.fc6.

8.1. Note d’installazione

Il solo errore d’installazione incontrato è stato riscontrato al lancio del comando ./db2setup. Lo schermo monstrava questo errore:

ERROR:
     The following library files could not be loaded by db2langdir
     in /tmp/exp/disk1/db2/linux/install/../bin
         libstdc++.so.5

         libstdc++.so.5
     Check the following web site for the up-to-date system
     requirements of IBM DB2 Version 9.1:
         http://www.ibm.com/software/data/db2/udb/sysreqs.html
     Aborting the current installation ...

per risolvere questo errore, usate l’utilità per la gestione dei pacchetti yum per installare le necessarie librerie C++ di compatibilità:

yum -y install compat-libstdc++-33

L’installazione ha avuto successo dopo aver installato le librerie C++.

8.2. Note di post-installazione

I test (vedere Section 21 per maggiori dettagli) sono stati eseguiti con successo, ad eccezione del Configuration Assistant che era molto lento quando lanciato dal DB2 Control Center. Alla fine ho dovuto uccidere ("kill") il processo il quale ha restituito un codice di ritorno DB2JAVIT : RC = 143.

Uno strano effetto riscontrato è quello per cui le finestre di DB2 non apparivano quando si lanciavano gli strumenti grafici basati su Java (e altre finestre mancavano di decorazioni); comunque, scollegandosi e ricollegandosi il problema è stato risolto.

Per ereditare l’ambiente di un’istanza DB2 da un’altra home directory, creare un database, caricare dinamicamente le librerie DB2 e per altri lavori, ho scoperto che dovevo disabilitare SELinux o modificare le politiche SELinux di default. Potete disabilitare SELinux al volo eseguendo il seguente comando come root:

# /usr/sbin/setenforce 0

Notate che quando fate un reboot SELinux verrà nuovamente abilitato. Per disabilitare SELinux in modo permanente, modificate /etc/selinux/config e impostate il seguente valore:

SELINUX=disabled

Se avete abilitato il vostro firewall (usando il servizio iptables) e volete abilitare la connettività esterna al vostro server DB2, dovete aprire la porta 523 e qualsiasi porta associata ai servizi DB2 (usate db2 get dbm cfg | grep SVCENAME per ottenere i nomi dei servizi e controllate /etc/services per i valori corrispondenti delle porte) nel vostro firewall.

9. Installare DB2 Express-C su Fedora 7

Prima di procedere assicuratevi di aver letto Section 5 e Section 6.

Si noti che IBM non supporta ufficialmente questa distribuzione per DB2 9. Qualsiasi problema incontriate usando questa distribuzione deve essere replicato su una distribuzione supportata, prima che il Supporto IBM possa aiutarvi a risolvere il problema.

Queste note d’installazione sono basate su un’installazione a 32-bit su singola partizione usando il kernel 2.6.21-1.3228.fc7.

9.1. Note d’installazione

Il solo errore d’installazione riscontrato è stato riscontrato quando si è lanciato il comando ./db2setup. Lo schermo ha mostrato il seguente errore:

ERROR:
     The following library files could not be loaded by db2langdir
     in /tmp/exp/disk1/db2/linux/install/../bin
         libstdc++.so.5
         libstdc++.so.5
     Check the following web site for the up-to-date system
     requirements of IBM DB2 Version 9.1:
         http://www.ibm.com/software/data/db2/udb/sysreqs.html
     Aborting the current installation ...

Per risolvere questo errore, usate l’utilità per la gestione dei pacchetti yum per installare le necessarie librerie C++ di compatibilità:

yum -y install compat-libstdc++-33

L’installazione ha avuto successo dopo aver installato la libreria C++.

9.2. Note post-installazione

I test di base (vedere Section 21 per maggiori dettagli) sono stati eseguiti con successo.

Cionondimeno, ho scoperto che dopo un reboot, l’istanza DB2 non è stata riavviata automaticamente, ragion per cui i client non potevano connettersi al database. Per correggere questo problema, eseguite questo comando come proprietario dell’istanza:

db2set DB2AUTOSTART=YES

Questo assicurerà che l’istanza DB2 sia inizializzata e pronta a ricevere connessioni in arrivo dopo un reboot (intenzionale o meno che sia).

Inoltre, per consentire l’accesso al DB2 attraverso il firewall basato su iptables (che è attivato automaticacmente), è stato necessario modificare l’insieme di regole del firewall, che si trovano nel file /etc/sysconfig/iptables. Se avete abilitato il vostro firewall (usando il servizio iptables), e volete attivare la connettività dall’esterno al vostro server DB2, dovete consentire l’accesso TCP e UDP alla porta 523 e gli accessi tramite TCP a qualsiasi porta di servizio di DB2. Per fare in modo che questo funzioni, aggiungete queste regole al file iptables (in qualsiasi posizione tra le regole -j ACCEPT):

-A RH-Firewall-1-INPUT -p udp -m udp --dport 523 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 523 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 50000 -j ACCEPT

Queste regole sono state aggiunte direttamente al file iptables per assicurarsi che persistano nel caso di un reboot del sistema. Notate che avrete bisogno di aggiungere un’altra nuova regola TCP per consentire accessi al firewall nel caso creiate successivamente ulteriori istanze.

Potete usare db2 get dbm cfg | grep SVCENAME per ottenere i nomi dei servizi e poi controllare il file /etc/services per stabilire i valori delle porte corrispondenti che vanno aperte sul vostro firewall.

10. Installazione di DB2 Express-C su OpenSUSE 10.2

Prima di procedere assicuratevi di aver letto Section 5 e Section 6.

Si noti che IBM non supporta ufficialmente questa distribuzione per DB2 9. Qualsiasi problema incontriate usando questa distribuzione deve essere replicato su una distribuzione supportata, prima che il Supporto IBM possa aiutarvi a risolvere il problema.

Queste note d’installazione sono basate su un’installazione su singola partizione usando il kernel 2.6.18.2-34-default.

10.1. Note d’installazione

L’installazione su OpenSUSE 10.2 si è conclusa con successo, senza alcun problema nel far funzionare l’installatore GUI e senza alcun errore durante l’installazione.

10.2. Note di post-installazione

I test di base (vedere Section 21 per maggiori dettagli) sono stati eseguiti con successo.

Cionondimeno, ho scoperto che dopo un reboot, l’istanza DB2 non è stata riavviata automaticamente, ragion per cui i client non potevano connettersi al database. Per correggere questo problema, eseguite questo comando come proprietario dell’istanza:

db2set DB2AUTOSTART=YES

Questo assicurerà che l’istanza DB2 sia inizializzata e pronta a ricevere connessioni in arrivo dopo un reboot (intenzionale o meno che sia).

Inoltre, per consentire accesso al DB2 attraverso il firewall (che è attivato automaticamente), è stato necessario aggiungere i valori delle porte al firewall usando il programma di utilità YaST2.

Potete usare il comando db2 get dbm cfg | grep SVCENAME per ottenere il nome del servizio dell’istanza DB2. In modo predefinito, è impostato come una connessione TCP alla porta 50001. Notate che avrete bisogno di aggiungere un’altra nuova regola TCP per consentire accessi al firewall nel caso creiate successivamente ulteriori istanze. Se volete amministrare remotamente l’installazione di DB2 su questo sistema, vanno anche consentite le connessioni UDP e TCP alla porta 523 attraverso il firewall.

Per aprire queste porte usando YaST, lanciate lo strumento YaST, e selezionate "Security and Users, poi selezionate l’icona del "Firewall". Nel pannello d’impostazione Allowed Services, cliccate sul bottone "Advanced". Nel campo titolato TCP ports, aggiungete 523 50001 e nel campo titolato UDP ports, aggiungete 523. Cliccate "Next" sino al completamento del wizard e rilanciate il firewall. Le connessioni remote ora raggiungeranno l’istanza DB2.

11. Installare DB2 Express-C su SUSE Linux Enterprise Server (SLES) 9

Prima di procedere assicuratevi di aver letto Section 5 e Section 6.

Queste note d’installazione sono basate su un’installazione su singola partizione usando il kernel 2.6.5-7.97-default.

11.1. Note d’installazione

L’installazione su SLES si è conclusa con successo, senza alcun problema nel far funzionare l’installatore GUI e senza alcun errore durante l’installazione. Questa facile installazione non è sorprendente, visto che SLES 9 è una piattaforma per DB2 supportata ufficialmente.

11.2. Note di post-installation

I test di base (vedere Section 21 per maggiori dettagli) sono stati eseguiti con successo.

Cionondimeno, ho scoperto che dopo un reboot, l’istanza DB2 non è stata riavviata automaticamente, ragion per cui i client non potevano connettersi al database. Per correggere questo problema, eseguite questo comando come proprietario dell’istanza:

db2set DB2AUTOSTART=YES

Questo assicurerà che l’istanza DB2 sia inizializzata e pronta a ricevere connessioni in arrivo dopo un reboot (intenzionale o meno che sia).

Inoltre, per consentire accesso al DB2 attraverso il firewall (che è attivato automaticamente), è stato necessario aggiungere i valori delle porte al firewall usando il programma di utilità YaST.

Potete usare il comando db2 get dbm cfg | grep SVCENAME per ottenere il nome del servizio dell’istanza DB2. In modo predefinito, è impostato come una connessione TCP alla porta 50001. Notate che avrete bisogno di aggiungere un’altra nuova regola TCP per consentire accessi al firewall nel caso creiate successivamente ulteriori istanze. Se volete amministrare remotamente l’installazione di DB2 su questo sistema, vanno anche permesse le connessioni UDP e TCP alla porta 523 attraverso il firewall.

Per aprire queste porte usando YaST, aprite lo strumento YaST e selezionate "Security and Users, poi selezionate l’icona "Firewall". Nel pannello d’impostazione, cliccate "Next" e poi cliccate sul bottone "Expert. Nel dialogo intitolato porte, aggiungete 523 50001. Cliccate "Next" sino al completamento del wizard e poi "Continue" così che YaST rilancerà il firewall con la nuova configurazione. Le connessioni remote ora raggiungeranno l’istanza DB2.

12. Installare DB2 Express-C su SUSE Linux Enterprise Server (SLES) 10

Prima di procedere assicuratevi di aver letto Section 5 e Section 6.

Queste note d’installazione sono basate su un’installazione su singola partizione usando il kernel 2.6.16.21-0.8-default. Era installata e attiva la sicurezza Novell AppArmor sia durante l’installazione che durante le prove.

12.1. Note d’installazione

L’installazione su SLES 10 si è conclusa con successo, senza alcun problema nel far funzionare l’installatore GUI e senza alcun errore durante l’installazione. Questa facule installazione non è sorprendente, visto che SLES 10 è una piattaforma per DB2 supportata ufficialmente.

12.2. Note di post-installazione

I test di base (vedere Section 21 per maggiori dettagli) sono stati eseguiti con successo.

Cionondimeno, ho scoperto che dopo un reboot, l’istanza DB2 non è stata riavviata automaticamente, ragion per cui i client non potevano connettersi al database. Per correggere questo problema, eseguite questo comando come proprietario dell’istanza:

db2set DB2AUTOSTART=YES

Questo assicurerà che l’istanza DB2 sia inizializzata e pronta a ricevere connessioni in arrivo dopo un reboot (intenzionale o meno che sia).

Inoltre, per consentire l’accesso al DB2 attraverso il firewall (che è attivato automaticamente), è stato necessario aggiungere i valori delle porte al firewall usando il programma di utilità YaST2.

Potete usare il comando db2 get dbm cfg | grep SVCENAME per ottenere il nome del servizio dell’istanza DB2. In modo predefinito, è impostato come una connessione TCP alla porta 50001. Notate che avrete bisogno di aggiungere un’altra nuova regola TCP per consentire accessi al firewall nel caso creiate successivamente ulteriori istanze. Se volete amministrare remotamente l’installazione di DB2 su questo sistema, vanno anche permesse le connessioni UDP e TCP alla porta 523 attraverso il firewall.

Per aprire queste porte usando YaST, lanciate lo strumento YaST e selezionate "Security and Users, poi selezionate l’icona del "Firewall". Nel pannello d’impostazione Allowed Services, cliccate sul bottone "Advanced". Nel campo titolato TCP ports, aggiungete 523 50001 e nel campo titolato UDP ports, aggiungete 523. Cliccate "Next" fino a quando il wizard di setup non sarà completato e il firewall rilanciato. Le connessioni remote ora raggiungeranno l’istanza DB2.

13. Installare DB2 Express-C su SUSE Linux Enterprise Desktop 10

Prima di procedere assicuratevi di aver letto Section 5 e Section 6.

Queste note d’installazione sono basate su un’installazione su singola partizione usando il kernel 2.6.16.21-0.25.

13.1. Note d’installazione

L’installazione su SLED 10 si è conclusa con successo, senza alcun problema nel far funzionare l’installatore GUI e senza alcun errore durante l’installazione.

13.2. Note di post-installazione

I test di base (vedere Section 21 per maggiori dettagli) sono stati eseguiti con successo.

Cionondimeno, ho scoperto che dopo un reboot, l’istanza DB2 non è stata riavviata automaticamente, ragion per cui i client non potevano connettersi al database. Per correggere questo problema, eseguite questo comando come proprietario dell’istanza:

db2set DB2AUTOSTART=YES

Questo assicurerà che l’istanza DB2 sia inizializzata e pronta a ricevere connessioni in arrivo dopo un reboot (intenzionale o meno che sia).

Inoltre, per consentire l’accesso al DB2 attraverso il firewall (che è attivato automaticamente), è stato necessario aggiungere i valori delle porte al firewall usando il programma di utilità YaST2.

Potete usare il comando db2 get dbm cfg | grep SVCENAME per ottenere il nome del servizio dell’istanza DB2. In modo predefinito, è impostato come una connessione TCP alla porta 50001. Notate che avrete bisogno di aggiungere un’altra nuova regola TCP per consentire accessi al firewall nel caso creiate successivamente ulteriori istanze. Se volete amministrare remotamente l’installazione di DB2 su questo sistema, vanno anche permesse le connessioni UDP e TCP alla porta 523 attraverso il firewall.

Per aprire queste porte usando YaST, lanciate lo strumento YaST e selezionate "Security and Users, poi selezionate l’icona del "Firewall". Nel pannello d’impostazione Allowed Services, cliccate sul bottone "Advanced". Nel campo titolato TCP ports, aggiungete 523 50001 e nel campo titolato UDP ports, aggiungete 523. Cliccate "OK" e poi "Next" sino a completamento del wizard che rilancerà il firewall. Ora le connessioni remote raggiungeranno l’istanza DB2.

14. Installare DB2 Express-C su Mandriva Linux 2007

Prima di procedere assicuratevi di aver letto Section 5 e Section 6.

Si noti che IBM non supporta ufficialmente questa distribuzione per DB2 9. Qualsiasi problema incontriate usando questa distribuzione deve essere replicato su una distribuzione supportata, prima che il Supporto IBM possa aiutarvi a risolvere il problema.

Queste note d’installazione sono basate su un’installazione su singola partizione usando il kernel 2.6.17-5mdvlegacy.

14.1. Note d’installazione

Si noti che fare il login come root non è consentito in Mandriva, dovrete quindi collegarvi con un altro utente, poi eseguire il comando su -l da una sessione a terminale per ottenere l’accesso come root prima di lanciare il comando ./db2setup.

L’unico errore incontrato durante l’installazione è stato riscontrato quando si è lanciato il comando ./db2setup. Lo schermo ha mostrato questo errore:

ERROR:
     The following library files could not be loaded by db2langdir
     in /tmp/exp/disk1/db2/linux/install/../bin
         libstdc++.so.5
         libstdc++.so.5
     Check the following web site for the up-to-date system
     requirements of IBM DB2 Version 9.1:
         http://www.ibm.com/software/data/db2/udb/sysreqs.html
     Aborting the current installation ...

Per risolverlo, usate il pacchetto di utilità drakrpm per installare le librerie di compatibilità C++:

libstdc++5-3.3.6-3mdk
libstdc++6-4.1.1-3mdk

Dopo aver installato le librerie C++ l’installazione ha avuto successo.

14.2. Note di post-installazione

I test di base (vedere Section 21 per maggiori dettagli) sono stati eseguiti con successo.

Cionondimeno, ho scoperto che dopo un reboot, l’istanza DB2 non è stata riavviata automaticamente, ragion per cui i client non potevano connettersi al database. Per correggere questo problema, eseguite questo comando come proprietario dell’istanza:

db2set DB2AUTOSTART=YES

Questo assicurerà che l’istanza DB2 sia inizializzata e pronta a ricevere connessioni in arrivo dopo un reboot (intenzionale o meno che sia).

Inoltre, per consentire l’accesso a DB2 attraverso il firewall (che è attivato automaticamente), è necessario aggiungere le porte appropriate nel firewall. Per attivare la connettività dall’esterno al vostro server DB2, dovete consentire gli accessi TCP e UDP alle porte 523 e gli accessi TCP alla porta dell’istanza DB2 (50001 il valore predefinito).

Aprite il Mandriva Control Center, scegliete la linguetta Security, e poi l’icona "Set up a personal firewall...". Nel pannello d’impostazione del firewall, cliccate il bottone "Advanced e aggiungete 523/udp 523/tcp 50001/tcp alla casella di testo Other ports. Cliccate "OK sino a quando l’impostazione del firewall sia completata.

Notate che dovrete aggiungere un’altra regola TCP per permettere l’accesso al firewall se creerete una qualsiasi istanza aggiuntiva successivamente.

15. Installare DB2 Express-C su Ubuntu 6.06 LTS ’Dapper Drake’

Prima di procedere assicuratevi di aver letto Section 5 e Section 6.

Queste note d’installazione sono basate su un’installazione su singola partizione usando il kernel 2.6.15-17.

15.1. Note d’installazione

Dato che in un sistema Ubuntu non potete direttamente connettervi come root, questa installazione di DB2 è eseguita con l’utente creato in modo predefinito durante l’impostazione di Ubuntu (cioè l’account utente normale con la possibilità di fare ’sudo’).

Ci sono due modi per installare DB2 Express-C 9 su Ubuntu. Il metodo più difficile dei due è usare il db2setup standard di DB2 e poi fare gli aggiustamenti al sistema Ubuntu per gestire le piccole differenze nel sistema che gestisce i pacchetti di Ubuntu, che è basato su quello di Debian. Per ragioni di chiarezza e brevità, ometterò le istruzioni per farlo nella maniera più difficile; cionondimeno, se qualcuno volesse vedere queste istruzioni, mandate un email a db2howto@gmail.com e io ve le farò avere.

Il modo semplice di installare DB2 Express-C su Ubuntu 6.06 LTS è di usare l’installatore di pacchetti Synaptic e quasi tutto viene fatto per voi, dallo scarico all’installazione e configurazione. Ecco come fare:

1. Sotto il menù Applications nella barra del menù di Ubuntu, scegliete Add/Remove.

2. Una volta che l’applicazione di gestione dei pacchetti Synaptic è partita, cliccate la casella di selezione Show commercial applications.

3. Nella barra Search, scrivete "DB2" e premete il tasto Enter.

4. DB2 Express dovrebbe apparire come unico risultato. Se non lo vedete, assicuratevi che Synaptic stia visualizzando All Applications o Third party applications.

5. Abilitate il canale dapper-commercial se vi viene richiesto cliccando il bottone "Enable channel".

6. Cliccate "Apply".

Dopo aver premuto il bottone "Apply", Synaptic scaricherà il pacchetto di DB2 Express-C, insieme ad alcune librerie correlate, dopodiché lo spacchetterà e lo installerà e infine configurerà gli utenti DB2 e l’istanza predefiniti.

15.2. Note di post-installazione

Dopo l’installazione eseguita da Synaptic, ci sono alcuni passi necessari per fare in modo che DB2 sia funzionante in maniera lineare.

1. Password utilizzabili per gli account di default di DB2.

Per riuscire a connettersi e fare il login ai database e ai server DB2 usando gli utenti predefiniti di DB2 (db2inst1, db2fenc1, e dasusr1) dovete modificare le password. Per farlo aprite un terminale (come utente normale) e scrivete sudo su - per ottenere l’accesso come root. Poi lanciate i tre comandi:

passwd db2inst1
passwd db2fenc1
passwd dasusr1

Ogni volta vi verrà chiesto di impostare la nuova password per l’account dell’utente specificato.

2. Cambiate la shell predefinita per gli account di default di DB2.

La shell dei comandi predefinita per gli account di DB2 è impostata per essere la semplice e vecchia /bin/sh. Per avere le utili funzionalità della shell BASH, dovrete cambiarla per questi tre account. Nella stessa finestra di accesso ai privilegi di root aprire il file /etc/passwd usando il vostro editor di testo preferito e cambiate:

db2inst1:x:1001:1001::/home/db2inst1:/bin/sh
db2fenc1:x:1002:1002::/home/db2fenc1:/bin/sh
dasusr1:x:1003:1003::/home/dasusr1:/bin/sh

in

db2inst1:x:1001:1001::/home/db2inst1:/bin/bash
db2fenc1:x:1002:1002::/home/db2fenc1:/bin/bash
dasusr1:x:1003:1003::/home/dasusr1:/bin/bash

3. Abilitate le porte di servizio di DB2 per le connessioni remote.

Per consentire agli utenti esterni di connettersi ai vostri database DB2, dovrete impostare la porta di servizio di DB2, dato che non è configurata dal processo d’installazione di Synaptic.

Come utente normale eseguite sudo vi /etc/services e aggiungete questa linea alla fine del file e salvate le modifiche:

db2c_db2inst1        50001/tcp         # IBM DB2 instance - db2inst1

Poi, come proprietario dell’istanza DB2 (db2inst1 è quello predefinito), eseguite i comandi:

db2 update dbm cfg using SVCENAME db2c_db2inst1
db2set DB2COMM=tcpip
db2stop
db2start

Ora gli utenti remoti saranno in grado di connettersi ai database DB2 sul vostro sistema Ubuntu.

4. Abilitate connessioni di amministrazione remote a DB2.

Per consentire l’amministrazione remota del vostro server DB2 è necessario impostare la porta di connessione DAS del DB2, visto che non è configurata dal processo d’installazione Synaptic.

Come utente normale, eseguite sudo vi /etc/services e aggiungete questa linea alla fine del file:

ibm-db2             523/tcp           # IBM DB2 DAS
ibm-db2             523/udp           # IBM DB2 DAS

Poi, come proprietario dei DB2 DAS (dasusr1 è quello predefinito), eseguite questi comandi:

db2admin stop
db2admin start

Ora amministratori remoti possono connettersi al servere DAS per amministrare database sul vostro sistema Ubuntu.

16. Installare DB2 Express-C su Ubuntu 7.04 ’Feisty Fawn’

Queste note d’installazione sono basate su un’installazione su singola partizione usando il kernel 2.6.20-16-generic.

Si noti che IBM non supporta ufficialmente questa distribuzione per DB2 9. Qualsiasi problema incontriate usando questa distribuzione deve essere replicato su una distribuzione supportata, prima che il Supporto IBM possa aiutarvi a risolvere il problema.

Tenete presente anche che l’architettura PowerPC non è più supportata a partire da Ubuntu 7.04.

16.1. Note d’installazione

Visto che non potete connettervi direttamente come root a un sistema Ubuntu, questa installazione di DB2 viene eseguita con l’utente predefinito creato durante l’impostazione di Ubuntu (cioè l’utente normale con possibilità di fare ’sudo’).

Ci sono due modi per installare DB2 Express-C 9 su Ubuntu. Il metodo più difficile dei due è usare il db2setup predefinito di DB2 e poi fare gli aggiustamenti al sistema Ubuntu per gestire le particolarità del pacchetto Ubuntu, che è basato su Debian. Per ragioni di chiarezza e brevità, ometterò le istruzioni per farlo nella maniera più difficile; cionondimeno, se qualcuno volesse vedere queste istruzioni, mandate un email a db2howto@gmail.com e io ve le farò avere.

Il modo semplice per installare DB2 Express-C su Ubuntu 7.04 è quello di scaricare il file di pacchetto nel formato Debian di DB2 Express-C per poi usare l’installatore di pacchetti di Ubuntu. In questo modo, quasi tutto viene fatto al vostro posto, dall’installazione alla configurazione. Ecco come farlo:

1. Usate qualsiasi software client FTP e connettetevi a:

ftp.software.ibm.com/software/data/db2/express/latest_debs

2. Scaricate db2exc_9.1.2-1_i386.deb (o il file .deb equivalente più recente)

3. Una volta che lo scarico sia stato completato, eseguite il comando:

    sudo gdebi-gtk db2exc_9.1.2-1_i386.deb

4. Cliccate "Install Package"

5. Cliccate "Close" una volta che il pacchetto è stato installato

Dopo aver premuto il bottone "Install Package", l’installatore di pacchetti di Ubuntu spacchetterà e installerà e configurerà gli utenti DB2 e l’istanza predefinita. Cliccate il bottone "Close" una volta che l’installazione sarà completata.

16.2. Note di post-installazione

Dopo l’installazione eseguita da Synaptic, ci sono alcuni passi che sono necessari per fare in modo che DB2 funzioni agevolmente.

1. Password utilizzabili per gli account predefiniti di DB2.

Per riuscire a connettersi e fare il login ai database e ai server DB2 usando gli utenti predefiniti di DB2 (db2inst1, db2fenc1, e dasusr1), dovete modificare le password iniziali. Per fare questo, aprite un terminale (come utente normale), e scrivete sudo su - per ottenere accesso come root. Poi eseguite i seguenti tre comandi:

    passwd db2inst1
    passwd db2fenc1
    passwd dasusr1

Ogni volta vi verrà chiesto di impostare la nuova password per gli account degli utenti specificati.

2. Cambiate la shell predefinita per gli account di default di DB2.

La shell di comandi predefinita per gli account di DB2 è impostata alla semplice e vecchia /bin/sh. Per avere a disposizione le comode funzionalità della shell BASH, dovrete cambiarla per questi tre account. Nella stessa finestra da cui avete accesso ai privilegi di root aprire il file /etc/passwd con il vostro editor di testo preferito e cambiate:

db2inst1:x:1001:1001::/home/db2inst1:/bin/sh
db2fenc1:x:1002:1002::/home/db2fenc1:/bin/sh
dasusr1:x:1003:1003::/home/dasusr1:/bin/sh

in

db2inst1:x:1001:1001::/home/db2inst1:/bin/bash
db2fenc1:x:1002:1002::/home/db2fenc1:/bin/bash
dasusr1:x:1003:1003::/home/dasusr1:/bin/bash

3. Abilitate le porte di servizio di DB2 per le connessioni remote.

Per consentire agli utenti esterni di connettersi ai vostri database DB2, dovrete impostare la porta di servizio di DB2, dato che non è configurata dal processo d’installazione di Synaptic.

Come utente normale, eseguite sudo vi /etc/services e aggiungete questa linea alla fine del file:

db2c_db2inst1        50001/tcp         # IBM DB2 instance - db2inst1

Poi, come proprietario dell’istanza DB2 (db2inst1 per default), eseguite questi comandi:

db2 update dbm cfg using SVCENAME db2c_db2inst1
db2set DB2COMM=tcpip
db2stop
db2start

Ora gli utenti remoti potranno connettersi ai database DB2 sul vostro sistema Ubuntu.

4. Abilitare connessioni di amministrazione remote a DB2.

Per consentire l’amministrazione remota al vostro server DB2, dovrete impostare la porta di connessione al DAS di DB2, visto che non è configurata dal processo d’installazione Synaptic.

Come utente normale, eseguite sudo vi /etc/services e aggiungete questa linea alla fine del file:

ibm-db2             523/tcp           # IBM DB2 DAS
ibm-db2             523/udp           # IBM DB2 DAS

Poi, come proprietario del DB2 DAS (dasusr1 è quello di default), eseguite questi comandi:

db2admin stop
db2admin start

Ora gli amministratori potranno connettersi al server DAS per amministrare i database sul vostro sistema Ubuntu.

5. Correzione del problema del riavvio dell’istanza

Una questione interessante nell’installazione di Ubuntu 7.04 è che le istanze DB2 non ripartono in maniera appropriata dopo un reboot del sistema e che l’impostazione di DB2AUTOSTART=YES non corregge la situazione.

Un modo per risolvere questo problema è in parte stato proposto da IgorM sul forum dedicato a DB2 Express-C, e consiste nel creare ed eseguire un proprio script (alternativo) di lancio dell’istanza DB2.

Per cominciare, eseguite login e create un nuovo script usando il comando:

sudo vi /etc/init.d/db2

poi inserite il seguente testo:

#!/bin/sh
#
# Script per il lancio delle istanze DB2 al bootup.
#
set -e
. /lib/lsb/init-functions
case "$1" in
start)
         /opt/ibm/db2exc/V9.1/instance/db2istrt
         ;;
stop|restart|reload)
         ;;
esac
exit 0

e alla fine scrivete il file su disco usando il comando di vi :wq.

Notate che il percorso degli eseguibili è /opt/ibm/db2exc/V9.1/, il percorso predefinito dell’installazione dal file .deb di DB2. Se la vostra installazione ha messo i file di DB2 altrove, assicuratevi di adattare lo script come richiesto per trovare la directory /instance/.

Una volta salvato lo script dare al file l’appropriata proprietà e gli appropriati permessi:

chown root.root db2
chmod 755 db2

Ora, per inizializzare lo script in modo che parta al momento del boot, installare il Boot-Up Manager con questo comando:

sudo apt-get bum

Dopo che Synaptic ha scaricato e installato l’applicazione, potete eseguire il programma cliccando System -> Administration -> BootUp-Manager. Poi cliccate sulla casella di selezione "Activate" di fianco alla voce db2. Cliccate Apply e dite "No" all’elemento di dialogo che chiede se volete lanciare il servizio subito. Cliccate Quit. Lo script verrà eseguito al prossimo boot e lancerà tutte le istanze di DB2.

L’unica altra maniera di risolvere il problema è di attivare manualmente le istanze dopo un reboot con db2start (come proprietario delle istanze) e db2admin start (come il proprietario di DAS). Una volta che il DB2 Express-C avrà superato il processo di validazione per Ubuntu 7.04, questo problema legato al lancio delle istanze scomparirà.

17. Installare DB2 Express-C su SimplyMEPIS 6.0

SimplyMEPIS 6.0 è basato sul sistema di gestione dei pacchetti di Ubuntu e i suoi repository; è tra le prime 5 distribuzioni di Linux (secondo distrowatch.com). Nella 6.0, SimplyMEPIS supporta soltanto l’architettura a 32-bit, ma il nuovo rilascio, 6.5, supporta l’architettura a 64-bit.

Si noti che IBM non supporta ufficialmente questa distribuzione per DB2 9. Qualsiasi problema incontriate usando questa distribuzione deve essere replicato su una distribuzione supportata, prima che il Supporto IBM possa aiutarvi a risolvere il problema.

Queste note d’installazioni sono basate su un’installazione su singola partizione a 32-bit usando il kernel 2.6.15-26.386.

17.1. Note d’installazione

Nessun problema è stato riscontrato durante l’installazione standard.

17.2. Note di post-installazione

Dopo l’installazione, non ho potuto creare il database SAMPLE, né, peraltro qualsiasi altro database. DB2 ha restituito questo strano errore:

SQL0440N No authorized routine named RTRIM of
type "FUNCTION" having compatible arguments was found

Ho allora fatto un reboot e mi sono connesso nuovamente come root, ho poi aperto una sessione di terminale:

su - db2inst1
db2sampl

e infine la creazione del database SAMPLE è avvenuta come ci si aspettava. Dopo di ché, mi sono disconnesso come root, mi sono ricollegato come db2inst1 e tutti i test di DB2 sono stati eseguiti con successo.

Se volete abilitare la connessione dall’esterno al vostro server DB2, dovete aprire le porte 523 e ogni servizio d’istanza di DB2 (usate db2 get dbm cfg | grep SVCENAME per ottenere i nomi dei servizi e controllate in /etc/services per i valori delle porte corrispondenti) sul vostro firewall.

18. Installare il DB2 Information Center

Il DB2 Information Center fornisce la documentazione di prodotto di DB2 dentro un sistema di aiuto basato su Eclipse, e fornisce un modo conveniente per cercare e usare la documentazione di DB2.

18.1. Installare localmete l’Information Center

Per cominciare, montate il CD di DB2 Information Center nel lettore del vostro sistema, o se avete scaricato i file compressi dal sito web di Express-C, espandete il tarball contenente i programmi di utilità per l’installazione.

Posizionatevi nella directory base (doce/disk1/) ed eseguite il programma di utilità db2setup. Questo lancerà il wizard d’impostazione di DB2. Potete usare gli altri metodi d’installazione, ma siccome l’installazione via GUI imposta e configura tutto per voi, è il metodo che io raccomando.

Passi d’installazione:

1. Selezionate l’opzione "Install a Product" dal pannello iniziale, cliccate poi il bottone "Install New" nel pannello principale.

2. Leggete la descrizione e premete "Next".

3. Leggete l’accordo di licenza, e se siete d’accordo, selezionate "Accept" e cliccate "Next".

4. Per default, lo script d’installazione installerà Information Center localmente e genererà un file delle risposte. La scelta spetta a voi, ma visto che stiamo facendo solo un’installazione locale, scegliete l’opzione "Install DB2 Information Center on this computer". Cliccate "Next".

5. Aggiungete qualsiasi ulteriore lingua che vogliate installare. L’inglese è installato automaticamente e non può essere deselezionato. Ogni ulteriore lingua aggiungerà tra i 5 e i 50 MB alle dimensioni dell’installazione. Cliccate "Next".

6. Il pannello successivo è quello dove le cose si fanno un po’ interessanti. Qui potete specificare il nome del servizio sotto il quale funzionerà l’Information Center. Verrà aggiunta una voce al file /etc/services per questo servizio. Probabilmente non avrete la necessità di cambiarla, a meno che non abbiate un altro servizio funzionante col nome di "db2icv91".

Inoltre, è in questo pannello che specificherete la porta di sistema usata dall’Information Center per fornire la documentazione. In modo predefinito, questa porta è la 51000.

Queste impostazioni cambieranno la configurazione per tutti i prodotti DB2 installati sul sistema locale, così che il loro sistema di aiuto userà i parametri che avete definito qui. Cliccate "Next".

7. Leggete il sommario di quello che verrà fatto, quindi cliccate "Finish" per lanciare l’installazione dei file

18.1.1. Note di post-installazione

Potete cambiare quale directory verrà usata dell’Information Center come directory temporanea di lavoro. Per farlo, modificate il parametro DB2_ECLIPSEIC_DATA nel file db2ic.conf che si trova nella directory /opt/ibm/db2ic/V9/cfg. La directory temporanea può trovarsi ovunque l’utente "bin" sia autorizzaro a scrivere.

Sempre in questo file potete cambiare la porta usata per l’Information Center, nel caso cambiaste idea successivamente a proposito di quella impostata durante l’installazione. Basta cambiare il parametro DB2_ECLIPSEIC_PORT immettendo il nuovo numero (dovrà essere comunque una porta al di sotto del massimo 65535).

Dopo aver fatto tutti i cambiamenti, fate un

/etc/init.d/db2icdv9 restart

per fare in modo che i cambiamenti vengano rilevati dall’Information Center (vedere sotto per maggiori dettagli sul daemon db2icd).

18.2. Il deamon di Information Center

Il deamon dell’Information Center viene impostato durante l’installazione e viene usato per lanciare il processo di sistema che esegue l’Information Center. Lo script che avvia il daemon, chiamato db2icdv9 è installato nella directory /etc/init.d/, e i link simbolici di avvio vengono aggiunti alle cartelle dei livelli di esecuzione /etc/init.d/rc.X/. Per default, il daemon viene avviato per i livelli di esecuzione 3 e 5. Potete modificare questi livelli di esecuzione con qualsiasi programma di utilità (chkconfig, ntsysv, o qualsiasi variante grafica dello stesso).

Ci sono 5 comandi che potete passare al daemon:

1. start — Avvia l’Information Center, usando i parametri di configurazione impostati nel file /opt/ibm/db2ic/V9/cfg/db2ic.conf .

2. stop — Ferma l’Information Center in esecuzione.

3. restart — Una combinazione di comandi che ferma e poi avvia nuovamente il daemon.

4. reload — Equivalente a restart.

5. status — Fornisce informazioni sul fatto che l’Information Center sia funzionante o meno, e, nel caso fosse funzionante, elenca gli ID di processo (PID) .

18.3. Accedere a un Information Center installato

Ci sono tre modi possibili per accedere al DB2 Information Center:

• Attraverso il sito web publib.boulder.ibm.com (questa è l’opzione di default attivata durante l’installazione di DB2)

• Attraverso una macchina che ospita il DB2 Information Center nell’Intranet della vostra organizzazione

• Attraverso un Information Center che è installato e impostato sulla vostra macchina locale

Potete configurare quale metodo di accesso verrà utilizzato durante l’installazione di DB2 (solo eseguendo un’installazione "Custom"), oppure in seguito nel pannello degli strumenti di configurazione (negli strumenti grafici), oppure dalla linea di comando.

Per effettuare il cambiamento usando lo strumento grafico (Control Center), aprite il menù Tools, selezionate Tools Settings, e poi la linguetta Documentation. Su questo pannello, potete specificare un URL e una porta per l’host su cui trovare un Information Center. Quando inserite un hostname, non aggiungete il prefisso "http://", o alcuna sottodirectory – inserite soltanto l’hostname, ed il codice interno farà il resto.

Per cambiare i punti di accesso a partire dalla linea di comando, eseguite questi comandi:

db2set DB2_DOCHOST=host_URL
db2set DB2_DOCPORT=host_port

dove host_URL è la posizione dell’hostname dell’Information Center. Questo potrebbe essere: mydocserver.myorg.net o localhost (per una installazione locale), e host_port è il numero della porta dove l’Information Center è stato installato.

Originariamente, queste impostazioni dell’ambiente DB2 non sono specificate, e in questo caso DB2 punta automaticamente alla pagina web http://publib.boulder.ibm.com/infocenter/db2help/.

Per invocare il DB2 Information Center dagli strumenti grafici, cliccate sull’icona "?" nella barra degli strumenti, su uno qualsiasi degli hiperlink o bottoni "Help", oppure selezionate uno qualsiasi degli elementi del menù "Help".

Per invocare il DB2 Information Center dalla linea di comando, emettere uno dei seguenti comandi:

• db2icdocs

• db2help

• db2ic

• db2cc -ic

19. Rimuovere DB2 Express-C

La disinstallazione di DB2 Express-C è un po’ più dettagliata rispetto al processo d’installazione. Sfortunatamente, ad oggi, non c’è uno strumento di tipo grafico per la disinstallazione, quale è invece disponibile per l’installazione. Seguite i passi qui sotto per eliminare completamente il software DB2 Express-C dal vostro sistema. Visto che i file dei dati si trovano nella home directory dell’utente dell’istanza, potete conservare i file del database non effettuando la rimozione del proprietario dell’istanza (l’ultimo passo).

1. Rimuovete il Database Administration Server. Usando l’utente proprietario di DAS (dasusr1 è quello predefinito), o attraverso il comando su - dasusr1 oppure connettendovi al sistema direttamente come l’utente di DAS, ed eseguendo il comando db2admin stop. Poi passate all’utente root, e lanciate il comando /opt/ibm/db2/V9.1/instance/dasdrop.

2. Rimuovere l’istanza di DB2. Usate l’utente proprietario dell’istanza (db2inst1 è quello di default), o attraverso il comando su - db2inst1 oppure connettendovi al sistema direttamente come utente d’istanza, ed eseguendo il comando db2stop. Poi, come root, rimuovete l’istanza eseguendo il comando /opt/ibm/db2/V9.1/instance/db2idrop db2_instance, dove db2_instance si riferisce al nome effettivo dell’istanza che volete cancellare (per esempio, /opt/ibm/db2/V9.1/instance/db2idrop db2inst1). Se volete verificare quale istanze siano presenti sul vostro sistema, eseguite il comando /opt/ibm/db2/V9.1/instance/db2ilist.

3. Rimuovere il software installato. Come root, eseguite il comando /opt/ibm/db2/V9.1/install/db2_deinstall -a. Questo eliminerà l’installazione db2 dal vostro sistema.

4. Se non avete più bisogno dei file del database di DB2 (che si trovano nella home directory del proprietario dell’istanza), potete rimuovere gli utenti che sono stati creati durante l’installazione di DB2 Express-C eseguendo questi comandi come root:

    userdel -r db2inst1
    userdel -r dasusr1
    userdel -r db2fenc1

(Se avete creato utenti con nomi diversi durante l’installazione, fate le necessarie sostituzioni.)

20. Usare DB2

Questa sezione vi dà le informazioni base di cui avete bisogno per cominciare a lavorare con DB2 Express-C su Linux. Include istruzioni su come lanciare comandi di DB2 e istruzioni SQL dalla linea dei comandi, oltre che i comandi di cui avete bisogno per avviare il DB2 Control Center e il DB2 Information Center. Per maggiori informazioni circa l’uso generale di DB2, potete cercare nei manuali DB2 e nell’Information Center.

20.1. DB2 Control Center

Per avviare il DB2 Control Center:

1. Assicuratevi di essere collegati alla vostra stazione di lavoro Linux usando o l’ID dell’utente del DB2 Administration Server (dasusr1 è quello di default) o l’ID utente dell’istanza DB2 (db2inst1 è quello di default). Se usate il comando su per passare a uno di questi utenti, assicuratevi di includere il parametro -l per inizializzare in maniera appropriata l’ambiente dell’utente.

2. Avviate il server X, se non è già avviato.

3. Avviate una sessione di terminale, o premete Alt + F2 per invocare il dialogo di Linux "Run Command".

4. Scrivete db2cc per avviare il DB2 Control Center.

La parte sinistra del DB2 Control Center fornisce una vista, basata sugli oggetti, degli oggetti del database che avete catalogato, ivi inclusi istanze e database DB2 su altri server DB2.

Un modo per aggiungere, modificare o cancellare gli oggetti del database è di cliccare con il pulsante destro sull’oggetto per visualizzare un menù contestuale.

20.2. DB2 Information Center

Come menzionato in precedenza, il nuovo DB2 Information Center è un sistema di presentazione della documentazione rinnovato che ora comprende i compiti, i concetti e i riferimenti alle informazioni necessarie per eseguire DB2 in modo appropriato. Può essere installato localmente, su server intranet o a cui si può accedere direttamente dal servizio online disponibile sul sito ibm.com.

Per avviare il DB2 Information Center:

1. Assicuratevi di essere collegati alla vostra stazione di lavoro Linux utilizzando o l’ID dell’utente del DB2 Administration Server (dasusr1 è quello predefinito) o l’ID dell’utente d’istanza DB2 (db2inst1 è quello di default). Se usate il comando su per passare a uno di questi utenti, assicuratevi di includere il parametro -l per inizializzare in maniera appropriata l’ambiente dell’utente.

2. Assicuratevi che il server X sia avviato, poiché l’Information Center richiede un browser Web.

3. Eseguite uno dei comandi di lancio:

• db2icdocs

• db2help

• db2ic

• db2cc -ic

In alternativa, potete anche lanciare l’Information Center dall’interno del Control Center (o da uno qualsiasi degli altri strumenti grafici), cliccando un elemento del menù "Help", ovvero cliccando sull’icona "?" (punto interrogativo).

Se non avete installato il DB2 Information Center, oppure non avete configurato i vostri strumenti per usare un server differente, allora questi comandi lanceranno il browser di default e vi porteranno direttamente al DB2 Information Center ospitato da IBM presso http://publib.boulder.ibm.com/infocenter/db2help/.

20.3. DB2 command line processor (CLP)

Se siete collegati alla vostra stazione di lavoro Linux usando l’ID utente del DB2 Administration Server o l’ID utente dell’istanza di DB2, potete eseguire comandi DB2 e istruzioni SQL dalla linea di comando.

Se è la prima volta che usate DB2, suggerirei di iniziare creando il database di esempio di DB2. Il database di esempio è usato in tutta la documentazione di DB2 ed è richiesto dalla maggior parte delle applicazioni di esempio.

Per creare il database di esempio, potete selezionare l’opzione Create the SAMPLE database dal DB2 First Steps launchpad, oppure lanciare il comando db2sampl dalla linea di comando.

Prima di poter eseguire un’istruzione SQL dovete collegarvi a un database. Per collegarvi a un database scrivete il comando:

db2 CONNECT TO database USER userID USING password

Per collegarvi a un database in modo che DB2 vi richieda una password, scrivete il comando:

db2 CONNECT TO database USER userID

Per collegarvi a un database usando l’ID dell’utente predefinito, scrivete il comando:

db2 CONNECT TO database

Una volta che vi siete collegati a un database, potete eseguire istruzioni SQL o comandi DB2 sul database. Per esempio, per selezionare tutte le righe dalla tabella EMPLOYEE nel database SAMPLE, inserite questo comando:

db2 "SELECT * FROM employee"

Potete evitare di scrivere db2 come prefisso ad ogni istruzione SQL e comando DB2 lanciando i comandi per mezzo del Command Line Processor (CLP). Per avviare il CLP, scrivete soltanto il comando db2 dal terminale a linea di comando di Linux. Il DB2 fornirà il seguente messaggio:

You can issue database manager commands and SQL statements
from the command prompt. For example:
  db2 => connect to sample
  db2 => bind sample.bnd
For general help, type: ?.
For command help, type: ? command, where command can be
the first few keywords of a database manager command. For example:
? CATALOG DATABASE for help on the CATALOG DATABASE command
? CATALOG           for help on all of the CATALOG commands.
To exit db2 interactive mode, type QUIT at the command prompt. Outside
interactive mode, all commands must be prefixed with 'db2'.
To list the current command option settings, type LIST COMMAND OPTIONS.
For more detailed help, refer to the Online Reference Manual.
db2 =>

Alcuni utenti preferiscono evitare il CLP perché impedisce l’uso della storia dei comandi, che è una caratteristica della shell.

Alcuni utenti affermano che l’uso del CLP all’interno di una shell Emacs dà loro il meglio dei due mondi: ottengono storia della linea di comando e non devono usare comandi di escape che contengano parecchi punti di domanda e parentesi; le vostre esperienze possono essere differenti.

21. Installazione e piano delle operazioni di prova

21.1. Test dell’installazione di DB2 Express-C

1. Collegatevi come root (o ottenete un accesso come root attraverso un terminale se una registrazione direttamente come root non è possibile)

2. Montate il DVD (se state installando dalla serie di DVD Discovery), o scaricate l’appropriata immagine compressa (tar.gz file) dal sito di distribuzione DB2 Express-C

3. Copiate il file con l’immagine compressa nella directory /tmp

4. Estraete i file dell’immagine compressa, utilizzando lo strumento grafico Ark o utilizzando i comandi di console tar zxvf db2exc_91_LNX_x86.tar.gz

5. All’interno della cartella /tmp , cambiate directory posizionandovi in exp/disk1i ed eseguite il comando db2setup:

  ./db2setup

6. Nel Launchpad d’impostazione di DB2, scegliete Install a Product

7. Scegliete Install New

8. Cliccate "Next"

9. Verificate la licenza e cambiate il bottone radio per Accept, poi scegliete "Next" per continuare l’installazione

10. Scegliete un’installazione Typical e cliccate "Next"

11. Verificate il percorso d’installazione, o cambiatelo in modo che indichi un punto del vostro sistema che abbia almeno 470 MB liberi, cliccate "Next"

12. Impostate l’account del proprietario del DAS (DB2 Administration Server). Potete usare un utente già esistente, oppure impostarne uno nuovo (l’utente predefinito è dasusr1). Cliccate "Next"

13. Create un’istanza DB2. Cliccate "Next"

14. Impostate l’account del proprietario dell’istanza DB2. Ancora, potete usare un utente esistente, o impostarne uno nuovo (il proprietario dell’istanza di default è db2inst1). Cliccate "Next"

15. Impostate l’account dell’utente limitato di DB2. Stessa cosa di prima, usate un utente esistente o definitene uno nuovo. Cliccate "Next"

16. Cliccate "Finish" per iniziare l’installazione

17. Se ci fossero problemi con l’installazione, saranno indicati nel log dell’installazione (il log si trova

  anche nella directory /tmp come db2setup.log e db2setup.err)

21.2. Test di funzionamento di DB2 Express-C

1. Fare il log in come il proprietario d’istanza DB2 (db2inst1 è quello di default)

2. Aprite un terminale ed eseguite ’db2sampl’ per creare il database SAMPLE

IBM DB2 Express-C per Linux HOWTO

3. Test dei comandi da terminale:

a. db2 connect to sample b. db2 ’select * from dept’

4. Test DB2 Control Center:

a. Aprite il control center con il comando ’db2cc’ b. Selezionate la vista "Advanced" c. Verificate se il database SAMPLE è presente sotto la linguetta "All databases" d. Guardate i contenuti di una delle tabelle e delle viste del database SAMPLE (per esempio,

vphone)

5. Create il database TOOLS:

db2 'create tools catalog TOOLS create new database TOOLSDB'

6. Lanciate il DB2 Task Center:

a. Create un compito che esegua una semplice interrogazione come "connect to sample; select

tabname from syscat.tables; connect reset;", pianificatelo per farlo eseguire ora b. Cliccate su "show results", non dovrebbero esserci errori

7. Lanciate DB2 Journal: dovreste essere in grado di vedere dal Journal i risultati del compito che avete eseguito nel task center.

8. Test del DB2 Configuration Assistant a. Avviate il Configuration Assistant dal Control Center, con db2ca b. Dovreste vedere il database SAMPLE elencato, se no, cliccate View, poi Refresh. c. Cliccate con il tasto destro sul database SAMPLE, scegliete Change Database, poi nel passo 4

del wizard, registrate il database come una sorgente CLI/ODBC, e catalogatelo come sorgente di dati di sistema. Cliccate Finish per confermare i cambiamenti

d. Cliccate con il tasto destro ancora sul database SAMPLE, e cliccate su Test Connection. Selezionate tutti i tipi (Standard (ODBC), CLI, JDBC), poi fornite uno userid e una password, e cliccate su Test Connection. Assicuratevi che tutti i test siano eseguiti con successo.

9. Test dello strumento di trace di DB2: db2trc on -- verificate la risposta positiva, poi eseguite db2trc off

10. Test dello strumento di determinazione dei problemi DB2: db2pd -db sample > sample.txt (esaminate l’output per vedere se ci sono errori)

11. Test della licenza DB2: db2licm -l dovrebbe restituire:

Product name:          "DB2 Express Edition"
License type:          "Unwarranted"
Expiry date:           "Permanent"
Product identifier:   "db2exp"
Version information:  "9.1"
Max number of CPUs:   "2"

12. Test db2dart:

  db2 force applications all
  db2dart sample

(dovrebbe notificare che l’elaborazione di DB2DART si è conclusa con successo)

13. Test dello strumento db2look: db2look -d sample -e > sample.ddl (dovrebbe concludersi con successo)

14. Test di connessioni remote:

a. Create connessioni attraverso i prompt dei comandi sul sistema client di DB2 remoto:

     db2 catalog tcpip node test remote computername server 50001
     db2 catalog db sample at node test

b. Dalla macchina remota:

     db2 connect to sample
     db2 "select * from dept"

15. Eseguire un reboot e riprovate a eseguire una connessione remota (per verificare che l’istanza di DB2 si riavvii automaticamente e che qualsiasi cambiamento specificato al firewall persista)

22. Risorse

Questa sezione elenca ulteriori risorse disponibili per ottenere informazioni sull’uso di DB2 Express-C 9 su Linux:

22.1. Forum e Newsgroup

• IBM developerWorks forums

http://www.ibm.com/developerworks/forums/db2_forums.jsp

Questa pagina elenca i forum ospitati presso il sito web developerWorks. Molti di essi sono mirror dei normali newsgroup di Usenet dedicati a DB2.

• DB2 Express-C developerWorks forum

http://www.ibm.com/developerworks/forums/dw_forum.jsp?forum=805&cat=81

Il sito principale per domande di supporto su DB2 Express-C. Tutte le funzionalità di supporto a versioni di Express-C non ufficialmente supportate provengono da questo forum comunitario. Molti sviluppatori IBM (ivi incluso il team di DB2 Express-C) controllano e partecipano regolarmente a questo forum.

IBM DB2 Express-C per Linux HOWTO

• DB2 9 developerWorks forum http://www.ibm.com/developerworks/forums/dw_forum.jsp?forum=842&cat=81 Il forum per le domande generali di DB2 9. Molti degli sviluppatori di DB2 regolarmente controllano e partecipano a questo forum.

• comp.databases.ibm-db2 Copre l’uso di DB2 su tutte le piattaforme, ivi incluse Linux e UNIX, Windows, z/OS, iSeries, e pSeries. Questo forum è molto attivo.

• ibm.software.db2.udb Simile a comp.databases.ibm-db2, ma affronta solo domande specifiche relative al prodotto DB2 Universal Database.

22.2. Siti Web

• DB2 Universal Database per Linux http://www.ibm.com/software/data/db2/linux (http://www.ibm.com/software/data/db2/linux/) Il portale per le informazioni relative a DB2 su Linux.

• DB2 Express-C http://www.ibm.com/software/data/db2/express (http://www.ibm.com/software/data/db2/express/) Portale Web per i prodotti DB2 Express-C, inclusa la distribuzione del software DB2 Express-C e dei relativi programmi di utilità.

• DB2 Information Center http://publib.boulder.ibm.com/infocenter/db2luw/v9/index.jsp (http://publib.boulder.ibm.com/infocenter/db2luw/v9/index.jsp)

Il DB2 Information Center è la sorgente più aggiornata della documentazione ufficiale di DB2 in 29 lingue diverse. Impostate la vostra preferenza sulla lingua da utilizzare nel vostro browser e il sito vi mostrerà la versione tradotta di qualsiasi pagina data, se disponibile, o di quella corrispondente in inglese, se non disponibile nella lingua scelta. L’accesso alle informazioni è offerto attraverso ricerca, un’albero di navigazione o un esauriente indice generale (http://publib.boulder.ibm.com/infocenter/db2luw/v9/topic/com.ibm.db2.udb.doc/doc/r0024231.htm).

• Sito di convalida di DB2 su Linux

http://www.ibm.com/software/data/db2/linux/validate/ (http://www.ibm.com/software/data/db2/linux/validate/)

Informazioni riguardanti le distribuzioni Linux consigliate e convalidate da IBM per la versione attuale di DB2.

• DB2 Online Support

http://www.ibm.com/software/data/db2/udb/support.html

Il canale ufficiale di supporto per DB2 per Linux, UNIX e Windows. Contiene informazioni e indicazioni riguardanti lo scarico di Fixpaks, APAR, Technotes, DB2 Flashes, e altro ancora.

• DB2 PDF Manuali

http://www-1.ibm.com/support/docview.wss?rs=71&uid=swg27009553 (http://www-1.ibm.com/support/docview.wss?rs=71&uid=swg27009552)

Se vi piacciono le informazioni in pezzi di dimensioni ragguardevoli, questo è il posto dove ottenere i manuali di DB2 in formato PDF.

• Libro bianco su DB2 per Linux

http://www.ibm.com/software/data/db2/linux/papers.html

I "white paper" tipicamente forniscono panoramiche e introduzioni a nuove teconologie e nuovi rilasci di un prodotto.

• DB2 Magazine

http://www.db2mag.com

IBM DB2 Express-C per Linux HOWTO

Questo sito Web è la versione online di DB2 Magazine, pubblica articoli circa l’uso di DB2 su Linux e altre piattaforme. Potete anche iscrivervi gratuitamente alla versione cartacea della rivista.

• IBM developerWorks per DB2 http://www.ibm.com/developerworks/db2/ Una grande risorsa per tutorial, risorse di apprendimento, aiuti, e consigli per migliorare DB2 e per sviluppare applicazioni basate su DB2.

• International DB2 Users Group (IDUG) http://www.idug.org (http://www.idug.org/wps/portal/idug) IDUG tiene un certo numero di conferenze internazionali su DB2 ed ha gruppi di utenti regionali. Mentre IDUG si è tradizionalmente focalizzato su DB2 per z/OS e iSeries, tende a includere sempre più informazioni riguardanti DB2 per Linux, UNIX, e Windows. Il sito web di IDUG comprende forum di discussione online e link ad altre risorse DB2.

• Red Hat Linux http://www.redhat.com Il sito di distribuzione Linux Red Hat. Vedere anche http://www.redhat.com/rhn/(la Red Hat Network) per maggiori informazioni sugli aggiornamenti di sistema e informazioni sul kernel.

• SUSE Linux http://www.novell.com/linux/ Ora proprietà di Novell, questo sito fornisce la distribuzione Linux SUSE . Vedere anche http://support.novell.com/patches.html per maggiori informazioni sugli aggiornamenti e per informazioni sul kernel.

• Ubuntu Linux

IBM DB2 Express-C per Linux HOWTO

http://www.ubuntu.com/ Sito di distribuzione Linux Ubuntu. Ubuntu è un sistema operativo basato su Linux sviluppato su base comunitaria che sta emergendo rapidamente come la distribuzione favorita particolarmente tra i nuovi utilizzatori.

• Progetto Fedora http://fedoraproject.org/ Sito di distribuzione Linux del progetto Fedora. Il progetto Fedora è un insieme di progetti sponsorizzato da Red Hat e sviluppato in collaborazione fra la comunità open source e gli ingegneri di Red Hat.

• Mandriva Linux http://www.mandriva.com/ Sito di distribuzione di Linux Mandriva. Il prodotto chiave di Mandriva è la distribuzione di Linux Mandriva. Questa è disponibile nelle versioni per utenti individuali e per aziende. La società fornisce e mantiene anche una versione completamente gratuita chiamata Free Mandriva.

23. GNU Free Documentation License

Copyright (C) 2000,2001,2002 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.

23.1. PREAMBLE

The purpose of this License is to make a manual, textbook, or other functional and useful document "free" in the sense of freedom: to assure everyone the effective freedom to copy and redistribute it, with or without modifying it, either commercially or noncommercially. Secondarily, this License preserves for the author and publisher a way to get credit for their work, while not being considered responsible for modifications made by others.

This License is a kind of "copyleft", which means that derivative works of the document must themselves be free in the same sense. It complements the GNU General Public License, which is a copyleft license designed for free software.

We have designed this License in order to use it for manuals for free software, because free software needs free documentation: a free program should come with manuals providing the same freedoms that the software does. But this License is not limited to software manuals; it can be used for any textual work, regardless of subject matter or whether it is published as a printed book. We recommend this License principally for works whose purpose is instruction or reference.

23.2. APPLICABILITY AND DEFINITIONS

This License applies to any manual or other work, in any medium, that contains a notice placed by the copyright holder saying it can be distributed under the terms of this License. Such a notice grants a world-wide, royalty-free license, unlimited in duration, to use that work under the conditions stated herein. The "Document", below, refers to any such manual or work. Any member of the public is a licensee, and is addressed as "you". You accept the license if you copy, modify or distribute the work in a way requiring permission under copyright law.

A "Modified Version" of the Document means any work containing the Document or a portion of it, either copied verbatim, or with modifications and/or translated into another language.

A "Secondary Section" is a named appendix or a front-matter section of the Document that deals exclusively with the relationship of the publishers or authors of the Document to the Document’s overall subject (or to related matters) and contains nothing that could fall directly within that overall subject. (Thus, if the Document is in part a textbook of mathematics, a Secondary Section may not explain any mathematics.) The relationship could be a matter of historical connection with the subject or with related matters, or of legal, commercial, philosophical, ethical or political position regarding them.

The "Invariant Sections" are certain Secondary Sections whose titles are designated, as being those of Invariant Sections, in the notice that says that the Document is released under this License. If a section does not fit the above definition of Secondary then it is not allowed to be designated as Invariant. The Document may contain zero Invariant Sections. If the Document does not identify any Invariant Sections then there are none.

The "Cover Texts" are certain short passages of text that are listed, as Front-Cover Texts or Back-Cover Texts, in the notice that says that the Document is released under this License. A Front-Cover Text may be at most 5 words, and a Back-Cover Text may be at most 25 words.

A "Transparent" copy of the Document means a machine-readable copy, represented in a format whose specification is available to the general public, that is suitable for revising the document straightforwardly with generic text editors or (for images composed of pixels) generic paint programs or (for drawings) some widely available drawing editor, and that is suitable for input to text formatters or for automatic translation to a variety of formats suitable for input to text formatters. A copy made in an otherwise Transparent file format whose markup, or absence of markup, has been arranged to thwart or discourage subsequent modification by readers is not Transparent. An image format is not Transparent if used for any substantial amount of text. A copy that is not "Transparent" is called "Opaque".

Examples of suitable formats for Transparent copies include plain ASCII without markup, Texinfo input format, LaTeX input format, SGML or XML using a publicly available DTD, and standard-conforming simple HTML, PostScript or PDF designed for human modification. Examples of transparent image formats include PNG, XCF and JPG. Opaque formats include proprietary formats that can be read and edited only by proprietary word processors, SGML or XML for which the DTD and/or processing tools are not generally available, and the machine-generated HTML, PostScript or PDF produced by some word processors for output purposes only.

The "Title Page" means, for a printed book, the title page itself, plus such following pages as are needed to hold, legibly, the material this License requires to appear in the title page. For works in formats which do not have any title page as such, "Title Page" means the text near the most prominent appearance of the work’s title, preceding the beginning of the body of the text.

A section "Entitled XYZ" means a named subunit of the Document whose title either is precisely XYZ or contains XYZ in parentheses following text that translates XYZ in another language. (Here XYZ stands for a specific section name mentioned below, such as "Acknowledgements", "Dedications", "Endorsements", or "History".) To "Preserve the Title" of such a section when you modify the Document means that it remains a section "Entitled XYZ" according to this definition.

The Document may include Warranty Disclaimers next to the notice which states that this License applies to the Document. These Warranty Disclaimers are considered to be included by reference in this License, but only as regards disclaiming warranties: any other implication that these Warranty Disclaimers may have is void and has no effect on the meaning of this License.

23.3. VERBATIM COPYING

You may copy and distribute the Document in any medium, either commercially or noncommercially, provided that this License, the copyright notices, and the license notice saying this License applies to the Document are reproduced in all copies, and that you add no other conditions whatsoever to those of this License. You may not use technical measures to obstruct or control the reading or further copying of the copies you make or distribute. However, you may accept compensation in exchange for copies. If you distribute a large enough number of copies you must also follow the conditions in section 3.

You may also lend copies, under the same conditions stated above, and you may publicly display copies.

23.4. COPYING IN QUANTITY

If you publish printed copies (or copies in media that commonly have printed covers) of the Document, numbering more than 100, and the Document’s license notice requires Cover Texts, you must enclose the copies in covers that carry, clearly and legibly, all these Cover Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on the back cover. Both covers must also clearly and legibly identify you as the publisher of these copies. The front cover must present the full title with all words of the title equally prominent and visible. You may add other material on the covers in addition. Copying with changes limited to the covers, as long as they preserve the title of the Document and satisfy these conditions, can be treated as verbatim copying in other respects.

If the required texts for either cover are too voluminous to fit legibly, you should put the first ones listed (as many as fit reasonably) on the actual cover, and continue the rest onto adjacent pages.

If you publish or distribute Opaque copies of the Document numbering more than 100, you must either include a machine-readable Transparent copy along with each Opaque copy, or state in or with each Opaque copy a computer-network location from which the general network-using public has access to download using public-standard network protocols a complete Transparent copy of the Document, free of added material. If you use the latter option, you must take reasonably prudent steps, when you begin distribution of Opaque copies in quantity, to ensure that this Transparent copy will remain thus accessible at the stated location until at least one year after the last time you distribute an Opaque copy (directly or through your agents or retailers) of that edition to the public.

It is requested, but not required, that you contact the authors of the Document well before redistributing any large number of copies, to give them a chance to provide you with an updated version of the Document.

23.5. MODIFICATIONS

You may copy and distribute a Modified Version of the Document under the conditions of sections 2 and 3 above, provided that you release the Modified Version under precisely this License, with the Modified Version filling the role of the Document, thus licensing distribution and modification of the Modified Version to whoever possesses a copy of it. In addition, you must do these things in the Modified Version:

1. Use in the Title Page (and on the covers, if any) a title distinct from that of the Document, and from those of previous versions (which should, if there were any, be listed in the History section of the Document). You may use the same title as a previous version if the original publisher of that version gives permission.

2. List on the Title Page, as authors, one or more persons or entities responsible for authorship of the modifications in the Modified Version, together with at least five of the principal authors of the Document (all of its principal authors, if it has fewer than five), unless they release you from this requirement.

3. State on the Title page the name of the publisher of the Modified Version, as the publisher.

4. Preserve all the copyright notices of the Document.

5. Add an appropriate copyright notice for your modifications adjacent to the other copyright notices.

6. Include, immediately after the copyright notices, a license notice giving the public permission to use the Modified Version under the terms of this License, in the form shown in the Addendum below.

7. Preserve in that license notice the full lists of Invariant Sections and required Cover Texts given in the Document’s license notice.

8. Include an unaltered copy of this License.

9. Preserve the section Entitled "History", Preserve its Title, and add to it an item stating at least the title, year, new authors, and publisher of the Modified Version as given on the Title Page. If there is no section Entitled "History" in the Document, create one stating the title, year, authors, and publisher of the Document as given on its Title Page, then add an item describing the Modified Version as stated in the previous sentence.

10. Preserve the network location, if any, given in the Document for public access to a Transparent copy of the Document, and likewise the network locations given in the Document for previous versions it was based on. These may be placed in the "History" section. You may omit a network location for a work that was published at least four years before the Document itself, or if the original publisher of the version it refers to gives permission.

11. For any section Entitled "Acknowledgements" or "Dedications", Preserve the Title of the section, and preserve in the section all the substance and tone of each of the contributor acknowledgements and/or dedications given therein.

12. Preserve all the Invariant Sections of the Document, unaltered in their text and in their titles. Section numbers or the equivalent are not considered part of the section titles.

13. Delete any section Entitled "Endorsements". Such a section may not be included in the Modified Version.

14. Do not retitle any existing section to be Entitled "Endorsements" or to conflict in title with any Invariant Section.

15. Preserve any Warranty Disclaimers.

If the Modified Version includes new front-matter sections or appendices that qualify as Secondary Sections and contain no material copied from the Document, you may at your option designate some or all of these sections as invariant. To do this, add their titles to the list of Invariant Sections in the Modified Version’s license notice. These titles must be distinct from any other section titles.

You may add a section Entitled "Endorsements", provided it contains nothing but endorsements of your Modified Version by various parties--for example, statements of peer review or that the text has been approved by an organization as the authoritative definition of a standard.

You may add a passage of up to five words as a Front-Cover Text, and a passage of up to 25 words as a Back-Cover Text, to the end of the list of Cover Texts in the Modified Version. Only one passage of Front-Cover Text and one of Back-Cover Text may be added by (or through arrangements made by) any one entity. If the Document already includes a cover text for the same cover, previously added by you or by arrangement made by the same entity you are acting on behalf of, you may not add another; but you may replace the old one, on explicit permission from the previous publisher that added the old one.

The author(s) and publisher(s) of the Document do not by this License give permission to use their names for publicity for or to assert or imply endorsement of any Modified Version.

23.6. COMBINING DOCUMENTS

You may combine the Document with other documents released under this License, under the terms defined in section 4 above for modified versions, provided that you include in the combination all of the Invariant Sections of all of the original documents, unmodified, and list them all as Invariant Sections of your combined work in its license notice, and that you preserve all their Warranty Disclaimers.

The combined work need only contain one copy of this License, and multiple identical Invariant Sections may be replaced with a single copy. If there are multiple Invariant Sections with the same name but different contents, make the title of each such section unique by adding at the end of it, in parentheses, the name of the original author or publisher of that section if known, or else a unique number. Make the same adjustment to the section titles in the list of Invariant Sections in the license notice of the combined work.

In the combination, you must combine any sections Entitled "History" in the various original documents, forming one section Entitled "History"; likewise combine any sections Entitled "Acknowledgements", and any sections Entitled "Dedications". You must delete all sections Entitled "Endorsements".

23.7. COLLECTIONS OF DOCUMENTS

You may make a collection consisting of the Document and other documents released under this License, and replace the individual copies of this License in the various documents with a single copy that is included in the collection, provided that you follow the rules of this License for verbatim copying of each of the documents in all other respects.

You may extract a single document from such a collection, and distribute it individually under this License, provided you insert a copy of this License into the extracted document, and follow this License in all other respects regarding verbatim copying of that document.

23.8. AGGREGATION WITH INDEPENDENT WORKS

A compilation of the Document or its derivatives with other separate and independent documents or works, in or on a volume of a storage or distribution medium, is called an "aggregate" if the copyright resulting from the compilation is not used to limit the legal rights of the compilation’s users beyond what the individual works permit. When the Document is included in an aggregate, this License does not apply to the other works in the aggregate which are not themselves derivative works of the Document.

If the Cover Text requirement of section 3 is applicable to these copies of the Document, then if the Document is less than one half of the entire aggregate, the Document’s Cover Texts may be placed on covers that bracket the Document within the aggregate, or the electronic equivalent of covers if the Document is in electronic form. Otherwise they must appear on printed covers that bracket the whole aggregate.

23.9. TRANSLATION

Translation is considered a kind of modification, so you may distribute translations of the Document under the terms of section 4. Replacing Invariant Sections with translations requires special permission from their copyright holders, but you may include translations of some or all Invariant Sections in addition to the original versions of these Invariant Sections. You may include a translation of this License, and all the license notices in the Document, and any Warranty Disclaimers, provided that you also include the original English version of this License and the original versions of those notices and disclaimers. In case of a disagreement between the translation and the original version of this License or a notice or disclaimer, the original version will prevail.

If a section in the Document is Entitled "Acknowledgements", "Dedications", or "History", the requirement (section 4) to Preserve its Title (section 1) will typically require changing the actual title.

23.10. TERMINATION

You may not copy, modify, sublicense, or distribute the Document except as expressly provided for under this License. Any other attempt to copy, modify, sublicense or distribute the Document is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.

23.11. FUTURE REVISIONS OF THIS LICENSE

The Free Software Foundation may publish new, revised versions of the GNU Free Documentation License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. See http://www.gnu.org/copyleft/.

Each version of the License is given a distinguishing version number. If the Document specifies that a particular numbered version of this License "or any laterversion" applies to it, you have the option of following the terms and conditions either of that specified version or of any later version that has been published (not as a draft) by the Free Software Foundation. If the Document does not specify a version number of this License, you may choose any version ever published (not as a draft) by the Free Software Foundation.

24. Trademarks

DB2, IBM, pureXML, iSeries, pSeries, zSeries, and z/OS are trademarks or registered trademarks of International Business Machines Corporation in the United States, other countries, or both.

Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.

Windows is a trademark of Microsoft Corporation in the United States, other countries, or both.

Intel and Pentium are trademarks of Intel Corporation in the United States, other countries, or both.

UNIX is a registered trademark of The Open Group in the United States and other countries.

Linux is a trademark of Linus Torvalds in the United States, other countries, or both.

Other company, product, or service names may be trademarks or service marks of others.