DB2
Archivierte Anleitung
Dieser Artikel wurde archiviert. Das bedeutet, dass er nicht mehr auf Richtigkeit überprüft oder anderweitig gepflegt wird. Der Inhalt wurde für keine aktuell unterstützte Ubuntu-Version getestet. Wenn du Gründe für eine Wiederherstellung siehst, melde dich bitte in der Diskussion zum Artikel. Bis dahin bleibt die Seite für weitere Änderungen gesperrt.
Artikel für fortgeschrittene Anwender
Dieser Artikel erfordert mehr Erfahrung im Umgang mit Linux und ist daher nur für fortgeschrittene Benutzer gedacht.
Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:
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.
Installation von IBM DB2¶
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!
DB2 9.7 Express-C auf Ubuntu 9.04¶
Für die Version 9.7 der Express-C Version benötigt man unter Ubuntu 9.04 das Paket libaio1 [1]
libaio1
Befehl zum Installieren der Pakete:
sudo apt-get install libaio1
Oder mit apturl installieren, Link: apt://libaio1
Nun ins entpackte Verzeichnis der DB2 Files wechseln und diesen Befehl starten
sudo ./db2setup
Problembehebung nach der DB2-Installation¶
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.
Hinweis:
Der DBM muss nach jedem Bootvorgang extra gestartet werden - am einfachsten ist, man bastelt sich ein entsprechendes Skript, das das beim Start automatisch erledigt.
Easy-Setup DB2 9.7.4 Express-C auf Ubuntu 10.04 LTS (lucid) x64/amd64¶
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
DB2 9.7.4 Express-C auf Ubuntu 10.04 LTS (lucid) x64/amd64¶
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
Befehl zum Installieren der Pakete:
sudo apt-get install libaio1 ksh libstdc++6-4.4-dev libstdc++6-4.4-pic ia32-libs
Oder mit apturl installieren, Link: 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
Test von DB2¶
Nach erfolgreicher Installation von DB2 sollte man als Instanz-User (standardmäßig "db2inst1") den DBM mit
db2 start dbm
und anschließend die Steuerzentrale mit
db2cc
starten können [2].
Hilfreiche Links¶
DB2-Download: http://www.ibm.com/db2/express 🇬🇧
DB2-Forum: http://www-128.ibm.com/developerworks/forums/dw_forum.jsp?forum=805&cat=19 🇬🇧
Anleitung: http://publib.boulder.ibm.com/infocenter/db2luw/v9/index.jsp?topic=/com.ibm.db2.udb.apdv.php.doc/doc/t0011926.htm 🇬🇧
FREE Book- Getting Started with DB2 Express-C: http://www.ibm.com/developerworks/wikis/display/DB2/FREE+Book-+Getting+Started+with+DB2+Express-C 🇩🇪 🇬🇧 🇨🇿 🇿🇭 🇯🇦 🇮🇹 🇵🇱 🇵🇹 🇪🇸