skip to content

IT and more

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.

Oracle: Oracle10 unter Debian Lenny 5.0

Posted by Benjamin Wagner (benjamin) on Feb 16 2019

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 Debian Netinst-CDROM als ISO-Image für Debian 5.0.

Die virtuelle Maschine hat folgende Hardwareausstattung:

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

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

Bei der Paketauswahl wird Standard-System und Desktop-System ausgewählt. Dies erleichtert später die weiteren Tests. (Alternativ kann auch nur das Grundsystem installiert werden (nur ca. 25 Pakete), dann müssen jedoch alle Tools wie make etc. manuell eingespielt werden, was für den ersten Anfang ziemlich umfangreich ist. Für den Produktiveinsatz ist die Installation als Desktop-System ein enormes Sicherheitsrisiko!)

Es werden nun ca. 940 Softwarepakete heruntergeladen und installiert. Dies kann bis zu einer Stunde dauern. 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:

apt-get install  libaio1 libc6-dev binutils rpm libxp6 make
 

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
useradd oracle oinstall
useradd 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 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

Damit der Installer funktioniert, muss von Sun noch JAVA installiert werden. Dazu lädt man von sun.com die aktuelle JDK herunter, und führt anschließend die Datei aus, z.b. mit sh ./jdk-6u7-linux-i586.bin. Den bei der Installation erzeugten Ordner jdk1.6.0.07 verschiebt man nach /opt, und legt einen neuen Link an:

mv jdk1.6.0.07 /opt/
ln -sf /opt/jdk1.6.0_07/bin/java /usr/bin/java

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 die Meldung auftauchen, dass das Ziel „all_no_orcl ihsodbc“ nicht erstellt werden kann, einfach auf weiter klicken, wir werden das nachher fixen.

Nun erneut 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 die Kiste neu gestartet wird.

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:

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.

Last changed: Feb 16 2019 at 01:11

Back

Kommentar

email address:
Homepage:
URL:
Comment:

Name:

E-Mail (required, not public):

Website:

Kommentar :

Prüfziffer:
18 minus 5  =  Bitte Ergebnis eintragen

Up
K