Forums

Skip to content

Advanced search
  • Quick links
    • Unanswered topics
    • Active topics
    • Search
  • FAQ
  • Login
  • Register
  • Board index International Gentoo Users Deutsches Forum (German) Deutsche Dokumentation
  • Search

IBM DB2 Installation für Gentoo

Dokumentation, Tipps und Tricks.
Post Reply
  • Print view
Advanced search
12 posts • Page 1 of 1
Author
Message
aZZe
l33t
l33t
User avatar
Posts: 965
Joined: Thu Feb 20, 2003 11:25 am
Location: Dinslaken, Germany

IBM DB2 Installation für Gentoo

  • Quote

Post by aZZe » Fri Oct 22, 2004 8:06 pm

Hallo!

Wie vielleicht schon einige gesehen haben, beschäftige ich mich mit der IBM DB2 Datenbank. Da ich diese DB auch unter Gentoo nutzen möchte und viele Probleme mit der Installation hatten, da die IBM sich via rpm Paketmanager installiert und dieser nunmal nicht Standard ist bei Gentoo (Gott sei gelobt ;)), habe ich mir gedacht ich schreibe hier ein HOWTO wie man die aktuelle IBM DB2 V8.2 ans laufen bekommt. Es gibt zwar hier einige Hinweise, Tips und Tricks und auch Links z.B. zur IBM Seite, diese sind aber nicht vollständig.

Step by step:

Wir benötigen zur Installation den rpm Paketmanager, ob wir wollen oder nicht:

Code: Select all

emerge rpm
Danach müssen wir den gesamten Inhalt von der CD in ein Verzeichnis auf der Festplatte kopieren, da wir gleich noch ein paar Scripte abändern müssen und das geht nun auf einer gebrannten CD schlecht ;)

Da Gentoo ja keine rpm Distri ist wirds auch schwierig mit dem Auflösen der Abhängigkeiten. Da sich aber alle nötigen Pakete auf der CD befinden bzw. nachher in unserem Ordner auf unserer Festplatte können wir die Pakete mittels der Option "--nodeps" installieren.
Wenn wir also den gesamten Inhalt der CD in z.B. /home/tux/DB2 installiert haben bitte ins folgende Verzeichnis wechseln:

Code: Select all

cd /home/tux/DB2/db2/linux
Dort befindet sich das Install Script "db2_install". Dieses ist dafür verantwortlich die rpms zu installieren und die Abhängigkeiten zu prüfen. Hier muss nun folgende Zeile gefunden werden:

Code: Select all

 # Install packages
    if [ ! "${DB2PKGLIST?}" = "" ]; then
        RPMEXTN="-8.1.0-0.i386.rpm"
        for pkg in ${DB2PKGLIST?}; do
            echo "   ${pkg?}..."
            rpm -ivh  ${INSTDEV?}/${pkg?}${RPMEXTN?} 2>&1 \  <--- die hier!!
            | tee -a ${DB2INSTLOG?}
            if [ $? -ne 0 ]
            then
                StopProg 1
            fi
        done
    fi

Diese Sektion muss nun ergänzt werden durch die Option "--nodeps":

Code: Select all

 # Install packages
    if [ ! "${DB2PKGLIST?}" = "" ]; then
        RPMEXTN="-8.1.0-0.i386.rpm"
        for pkg in ${DB2PKGLIST?}; do
            echo "   ${pkg?}..."
            rpm --nodeps -ivh  ${INSTDEV?}/${pkg?}${RPMEXTN?} 2>&1 \
            | tee -a ${DB2INSTLOG?}
            if [ $? -ne 0 ]
            then
                StopProg 1
            fi
        done
    fi
Nun sind wir in der Lage das eigentliche Install Skript im Ordner /home/tux/DB2 auszuführen. Dieses Skript hat den gleichen Namen wie das, das wir gerade geändert haben. Dieses ist das Haupt Installations Skript womit man die verschiedenen Server wie Enterprise Server Application Server etc. auswählen kann. Nach Bestätigung des gewählten Servers ruft dieses Skript das Skript auf, was wir gerade geändert haben, um die rpms zu installieren.

In diesem Ordner befindet sich auch das Installationsscript "db2setup" für die grafische Installation mittels Java. Dieses Script hat so wirklich noch keiner ans laufen gebracht und kann daher gerne ignoriert werden. Sollte hier jemand erfolgreich sein gibts von der IBM ein Geschenk ;)

Nun müssen drei Benutzer angelegt werden, die die DB2 benötigt. Einen User "db2inst1" für die Instanz, um mit der Datenbank arbeiten zu können, einen fenc Benutzer "db2fenc1" für Sicherheitsmechanismen und einen Benutzer "db2as" für den Verwaltungsserver. Alle drei Benutzer benötigen aber auch eigene Gruppen, die jeweils auch ihre primäre Gruppe sein müssen.

Die Gruppe users darf nicht primäre Gruppe dieser Benutzer sein!!!

Code: Select all

groupadd db2iadm1 #Gruppe für User db2inst1

Code: Select all

groupadd db2fadm1 #Gruppe für User db2fenc1

Code: Select all

groupadd db2asgrp #Gruppe für User db2as
Nun werden die einzelnen User mit ihren Gruppen angelegt:

Code: Select all

useradd -m db2inst1 -g db2iadm1

Code: Select all

useradd -m db2fenc1 -g db2fadm1

Code: Select all

useradd -m db2as -g db2asgrp
Nun muss eine Instanz und ein Verwaltungsserver angelegt werden. Hier müssen nun unter Gentoo und vielleicht auch anderen Distris alle Skripte in /opt/IBM/db2/V8.1/instance angefasst werden in denen ein "tail" aufgerufen wird. Welche das sind kann man leicht mit grep herausfinden:

Code: Select all

 grep -ir tail* db2*  
Die Skripte rufen tail z.B. mit der Syntax "tail +2" auf. Da neuere tail Versionen von gentoo damit nicht klar kommen muss jedes tail ein "-n" enthalten. Wenn also z.B. wie im Skript db2iutil folgende Zeile steht:

Code: Select all

fsname=`awk '{print $NF}' ${TMPFILE3?} | tail -1
muss diese abgeändert werden in:

Code: Select all

fsname=`awk '{print $NF}' ${TMPFILE3?} | tail -n -1
Und so muss jede Zeile in allen Skripten im Verzeichnis instance abgeändert werden, die ein tail enthält. Bevor wir die Instanz und den Verwaltungsserver nun anlegen, sollte man an dieser Stelle nun das Fixpack7 einspielen, da man ansonsten bei bestehender Instanz und Verwaltungsserver diese auch noch updaten muss, was ein bischen viel Arbeit ist und da wir ja faul sind updaten wir von Anfang an. ;) Das Fixpack7 Codename "Stinger" upgradet die DB2 8.1 zur Version 8.2. (Besteht dennoch Interesse bezüglich eines nachträglichem Updates bitte eben posten.)

Das Update verläuft nun genauso wie die Installation der DB2 selbst. Ich denke ich muss hier nicht weiter darauf eingehen. Im Anschluss können wir nun unsere Instanz anlegen:

Code: Select all

/opt/IBM/db2/V8.1/instance/db2icrt -u db2fenc1 db2inst1
Lässt man den db2fenc1 user hier weg verzichtet man auf die Sicherheitsmechanismen für diese Instanz. Dies sähe analog dazu so aus:

Code: Select all

/opt/IBM/db2/V8.1/instance/db2icrt -u db2inst1 db2inst1

Nun noch der Verwaltungsserver:

Code: Select all

/opt/IBM/db2/V8.1/instance/dascrt -u db2as
Nun meldet man sich als Benutzer db2inst1 an. Nur dieser Benutzer kann die DB2 starten, db2 Befehle ausführen und die DB2 weider stoppen.

Den Verwaltungsserver kann nur der db2as Benutzer starten und stoppen. Dieser wird benötigt um Client-Server Verbindungen herzustellen.

Ich hoffe hier für ein wenig Klarheit verholfen zu haben und wünsche viel Spass bei der Arbeit.


aZZe
Last edited by aZZe on Thu Jan 26, 2006 10:56 am, edited 1 time in total.
ASUS 4A785TD-V EVO with AMD Phenom(tm) II X4 965
4GB RAM DDR3-1333
ATI Radeon HD4870
Top
dakjo
Veteran
Veteran
User avatar
Posts: 1544
Joined: Sat Jan 31, 2004 6:02 pm
Contact:
Contact dakjo
Website

  • Quote

Post by dakjo » Sat Oct 23, 2004 8:47 pm

Gratulation :D
'Dieselben Naturkräfte, die uns ermöglichen, zu den Sternen zu fliegen, versetzen uns auch in die Lage, unseren Stern zu vernichten.' - Wernher von Braun
http://www.mpsna.de
Top
andreask
Apprentice
Apprentice
Posts: 282
Joined: Tue Sep 09, 2003 1:17 pm
Location: Aachen, Germany

  • Quote

Post by andreask » Sun Oct 24, 2004 10:49 am

Hi!

Vielen Dank, das hatte ich in der nächsten Zeit auch mal vor. Bisher hatte ich DB2 nur unter RedHat laufen. Ich hatte auch schonmal nach Anleitungen gesucht und bin auf folgende gestoßen (kennst Du vermutlich schon...):

http://www-106.ibm.com/developerworks/d ... dnl-db2mag
http://kjeldahl.net/db2/

Zusammen mit Deiner Anleitung sollte ich es jetzt ja hinbekommen können ;-)

Allerdings hatte ich gehofft dass ich um rpm herum komme. Ich dachte, evtl. könnte man mit Hilfe von rpm2tgz und ein bisschen Handarbeit ein tbz2 Paket erstellen, welches die Abhängigkeiten aus dem RPM für portage "übersetzt"?

Aber bisher haben alle Anleitungen einfach rpm mit --nodeps" verwendet, scheint also der schlauere Weg zu sein. Aber was ist, wenn es tatsächlich Abhängigkeiten von irgendwelchen libs gibt, die nicht oder in falscher Version vorhanden sind? Kann man nicht irgendwie an die Abhängigkeiten aus dem RPM kommen so dass man diese ggfs. manuell nachinstallieren kann?

Jedenfalls vielen Dank für die Anleitung!
Top
andreask
Apprentice
Apprentice
Posts: 282
Joined: Tue Sep 09, 2003 1:17 pm
Location: Aachen, Germany

  • Quote

Post by andreask » Sun Oct 24, 2004 11:09 am

Ein paar (leider etwas veraltete) Infos gibt es auch im LDP: http://www.tldp.org/HOWTO/DB2-HOWTO/

Aber wie es aussieht soll sich dies bald ändern:
# DB2 For Linux HOWTO
Ian Hakes talked to Dan Scott about the DB2 For Linux HOWTO who allowed him to take over the DB2 for Linux Howto, with basically a full re-write to cover DB2's latest release V8.2 on up-to-date enterprise and personal Linux distributions (RHEL 3, SLES 8, SLES 9, along with Red Hat 8, Fedora Core 2, SuSE Pro 9.1, and possibly Mandrake 10, Gentoo and maybe even Debian). This effort was started by another writer, Rory Hinton, who had to drop off the project, so Ian would be taking primary responsibility for the document, which is about 60% complete.
(Quelle: http://www.tldp.org/ldpwn/20040915.html#tldp-world-news)

AFAIK geht es hier um folgendes HOWTO: http://www.julieandian.com/writing/82ho ... tive_5.pdf

(nur um hier mal ein paar Infos zusammenzutragen ;-))
Top
andreask
Apprentice
Apprentice
Posts: 282
Joined: Tue Sep 09, 2003 1:17 pm
Location: Aachen, Germany

  • Quote

Post by andreask » Sun Oct 24, 2004 11:22 am

Wie man von Apache/PHP auf eine IBM DB2 zugreift wird hier erklärt:
http://www-106.ibm.com/developerworks/d ... scott.html

IBM DB2 ist durchaus interessant, man kann sie natürlich um sonst zum Testen/Entwickeln installieren, und eine kommerzielle Lizenz kostet nicht viel mehr als eine kommerzielle MySQL-Lizenz.
Top
aZZe
l33t
l33t
User avatar
Posts: 965
Joined: Thu Feb 20, 2003 11:25 am
Location: Dinslaken, Germany

  • Quote

Post by aZZe » Sun Oct 24, 2004 8:43 pm

andreask wrote: IBM DB2 ist durchaus interessant, man kann sie natürlich um sonst zum Testen/Entwickeln installieren, und eine kommerzielle Lizenz kostet nicht viel mehr als eine kommerzielle MySQL-Lizenz.

Genau! ;) Die DB2 bietet zudem eine Menge mehr Features. Es lassen sich auch richtig schöne Cluster mit der DB2 bauen. 8)
ASUS 4A785TD-V EVO with AMD Phenom(tm) II X4 965
4GB RAM DDR3-1333
ATI Radeon HD4870
Top
andreask
Apprentice
Apprentice
Posts: 282
Joined: Tue Sep 09, 2003 1:17 pm
Location: Aachen, Germany

  • Quote

Post by andreask » Mon Aug 08, 2005 11:38 am

Hab noch ein paar Links gefunden:

DB2 Installation:

http://iedb.org/db2/db2-install.txt
http://howtos.linux.com/howtos/DB2-HOWTO/gentoo.shtml
http://www-128.ibm.com/developerworks/d ... dnl-db2mag
http://www-128.ibm.com/developerworks/d ... _linux.txt


PHP-Anbindung:

http://www-128.ibm.com/developerworks/d ... 05furlong/
http://www-128.ibm.com/developerworks/d ... tabaseApps
http://www-128.ibm.com/developerworks/d ... hutchison/
http://www-306.ibm.com/software/data/in ... a=dti-tile
http://www.zend.com/pecl/tutorials/sdo.php


Allerdings ist das alles sehr, sehr umständlich. Wie es aussieht hat lediglich Zend mit seinem Zend Core for IBM einen fertigen DB2-Client, allerdings nur "zertifiziert" für RHEL und SLES, außerdem sind es binäre pakete, vermutlich rpms. Außerdem kostet das vermutlich was - wenn ich auch keine Angaben dazu finden konnte.

Aber auch das behebt ja nur den einen Teil des Problems, den Server zu installieren ist immer noch so kompliziert. Gibt es da denn keine Bestrebungen das mal etwas zu vereinfachen? Oder könnte man aus dem RPM nicht irgendwie ein binäres Paket für Portage machen? Wäre cool wenn man ein Script hätte, welches aus archiv von IBM ein binäres Paket für Portage machen könnte - aber wie?


edit: also mit Debian kann man wohl einfach ein .deb aus einem .rpm machen: http://lists.debian.org/debian-user-ger ... 00082.html
Top
psyqil
Advocate
Advocate
User avatar
Posts: 2767
Joined: Mon May 26, 2003 8:17 pm

  • Quote

Post by psyqil » Mon Aug 08, 2005 11:49 am

andreask wrote:Oder könnte man aus dem RPM nicht irgendwie ein binäres Paket für Portage machen?
Hau rein:

Code: Select all

*  app-arch/rpm2targz
      Latest version available: 9.0-r3
      Latest version installed: 9.0-r2
      Size of downloaded files: 2 kB
      Homepage:    http://www.slackware.com/config/packages.php
      Description: Convert a .rpm file to a .tar.gz archive
      License:     as-is
Top
andreask
Apprentice
Apprentice
Posts: 282
Joined: Tue Sep 09, 2003 1:17 pm
Location: Aachen, Germany

  • Quote

Post by andreask » Mon Aug 08, 2005 11:58 am

Ja, Dank Debian bin ich auch auf

Code: Select all

*  app-arch/alien
      Latest version available: 8.53
      Latest version installed: [ Not Installed ]
      Size of downloaded files: 83 kB
      Homepage:    http://kitenet.net/programs/alien/
      Description: Converts between the rpm, dpkg, stampede slp, and slackware tgz file formats
      License:     LGPL-2.1
gestoßen. Allerdings habe ich keine Ahnung davon, es gibt anscheinend Möglichkeiten RPMs in DEBs (für Debian) und TGZs (für Slackware) zu verwandeln. Aber was hat man davon? Die Datei hat ne andere Endung und ich kann es immer noch nicht emergen ;-)

Was ist denn nötig um aus einem RPM, DEB oder TGZ ein Portage-kompatibles TBZ2 Paket zu erhalten? Ich kenne das nur dass so ein Paket per emerge erzeugt wird. Aber wie funktioniert das wenn ich bereits bestehende binaries/libraries in einem Archiv habe? Gibts dazu irgendwo irgendeine nette Dokumentation? Was das binäre Paket-Format für Gentoo angeht finde ich da doch recht wenig.

Oder müsste man ein wildes ebuild schreiben das alle möglichen binären Dateien durch die Gegend kopiert?
Top
psyqil
Advocate
Advocate
User avatar
Posts: 2767
Joined: Mon May 26, 2003 8:17 pm

  • Quote

Post by psyqil » Mon Aug 08, 2005 12:05 pm

andreask wrote:Oder müsste man ein wildes ebuild schreiben das alle möglichen binären Dateien durch die Gegend kopiert?
Nun, es müßte nicht notwendigerweise wild sein, es sollte auch nicht alle möglichen Binärdateien durch die Gegend kopieren, sondern nur die aus dem Archiv dahin, wo sie hingehören, aber prinzipiell hast Du völlig recht! :mrgreen:
Top
andreask
Apprentice
Apprentice
Posts: 282
Joined: Tue Sep 09, 2003 1:17 pm
Location: Aachen, Germany

  • Quote

Post by andreask » Thu Nov 10, 2005 4:02 pm

übrigens wurde DB2 jetzt auch für Ubuntu von IBM zertifiziert: http://www.ubuntulinux.org/newsitems/db2cert
Und Ubuntu erscheint tatsächlich als zertifizierte Distribution bei IBM: http://ibm.com/db2/linux/validate/

Und dann war ich ja fast geschockt, IBM verlinkt von der Ubuntu Seite auf das DB2 Universal Database Version 8.2 for Linux HOWTO unter tldp.org, und da gab es in den letzten Wochen und Monaten einige Updates, denn inzwischen gibt es in dem HOWTO auch ein Kapitel: Installing DB2 Version 8.2 on Gentoo!

Und bei der Gelegenheit habe ich direkt noch eine weitere Anleitung für nicht-RPM Distributionen gefunden:
http://www.scotdb.com/downloads/DB2V8SpecialInstall.pdf
Top
andreask
Apprentice
Apprentice
Posts: 282
Joined: Tue Sep 09, 2003 1:17 pm
Location: Aachen, Germany

  • Quote

Post by andreask » Mon Jan 30, 2006 7:21 pm

Seit heute gibt es auch eine freie Variante: DB2 Express-C

Ist wohl wie die normale Express-Version, aber beschränkt auf max. 2 x86 Dual-Core Prozessoren und 4 GB Ram.

Download: http://www-306.ibm.com/software/data/db ... nload.html
Forum: http://www-128.ibm.com/developerworks/f ... 805&cat=19
Lizenz: ftp://ftp.software.ibm.com/software/dat ... /exp_LI_en

Hat jemand vielleicht schon ein ebuild parat? Jedenfalls könnte man doch jetzt noch ein nettes ebuild wie für die neue, freie Oracle Version schreiben und die dann nach Möglichkeit in Portage übernehmen, oder?

Was haltet Ihr davon?

Grüße
Andreas
Top
Post Reply
  • Print view

12 posts • Page 1 of 1

Return to “Deutsche Dokumentation”

Jump to
  • Assistance
  • ↳   News & Announcements
  • ↳   Frequently Asked Questions
  • ↳   Installing Gentoo
  • ↳   Multimedia
  • ↳   Desktop Environments
  • ↳   Networking & Security
  • ↳   Kernel & Hardware
  • ↳   Portage & Programming
  • ↳   Gamers & Players
  • ↳   Other Things Gentoo
  • ↳   Unsupported Software
  • Discussion & Documentation
  • ↳   Documentation, Tips & Tricks
  • ↳   Gentoo Chat
  • ↳   Gentoo Forums Feedback
  • ↳   Duplicate Threads
  • International Gentoo Users
  • ↳   中文 (Chinese)
  • ↳   Dutch
  • ↳   Finnish
  • ↳   French
  • ↳   Deutsches Forum (German)
  • ↳   Diskussionsforum
  • ↳   Deutsche Dokumentation
  • ↳   Greek
  • ↳   Forum italiano (Italian)
  • ↳   Forum di discussione italiano
  • ↳   Risorse italiane (documentazione e tools)
  • ↳   Polskie forum (Polish)
  • ↳   Instalacja i sprzęt
  • ↳   Polish OTW
  • ↳   Portuguese
  • ↳   Documentação, Ferramentas e Dicas
  • ↳   Russian
  • ↳   Scandinavian
  • ↳   Spanish
  • ↳   Other Languages
  • Architectures & Platforms
  • ↳   Gentoo on ARM
  • ↳   Gentoo on PPC
  • ↳   Gentoo on Sparc
  • ↳   Gentoo on Alternative Architectures
  • ↳   Gentoo on AMD64
  • ↳   Gentoo for Mac OS X (Portage for Mac OS X)
  • Board index
  • All times are UTC
  • Delete cookies

© 2001–2026 Gentoo Foundation, Inc.

Powered by phpBB® Forum Software © phpBB Limited

Privacy Policy