Installieren von DB2-Servern > Weitere Voraussetzungen für Linux und UNIX > Kernelparameter (Linux und UNIX) >
Ändern von Kernelparametern (Linux)
Vor dem Installieren eines DB2-Datenbanksystems müssen Sie die Linux-Kernelparameter aktualisieren. Die Standardwerte für bestimmte Kernelparameter unter
Linux sind für die Ausführung eines DB2-Datenbanksystems nicht ausreichend.
Um die Kernelparameter ändern zu können, müssen Sie über die Rootberechtigung verfügen.
Gehen Sie wie folgt vor, um Kernelparameter unter Red Hat und SUSE
Linux zu aktualisieren:
- Führen Sie den Befehl ipcs -l aus.
- Analysieren Sie die Ausgabe, um festzustellen, ob Änderungen auf Ihrem System erforderlich sind. Die Kommentare hinter den Zeichen // geben die Namen der Parameter an.
# ipcs -l
------ Shared Memory Limits --------
max number of segments = 4096 // SHMMNI
max seg size (kbytes) = 32768 // SHMMAX
max total shared memory (kbytes) = 8388608 // SHMALL
min seg size (bytes) = 1
------ Semaphore Limits --------
max number of arrays = 1024 // SEMMNI
max semaphores per array = 250 // SEMMSL
max semaphores system wide = 256000 // SEMMNS
max ops per semop call = 32 // SEMOPM
semaphore max value = 32767
------ Messages: Limits --------
max queues system wide = 1024 // MSGMNI
max size of message (bytes) = 65536 // MSGMAX
default max size of queue (bytes) = 65536 // MSGMNB
- Im ersten Abschnitt von 'Shared Memory Limits' sind die Parameter SHMMAX und SHMALL von Bedeutung. SHMMAX steht für die maximale Größe eines gemeinsam genutzten Speichersegments in einem Linux-System, SHMALL steht dagegen für die maximale Zuordnung an Seiten gemeinsam genutzten Speichers in einem System.
- Es wird empfohlen, als Wert für SHMMAX die Gesamtmenge des physischen Hauptspeichers auf dem
System anzugeben. Das erforderliche Minimum für x86-Systeme liegt jedoch bei 268435456 (256 MB) und für
64-Bit-Systeme bei 1073741824 (1 GB).
- Der Wert für SHMALL ist standardmäßig auf 8 GB (8388608 KB = 8 GB) gesetzt. Wenn Sie über mehr physischen Hauptspeicher verfügen und dieser Speicher für DB2
verwendet werden soll, erhöht sich dieser Parameter auf ungefähr 90% des physischen
Hauptspeichers. Wenn Sie z. B. über einen Computer mit 16 GB Hauptspeicher
verfügen, der vorwiegend für DB2
verwendet werden soll, entspräche eine Erhöhung auf 90% von 16 GB in etwa 14,4 GB; geteilt durch
4 KB (die Basisseitengröße) ergibt dies den Wert 3774873 für SHMALL. Die IPCS-Ausgabe SHMALL wird in Kilobyte konvertiert wird. Für den Kernel ist dieser Wert als Anzahl der Seiten erforderlich. Wenn Sie ein Upgrade auf DB2 Version 9.7 durchführen und nicht die SHMALL-Standardeinstellung verwenden, müssen Sie die SHMALL-Einstellung um weitere 4 GB erhöhen. Diese Speichererhöhung ist für die FCM-Kommunikation (Fast Communications Manager) für zusätzliche Puffer und Kanäle erforderlich.
- Im nächsten Abschnitt wird die Anzahl der Semaphore besprochen, die für das Betriebssystem verfügbar sind. Der Kernelparameter SEM besteht aus den 4 Token SEMMSL, SEMMNS, SEMOPM und SEMMNI. SEMMNS ist das Ergebnis der Multiplikation von SEMMSL und SEMMNI. Für den Datenbankmanager ist es erforderlich, dass die Anzahl der Arrays (SEMMNI) soweit wie nötig erhöht wird. Normalerweise
sollte der Wert für SEMMNI doppelt so groß sein wie das Produkt aus der
maximal zulässigen Anzahl von Agenten, die im System erwartet werden,
und der Anzahl der logischen Partitionen auf dem
Datenbankservercomputer zuzüglich der Anzahl der lokalen
Anwendungsverbindungen auf dem Datenbankservercomputer.
- Der dritte Abschnitt betrifft die Nachrichten im System.
- MSGMNI wirkt sich auf die Anzahl der Agenten aus, die gestartet werden können, MSGMAX auf die Größe der Nachricht, die in einer Warteschlange gesendet werden kann und MSGMNB auf die Größe der Warteschlange.
- Der Wert für MSGMAX sollte auf 64 KB (65535 Byte) geändert werdenfder Wert für MSGMNB sollte auf
65535 erhöht werden.
- Zum Ändern dieser Kernelparameter muss die Datei /etc/sysctl.conf bearbeitet
werden. Wenn diese Datei nicht vorhanden ist, muss sie erstellt werden. Die folgenden Zeilen sind Beispiele für Angaben, die in der Datei gespeichert werden sollten:
kernel.sem = 250 256000 32 1024
#Beispielwert für 'shmmax' für ein 64-Bit-System
kernel.shmmax=1073741824
#Beispielwert für 'shmall' für 90% des 16-GB-Hauptspeichers
kernel.shmall=3774873
kernel.msgmax=65535
kernel.msgmnb=65535
- Führen Sie sysctl mit dem Parameter -p aus, um die
Einstellungen aus der Standarddatei /etc/sysctl.conf in
sysctl zu laden:
sysctl -p
- Damit die Änderungen nach jedem Warmstart wirksam werden, ist Folgendes erforderlich:
- (SUSE Linux)
Aktivieren Sie boot.sysctl.
- (Red Hat) Das Initialisierungsscript rc.sysinit liest die Datei
/etc/sysctl.conf automatisch.
[ Seitenanfang | Vorherige Seite | Nächste Seite | Inhaltsverzeichnis ]