Installation et configuration de DB2 10.1 sous UBUNTU 12.10

Apres Oracle et Sybase, on continu notre exploration des SGBD les plus utilisés dans les SI des grosses entreprises, on s’intéressera aujourd’hui a IBM DB2, qui selon les études de part de marché talonne Oracle. Pour plus de théorie sur DB2 et son histoire.

On va installer DB2 sur une machine Ubunutu 64 bits, la version gratuite est la DB2 express, vous pouvez la télécharger a partir du site d’IBM.

Une fois l’archive récupéré, dezipper la :

tar xvfz db2_v1012_linuxx64_expc.tar.gz
cd expc/

Pour vérifier que vous avez tout ce qu’il faut pour installer DB2 sur votre machine, lancer la commande suivante :

./db2prereqcheck # Verifier les dependances

Apres vous pouvez lancer la procédure d’installation, soit en mode graphique :

./db2setup

Ou en mode console :

./db2_install

L’installation se passe normalement sans grand problème. Normalement 3 users seront crées par la procédure d’installation :

  • Utilisateur db2das dont le groupe est : db2dasgrp.
  • Utilisateur db2inst1 dont le groupe est : db2inst1grp.
  • Utilisateur db2fenc1 dont le groupe est : db2fenc1grp.

Notez bien les mots de passes de ces users, vous en aurez certainement besoin.

Le service DB2 écoute par défaut sur le port 50000, vous pouvez voir ça dans le fichier /etc/services, dans mon cas j’ai les deux lignes suivantes :

tocdb2inst1 50000/tcp
txtch_db2inst1 55000/tcp

Ce que vous pouvez confirmer (en tant que root) par la commande :

root@tcoServer:~# lsof -i :50000
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
db2sysc 23901 db2inst1 3u IPv4 582386 0t0 TCP *:tocdb2inst1 (LISTEN)

Apres l’installation, switcher vers le user db2inst1 :

su - db2inst1

Vérifier bien que vous avez ces répertoires : /home/db2inst1/sqllib/bin, /home/db2inst1/sqllib/adm, /home/db2inst1/sqllib/misc, /home/db2inst1/sqllib/db2tss/bin dans votre $PATH et lancer la commande :

db2fs

Normalement a ce stade tout fonctionne et vous avez une instance de DB2 qui est lancé sur votre machine, voici quelques commandes pour la phase apprentissage :

  • Pour lancer et stopper DB2 (utilisateur db2inst) :
db2start # Lancer
db2stop # Stopper

La commande db2 est utilisée pour les interactions avec la base DB2.

  • Pour créer une base :
db2 create database dbtest
  • Pour supprimer une base :
db2 drop database dbtest
  • Se connecter a une base (par exemple la base SAMPLE installée par défaut pour faciliter la phase d’apprentissage) :
db2inst1@tcoServer:~$ db2
(c) Copyright IBM Corporation 1993,2007
Interpréteur de commandes de DB2 Client 10.1.2

Vous pouvez lancer les commandes du gestionnaire de bases de données et les
instructions SQL à partir de l'invite db2 =>. Exemple :
db2 => connect to sample
db2 => bind sample.bnd

Pour obtenir l'aide générale, entrez : ?.
Pour obtenir de l'aide sur les commandes, entrez : ? commande, où commande
est le ou les premiers mots clés d'une commande du gestionnaire de bases de
données. Exemple :
? CATALOG DATABASE pour obtenir une aide sur la commande CATALOG DATABASE.
? CATALOG pour obtenir une aide sur toutes les commandes CATALOG.

Pour quitter le mode interactif db2, entrez QUIT à l'invite. En dehors du mode
interactif, toutes les commandes doivent être précédées de 'db2'.
Pour afficher la définition en cours des options de commande, entrez LIST
COMMAND OPTIONS.

Pour obtenir une aide plus détaillée, consultez le manuel de référence en
ligne.

db2_command

  • Connection a la base SAMPLE :
connect to sample

Informations de connexion à la base de données

Serveur de base de données = DB2/LINUXX8664 10.1.2
ID utilisateur SQL = DB2INST1
Alias local de la base de données = SAMPLE

db2_connect_command

  • Un select sur une table :
select * from employee

EMPNO  FIRSTNME     MIDINIT LASTNAME        WORKDEPT PHONENO HIREDATE   JOB      EDLEVEL SEX BIRTHDATE  SALARY      BONUS       COMM
------ ------------ ------- --------------- -------- ------- ---------- -------- ------- --- ---------- ----------- ----------- -----------
000010 CHRISTINE    I       HAAS            A00      3978    01.01.1995 PRES          18 F   24.08.1963   152750,00     1000,00     4220,00
000020 MICHAEL      L       THOMPSON        B01      3476    10.10.2003 MANAGER       18 M   02.02.1978    94250,00      800,00     3300,00
000030 SALLY        A       KWAN            C01      4738    05.04.2005 MANAGER       20 F   11.05.1971    98250,00      800,00     3060,00
000050 JOHN         B       GEYER           E01      6789    17.08.1979 MANAGER       16 M   15.09.1955    80175,00      800,00     3214,00
000060 IRVING       F       STERN           D11      6423    14.09.2003 MANAGER       16 M   07.07.1975    72250,00      500,00     2580,00
000070 EVA          D       PULASKI         D21      7831    30.09.2005 MANAGER       16 F   26.05.2003    96170,00      700,00     2893,00
000090 EILEEN       W       HENDERSON       E11      5498    15.08.2000 MANAGER       16 F   15.05.1971    89750,00      600,00     2380,00
000100 THEODORE     Q       SPENSER         E21      0972    19.06.2000 MANAGER       14 M   18.12.1980    86150,00      500,00     2092,00
000110 VINCENZO     G       LUCCHESSI       A00      3490    16.05.1988 SALESREP      19 M   05.11.1959    66500,00      900,00     3720,00
000120 SEAN                 O'CONNELL       A00      2167    05.12.1993 CLERK         14 M   18.10.1972    49250,00      600,00     2340,00
000130 DELORES      M       QUINTANA        C01      4578    28.07.2001 ANALYST       16 F   15.09.1955    73800,00      500,00     1904,00
000140 HEATHER      A       NICHOLLS        C01      1793    15.12.2006 ANALYST       18 F   19.01.1976    68420,00      600,00     2274,00
000150 BRUCE                ADAMSON         D11      4510    12.02.2002 DESIGNER      16 M   17.05.1977    55280,00      500,00     2022,00
000160 ELIZABETH    R       PIANKA          D11      3782    11.10.2006 DESIGNER      17 F   12.04.1980    62250,00      400,00     1780,00
000170 MASATOSHI    J       YOSHIMURA       D11      2890    15.09.1999 DESIGNER      16 M   05.01.1981    44680,00      500,00     1974,00
000180 MARILYN      S       SCOUTTEN        D11      1682    07.07.2003 DESIGNER      17 F   21.02.1979    51340,00      500,00     1707,00
000190 JAMES        H       WALKER          D11      2986    26.07.2004 DESIGNER      16 M   25.06.1982    50450,00      400,00     1636,00
000200 DAVID                BROWN           D11      4501    03.03.2002 DESIGNER      16 M   29.05.1971    57740,00      600,00     2217,00
000210 WILLIAM      T       JONES           D11      0942    11.04.1998 DESIGNER      17 M   23.02.2003    68270,00      400,00     1462,00
000220 JENNIFER     K       LUTZ            D11      0672    29.08.1998 DESIGNER      18 F   19.03.1978    49840,00      600,00     2387,00
000230 JAMES        J       JEFFERSON       D21      2094    21.11.1996 CLERK         14 M   30.05.1980    42180,00      400,00     1774,00
000240 SALVATORE    M       MARINO          D21      3780    05.12.2004 CLERK         17 M   31.03.2002    48760,00      600,00     2301,00
000250 DANIEL       S       SMITH           D21      0961    30.10.1999 CLERK         15 M   12.11.1969    49180,00      400,00     1534,00
000260 SYBIL        P       JOHNSON         D21      8953    11.09.2005 CLERK         16 F   05.10.1976    47250,00      300,00     1380,00
000270 MARIA        L       PEREZ           D21      9001    30.09.2006 CLERK         15 F   26.05.2003    37380,00      500,00     2190,00
000280 ETHEL        R       SCHNEIDER       E11      8997    24.03.1997 OPERATOR      17 F   28.03.1976    36250,00      500,00     2100,00
000290 JOHN         R       PARKER          E11      4502    30.05.2006 OPERATOR      12 M   09.07.1985    35340,00      300,00     1227,00
000300 PHILIP       X       SMITH           E11      2095    19.06.2002 OPERATOR      14 M   27.10.1976    37750,00      400,00     1420,00
000310 MAUDE        F       SETRIGHT        E11      3332    12.09.1994 OPERATOR      12 F   21.04.1961    35900,00      300,00     1272,00
000320 RAMLAL       V       MEHTA           E21      9990    07.07.1995 FIELDREP      16 M   11.08.1962    39950,00      400,00     1596,00
000330 WING                 LEE             E21      2103    23.02.2006 FIELDREP      14 M   18.07.1971    45370,00      500,00     2030,00
000340 JASON        R       GOUNOT          E21      5698    05.05.1977 FIELDREP      16 M   17.05.1956    43840,00      500,00     1907,00
200010 DIAN         J       HEMMINGER       A00      3978    01.01.1995 SALESREP      18 F   14.08.1973    46500,00     1000,00     4220,00
200120 GREG                 ORLANDO         A00      2167    05.05.2002 CLERK         14 M   18.10.1972    39250,00      600,00     2340,00
200140 KIM          N       NATZ            C01      1793    15.12.2006 ANALYST       18 F   19.01.1976    68420,00      600,00     2274,00
200170 KIYOSHI              YAMAMOTO        D11      2890    15.09.2005 DESIGNER      16 M   05.01.1981    64680,00      500,00     1974,00
200220 REBA         K       JOHN            D11      0672    29.08.2005 DESIGNER      18 F   19.03.1978    69840,00      600,00     2387,00
200240 ROBERT       M       MONTEVERDE      D21      3780    05.12.2004 CLERK         17 M   31.03.1984    37760,00      600,00     2301,00
200280 EILEEN       R       SCHWARTZ        E11      8997    24.03.1997 OPERATOR      17 F   28.03.1966    46250,00      500,00     2100,00
200310 MICHELLE     F       SPRINGER        E11      3332    12.09.1994 OPERATOR      12 F   21.04.1961    35900,00      300,00     1272,00
200330 HELENA               WONG            E21      2103    23.02.2006 FIELDREP      14 F   18.07.1971    35370,00      500,00     2030,00
200340 ROY          R       ALONZO          E21      5698    05.07.1997 FIELDREP      16 M   17.05.1956    31840,00      500,00     1907,00

  42 enregistrement(s) sélectionné(s).

db2_select_example

  • Pour lister les tables :
list tables

Table/Vue                       Schéma          Type  Création - Horodatage
------------------------------- --------------- ----- --------------------------
ACT                             DB2INST1        T     2013-05-23-01.30.02.396372
ADEFUSR                         DB2INST1        S     2013-05-23-01.30.17.146519
CATALOG                         DB2INST1        T     2013-05-23-01.31.01.431569
CL_SCHED                        DB2INST1        T     2013-05-23-01.29.29.856617
CUSTOMER                        DB2INST1        T     2013-05-23-01.30.43.579152
DEPARTMENT                      DB2INST1        T     2013-05-23-01.29.32.195835
DEPT                            DB2INST1        A     2013-05-23-01.29.36.172624
EMP                             DB2INST1        A     2013-05-23-01.29.40.428434
EMPACT                          DB2INST1        A     2013-05-23-01.30.02.393982
EMPLOYEE                        DB2INST1        T     2013-05-23-01.29.36.173795
EMPMDC                          DB2INST1        T     2013-05-23-01.30.22.138427
EMPPROJACT                      DB2INST1        T     2013-05-23-01.30.00.729395
EMP_ACT                         DB2INST1        A     2013-05-23-01.30.02.395511
EMP_PHOTO                       DB2INST1        T     2013-05-23-01.29.40.429204
EMP_RESUME                      DB2INST1        T     2013-05-23-01.29.47.084699
INVENTORY                       DB2INST1        T     2013-05-23-01.30.40.159159
IN_TRAY                         DB2INST1        T     2013-05-23-01.30.06.130722
ORG                             DB2INST1        T     2013-05-23-01.30.07.773072
PRODUCT                         DB2INST1        T     2013-05-23-01.30.33.548553
PRODUCTSUPPLIER                 DB2INST1        T     2013-05-23-01.31.12.025637
PROJ                            DB2INST1        A     2013-05-23-01.29.57.164584
PROJACT                         DB2INST1        T     2013-05-23-01.29.57.165706
PROJECT                         DB2INST1        T     2013-05-23-01.29.53.795562
PURCHASEORDER                   DB2INST1        T     2013-05-23-01.30.48.933200
SALES                           DB2INST1        T     2013-05-23-01.30.11.112601
STAFF                           DB2INST1        T     2013-05-23-01.30.09.481588
STAFFG                          DB2INST1        T     2013-05-23-01.30.14.195043
SUPPLIERS                       DB2INST1        T     2013-05-23-01.31.06.896476
VACT                            DB2INST1        V     2013-05-23-01.30.12.986770
VASTRDE1                        DB2INST1        V     2013-05-23-01.30.13.234430
VASTRDE2                        DB2INST1        V     2013-05-23-01.30.13.236593
VDEPMG1                         DB2INST1        V     2013-05-23-01.30.13.164910
VDEPT                           DB2INST1        V     2013-05-23-01.30.12.809794
VEMP                            DB2INST1        V     2013-05-23-01.30.12.972318
VEMPDPT1                        DB2INST1        V     2013-05-23-01.30.13.231911
VEMPLP                          DB2INST1        V     2013-05-23-01.30.13.246656
VEMPPROJACT                     DB2INST1        V     2013-05-23-01.30.13.149585
VFORPLA                         DB2INST1        V     2013-05-23-01.30.13.242261
VHDEPT                          DB2INST1        V     2013-05-23-01.30.12.970620
VPHONE                          DB2INST1        V     2013-05-23-01.30.13.245638
VPROJ                           DB2INST1        V     2013-05-23-01.30.12.973785
VPROJACT                        DB2INST1        V     2013-05-23-01.30.13.042211
VPROJRE1                        DB2INST1        V     2013-05-23-01.30.13.238412
VPSTRDE1                        DB2INST1        V     2013-05-23-01.30.13.239795
VPSTRDE2                        DB2INST1        V     2013-05-23-01.30.13.241133
VSTAFAC1                        DB2INST1        V     2013-05-23-01.30.13.243341
VSTAFAC2                        DB2INST1        V     2013-05-23-01.30.13.244449

  47 enregistrement(s) sélectionné(s).

db2_list_tables

  • Pour avoir la structure d’une table :
describe table customer

Nom colonne                     données    Nom type données   colonne    Echelle Nulls
------------------------------- --------- ------------------- ---------- ----- ------
CID                             SYSIBM    BIGINT                       8     0 Non
INFO                            SYSIBM    XML                          0     0 Oui
HISTORY                         SYSIBM    XML                          0     0 Oui

  3 enregistrement(s) sélectionné(s).

db2_describe_table

Si vous êtes fan des clients graphiques, IBM vous offre IBM DATA STUDIO un eclipse like qui vous permet d’accéder a DB2 et faire beaucoup de ce que vous pouvez faire en ligne de commande.

IBM_DATA_STUDIO

Dans un prochain article, on va savoir comment on peut accéder a notre base a partir d’un client distant via plusieurs méthodes.

Publicité

Votre commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l’aide de votre compte WordPress.com. Déconnexion /  Changer )

Image Twitter

Vous commentez à l’aide de votre compte Twitter. Déconnexion /  Changer )

Photo Facebook

Vous commentez à l’aide de votre compte Facebook. Déconnexion /  Changer )

Connexion à %s