Anmeldung

Benutzername: Passwort:
Haben Sie Ihre Zugangsdaten vergessen?


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 Debian Lenny 5.0 Übersicht
Oracle10 unter Ubuntu 8.10 Kurzanleitung für die Installation von Oracel10g unter Ubuntu 8.10

Hinweis: Für die Tests gehe ich davon aus, dass ihr über eine gültige Oracle-Lizenz verfügt. Falls nicht, kann von Oracle die Oracle-10-Express heruntergeladen werden, diese ist kostenlos verfügbar. Diese Anleitung basiert allerdings auf der Enterprise Edition 32bit für Linux.
Auch wenn Debian nicht supportet wird, so kann es für Tests problemlos genutzt werden. Für produktiven Einsatz von Oracle sollte man allerdings die unterstützen Linuxversionen SLES und RHEL nutzen. 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  Ubuntu 8.10 Desktop-CDROM als ISO-Image 32bit.

Die virtuelle Maschine hat folgende Hardwareausstattung:

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

Als erstes muss man Ubuntu 8.10 it 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.
(Hinweis: Unter Ubuntu ist der Root-Zugang per Default gesperrt. Um sich als User Root einzuloggen, muss man entweder mittels sudo -s eine Konsole mit Root-Rechten aufmachen, oder man gibt ein: sudo passwd root. Nachdem man dort ein Passwort für den User Root gesetzt hat, kann man sich auch als User root einloggen)

Nachdem das System fertig installiert ist, einloggen als User (während der Installation musste man ja einen User angeben) und folgende Befehle ausführen:

sudo -s
apt-get install libaio1 libc6-dev binutils rpm libxp6 make libstdc++5

Außerdem muss das Paket libaio heruntergeladen und installiert werden. Mit dem in Ubunti verfügbare Paket libaio1 habe ich die Datenbank nicht starten können. Ich habe das Paket als i386-Paket kompiliert.

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/10.2.0
export PATH=$PATH:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
export ORACLE_SID=ora10
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.shmmax=100000000

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 10.2 für Linux herunterladen. Anschließend wird die Datei mit unzip database_linux32.zip entpackt. Ein neuer Ordner database wird dabei erstellt. In diesen Ordner wechseln, und mit

./runInstaller -ignoreSysPrereqs

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/10.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.

Sollte der Fehler auftreten, dass /oracle/product/10.2.0/rdbms/lib/ins_rdbms.mk nicht compiliert werden konnte, hier ignorieren.  Nachdem die Installation durchgelaufen ist, einfach in einem Konsolenfenster ein "relink all" eingeben.

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/10.2.0/bin/lsnrctl start LISTENER brauchen wir jedesmal, wenn Der dechner 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 ora10, 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. Den Flash_Recovery-Bereich deaktivieren wir.

Bei den Datenbankkomponenten deaktivieren wir alle Haken bis auf „Enterprise Manager Repository“ , und klicken dann auf Standard-Datenbankkompomnenten. Hier wird auch alles deaktiviert. 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 ora10 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: ( bedeutet ENTER)

begin
for i in 1 .. 100000 loop
insert 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 15 2008  um 19:50
<< Oracle10 unter Debian Lenny 5.0 Übersicht