Dieser Artikel wurde archiviert, da er - oder Teile daraus - nur noch unter einer älteren Ubuntu-Version nutzbar ist. Diese Anleitung wird vom Wiki-Team weder auf Richtigkeit überprüft noch anderweitig gepflegt. Zusätzlich wurde der Artikel für weitere Änderungen gesperrt.
Dieser Artikel erfordert mehr Erfahrung im Umgang mit Linux und ist daher nur für fortgeschrittene Benutzer gedacht.
IBM DB2 ist eine kommerzielle, relationale Datenbank, welche primär auf das Geschäftsumfeld ausgerichtet ist und entsprechende Leistungsmerkmale aufweist.
Es gibt aber auch eine kostenlose Version namens Express-C . Dies wird im folgenden behandelt.
Seit Version 8.2 bietet IBM eine DB2-Edition mit dem Namen "Express-C" an. Diese kann kostenlos von der IBM-Webseite http://www.ibm.com/db2/express heruntergeladen werden. Die Einschränkungen - maximal 2 Prozessoren und 4 GB RAM - sollten dabei nicht stören. Nach dem Download muss das .tag.gz-Archiv entpackt werden [4]. Für die Installation selbst kann man entweder auf ein Response-File zurückgreifen, womit alle Variablen, die für die Installation notwendig sind, aus einer Datei ausgelesen werden oder man führt das grafische Setup aus, indem man das Skript db2setup startet (siehe unten). Allerdings müssen Vorbedingungen erfüllt werden!
Für die Version 9.7 der Express-C Version benötigt man unter Ubuntu 9.04 das Paket libaio1 [1]
libaio1
mit apturl
Paketliste zum Kopieren:
sudo apt-get install libaio1
sudo aptitude install libaio1
Nun ins entpackte Verzeichnis der DB2 Files wechseln und diesen Befehl starten
sudo ./db2setup
Es können aber Probleme auftreten, die sich darin äußern können, dass sich db2 und db2cc nicht starten lassen oder man nicht auf Nodes zugreifen kann. Folgendes kann dabei helfen, diese Probleme zu beheben:
Zuerst muss man eine neue Gruppe anlegen (Als Beispiel wird hier für alles der Name "db2i" verwendet; sowohl für die Gruppe als auch den Benutzer und die Instanz):
sudo groupadd -g ??? db2i
wobei ???
für eine freie Gruppen-ID steht.
Anschließend einen neuen User anlegen und der vorher angelegten Gruppe zuweisen:
sudo useradd -g db2i -m -p kennwort db2i
Nun wechselt man in das Instanz-Verzeichnis /opt/ibm/db2/V9.1/instance und erstellt mit dem Befehl
sudo ./db2icrt -u db2i db2i
eine neue Instanz.
Danach sollte die ksh (Korn-Shell) nachinstalliert werden, die DB2 für manche Aktionen benötigt.
Mit einem Editor [3] kann man nun allen DB2-Usern die ksh (oder alternativ die bash) als Shell eintragen. Standardmäßig wird hier von DB2 nur die sh eingetragen.
In der Profildatei des Instanz-Users (/home/db2i/.profile) sollte das DB2-Instanz-Setup einiges eingetragen haben. Falls nicht, kann man den Inhalt von /home/db2i/sqllib/db2profile in diese Datei kopieren. (Eventuell muss man die .profile auch erst erstellen, falls diese noch nicht existiert.)
Spätestens nach diesen Punkten sollte sich der DB2 DBM wie oben erwähnt starten lassen. Als Instanz-User kann man nun beispielsweise via
db2fs
das Programm "DB2 First Steps2
" starten und dort die Sample-Datenbank anlegen lassen, die für einen späteren Test verwendet wird.
Der DBM muss nach jedem Bootvorgang extra gestartet werden - am einfachsten ist, man bastelt sich ein entsprechendes Skript, das das beim Start automatisch erledigt.
sudo vi /etc/apt/sources.list
und folgende Zeilen aktivieren (Kommentarzeichen # löschen) deb http://archive.canonical.com/ubuntu lucid partner deb-src http://archive.canonical.com/ubuntu lucid partner
So nun WICHTIG: Backup vom System machen!
sudo apt-get update sudo apt-get install libaio1 ksh libstdc++6-4.4-dev libstdc++6-4.4-pic ia32-libs sudo apt-get db2exc
Sollte es Probleme geben (leider bei IBM nicht unwahrscheinlich) muss man leider auf das Backup aufsetzen, da User bereits angelegt wurden und das Skript immer wieder neue User anlegt, die wiederum Fehler verursachen. Logfiles der Setups liegen in /tmp
Nach dem Restore:
sudo apt-get update sudo apt-get install libaio1 ksh libstdc++6-4.4-dev libstdc++6-4.4-pic ia32-libs sudo apt-get (hier alle pakete die db2exc benötigt installieren) sudo apt-get db2exc
Für die DB2 werden folgende Pakete benötigt http://www.ibm.com/developerworks/wikis/display/im/Ubuntu+10.04+-+DB2+9.7
sudo apt-get install libaio1 ksh libstdc++6-4.4-dev libstdc++6-4.4-pic ia32-libs
oder graphisch via Link
libaio1 ksh libstdc++6-4.4-dev libstdc++6-4.4-pic ia32-libs
mit apturl
Paketliste zum Kopieren:
sudo apt-get install libaio1 ksh libstdc++6-4.4-dev libstdc++6-4.4-pic ia32-libs
sudo aptitude install libaio1 ksh libstdc++6-4.4-dev libstdc++6-4.4-pic ia32-libs
Nun ins entpackte Verzeichnis der DB2 Files wechseln und diesen Befehl starten
sudo ./db2setup
Es kann ein Fehler bei der Installation auftreten SQL1042C diesen (und nur diesen ignorieren).
Nun Rechner neu starten und als db2inst1 anmelden. Hier den Befehl ausführen
ipclean -a db2start
DB2-Download: http://www.ibm.com/db2/express
DB2-Forum: http://www-128.ibm.com/developerworks/forums/dw_forum.jsp?forum=805&cat=19
FREE Book- Getting Started with DB2 Express-C: http://www.ibm.com/developerworks/wikis/display/DB2/FREE+Book-+Getting+Started+with+DB2+Express-C
Diese Revision wurde am 10. Dezember 2013 13:47 von aasche erstellt.