Anmeldung

Loginname: Passwort:
Haben Sie Ihre persönlichen Daten vergessen?


Kostenloser Counter

IT und mehr

Willkommen auf der IT Seite.
Hier möchte ich einige Howtos, Anleitungen und andere IT-Relevante Dinge zum Download bereitstellen.

Bitte beim Download zur weiteren Verwendung aber auf das Copyright achten!

Bei weiteren Fragen könnt ihr mir auch eine Mail zukommen lassen.



 

<< Oracle10 unter Ubuntu 8.10 Übersicht Oracle10 unter Centos 4.8 32bit >>
Oracle 9 unter Centos4.7 (64bit) Kurzanleitung für die Installation von Oracel9i unter CentOS4.7 64Bit

Hinweis: Für die Tests gehe ich davon aus, dass ihr über eine gültige Oracle-Lizenz verfügt. Diese Anleitung basiert allerdings auf der Enterprise Edition 64bit für Linux.
Mittels dieser Anleitung sollte jedoch der Administrator in der Lage sein, innerhalb von 2 Stunden ein lauffähiges Datenbanksystem installiert zu bekommen.

Diese Installationsanleitung dient nur dazu, ein lauffähiges Oracle zu bekommen, für den produktiven Einsatz muss natürlich deutlich anders vorgegangen werden, vor allem was die Auswahl der Softwarepakete und die Absicherung des Systems (Oracle-Patches, Passwörter etc.) angeht.

Für die Installation nutzen wir VMWARE Server 1.0.7 sowie die  Ubuntu4.7 X64 Desktop-DVDROM als ISO-Image 64bit.

Die virtuelle Maschine hat folgende Hardwareausstattung:

1024 MB RAM
Festplatte mit 30 GB (nicht sofort allokieren)

Als erstes muss man CentOS grafischer Benutzeroberfläche installieren, als Zielpartition wird alles in eine Partition geschrieben, der Installer legt also lediglich eine SWAP und /-Root Partition an.

Es wird nun ein Desktop-System installiert. Dies kann bis zu einer Stunde dauern. Für den Usernamen, der bei der Installation gewählt wird,. bitte NICHT oracle verwenden!
Danach ist das Testsystem fertig für die Installation von Oracle 10 Enterprise.

Nachdem das System fertig installiert ist, einloggen als User root und folgende Befehle ausführen:

yum install yum install compat-db compat-gcc-32 compat-gcc-32-c++ compat-libcom_err compat-libcwait compat-libgcc-296 compat-libstdc++-296 compat-libstdc++-33 gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers glibc-kernheaders libgcc make
yum install binutils-2.15.92.0.2-21.x86_64 compat-db-4.1.25-9.i386 compat-db-4.1.25-9.x86_64 compat-gcc-32-3.2.3-47.3.x86_64 compat-gcc-32-c++-3.2.3-47.3.x86_64  compat-libcom_err-1.0-5.i386 compat-libcom_err-1.0-5.x86_64 compat-libgcc-296-2.96-132.7.2.i386 compat-libstdc++-296-2.96-132.7.2.i386 compat-libstdc++-33-3.2.3-47.3.i386 compat-libstdc++-33-3.2.3-47.3.x86_64 gcc-3.4.6-3.1.x86_64 gcc-c++-3.4.6-3.1.x86_64 glibc-2.3.4-2.25.i686 glibc-2.3.4-2.25.x86_64 glibc-common-2.3.4-2.25.x86_64 glibc-devel-2.3.4-2.25.i386  glibc-devel-2.3.4-2.25.x86_64 glibc-headers-2.3.4-2.25.x86_64 glibc-kernheaders-2.4-9.1.98.EL.x86_64 libgcc-3.4.6-3.1.i386 libgcc-3.4.6-3.1.x86_64 make-3.80-6.EL4.x86_64

Die Software Oracle soll nach /oracle installiert werden, und der Oracle-User soll den Usernamen oracle bekommen. Deshalb müssen nun folgende Befehle eingegeben werden:

useradd -m oracle
groupadd oinstall 
groupadd nobody
groupadd dba
adduser oracle oinstall
adduser oracle dba
mkdir /oracle
passwd oracle (Hier wird nun ein Passwort für den User vergeben)

Für den nun erstellten User erstellen wir eine persönliche Profildatei /home/oracle/.bash_profile, und tragen dort (und auch in die Datei /home/oracle/.profile) folgende Werte ein:

export ORACLE_BASE=/oracle
export ORACLE_HOME=$ORACLE_BASE/product/9.2.0
export PATH=$PATH:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
export ORACLE_SID=ora9
LD_ASSUME_KERNEL=2.4.19
export ORACLE_TERM=vt100
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
umask 022

Anschließend werden die nun erstellten Dateien und Verzeichnisse noch dem User Oracle übertragen:

chown oracle:dba /oracle -R
chown oracle:dba /home/oracle -R

Nun müssen noch folgende Links angelegt werden:

ln -s /usr/bin/awk /bin/awk
ln -s /usr/bin/touch /bin/touch
ln -s /usr/bin/basename /bin/basename
ln -s /usr/bin/rpm /bin/rpm

In die Datei /etc/sysctl.conf wird am Ende noch folgender Eintrag hinzugefügt:

kernel.sem = 250 32000 100 128
kernel.shmmax = 2147483648
kernel.shmmni = 128
kernel.shmall = 2097152
kernel.msgmnb = 65536
kernel.msgmni = 2878
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000

Damit später die Oracle-Software sauber kompiliert werden kann, muss noch der gcc richtig gesetzt werden:

mv /usr/bin/gcc /usr/bin/gcc3.4

ln -s /usr/bin/gcc32 /usr/bin/gcc

Als nächstes loggt man sich als User Oracle ein, und fährt mit der Installation der Software fort.

Von der Oracle-Homepage kann man sich die Version 9.2 für Linux herunterladen. Anschließend wird die Datei mit

cpio -idmv < amd64_db_9204_Disk1.cpio
cpio -idmv < amd64_db_9204_Disk2.cpio
cpio -idmv < amd64_db_9204_Disk3.cpio

entpackt. Ein neuer Ordner Disk1, Disk2 und Disk3 wird dabei erstellt. In den  Ordner Disk1 wechseln, und mit

./runInstaller

den Oracle-Installer aufrufen.

Als Pfad für das Bestandsverzeichnis wird /oracle/oraInventory genommen, als Gruppe für das Betriebssystem oinstall.
Als Installationsart wird Enterprise Edition genommen.
Als Name für die Installation wählt man VM_ORA1, als Pfad /oracle/product/9.2.0.
Den Hinweis, dass einige Voraussetzungen nicht erfüllt sind, können wir hier ignorieren.
Bei Konfigurationsoptionen „Nur Datenbank-Software installieren“ auswählen.

Anschließend wird die Software installiert. Dies kann einige Minuten dauern.

Nun erneut aus- und einloggen als User oracle.

Mit dem Befehl netca können wir nun als erstes den Listener konfigurieren, der notwendig ist, damit von außen Clients zugreifen können. Hier auf Listener-Konfiguration klicken, und dann immer auf weiter, bis man auf beenden klicken kann. Den angezeigten Befehl /oracle/product/9.2.0/bin/lsnrctl start LISTENER brauchen wir jedesmal, wenn der Rechner neu gestartet wird. Alternativ kann man sich natürlich auch einen Dienst erstellen, der dies macht.

Nun wird es Zeit, dass eine erste Datenbank erstellt wird. Dazu rufen wir das Tool dbca auf.

Hier können wir eine Datenbank erstellen, am besten nehmen wir gleich einmal die „Benutzerdefinierte Datenbank“. Als Datenbanknamen nehmen wir ora9, das wird auch gleich als SID vorgeschlagen. Den Haken bei „...Enterprise Manager...“ lassen wir drinnen. Das Kennwort für alle Accounts können wir nun auch gleich vergeben, alternativ könnte man auch für jeden Account ein anderes Passwort verwenden, was wir aber nicht wollen. Als Speicherungsverfahren nehmen wir „Dateisystem“. Den Speicherort für die Datenbankdateien nehmen wir aus der Vorlage.

Beim Speicherverfahren sagen wir, dass die SGA-Größe 160MB ist, und die PGA 16MB. Nun einfach immer weiter klicken. Falls die Meldung kommt, dass die SGA-Größe nicht größer sein darf, als die Shared-Memory-Segmentgröße, hier auf ignorieren klicken, wir werden das später fixen (siehe Eintrag in der sysctl.conf)
Nun solange auf Weiter klicken, bis die Datenbank angelegt wurde.

Nun loggen wir uns in das SQLPLUS SQL-Kommandozeilentool ein:

. oraenv → hier dann ora9 eingeben, und Enter drücken

sqlplus „/ as sysdba“

mit startup wird nun die Datenbank gestartet.


Für unsere Tests wollen wir einen User test1 mit dem Passwort test1 anlegen, der eine Tabelle mit 100.000 Datensätzen hat. Dies zeigt, ob unser Oracle soweit läuft.

create user test1 identified by test1 default tablespace users quota unlimited on users;
grant create table to test1;
grant create session to test1;
grant create sequence to test1; 

Nun beenden wir sqlplus mit exit, und loggen uns als User test1 ein:

sqlplus test1/test1

Dort legen wir nun die Tabelle Adressen an:

create table Adressen (Nummer(10), Name varchar(20));

Den Wert Nummer wollen wir später mit einer fortlaufenden Zahl füllen, dafür legen wir eine Sequenz an:

create sequence seq_1;

Und jetzt füllen wir die Tabelle mit Einträgen:

begin
for i in 1 .. 100000 loopinsert into Adressen values (SEQ_1.nextval,'Max Mustermann');
end loop;
end;
/

Mittels insert into Adressen values (SEQ_1.nextval,'Testuser'); wird nun ein Datensatz mit anderem Inhalt angelegt.

Mittels select Name,count(Name) „Anzahl“ from Adressen group by Name order by name asc wird nun überprüft, wie oft ein Wert vorkommt:

Name Anzahl

-------------------- ----------

Max Mustermann 100000
Testuser 1

Damit die Daten gespeichert werden, muss nun noch ein

commit;

eingegeben werden.

 

Fazit:

Die Datenbank läuft, und erste Tests verliefen gut.

Mit shutdown immediate wird die Datenbank nun heruntergefahren, und der Rechner kann ausgeschalten werden.



Zuletzt geändert von Benjamin Wagner (admin)  am Nov 06 2008  um 09:28
<< Oracle10 unter Ubuntu 8.10 Übersicht Oracle10 unter Centos 4.8 32bit >>