====== Oracle ======
Informationen und Links zu den [[http://www.oracle.com/|Oracle]]-Installationen der Fakultät IM.
===== Verbindungsinformationen =====
Es sind ggf. verschiedene Instanzen der Oracle-Datenbank an der Fakultät IM verfügbar:
  * Oracle 19c R3, zentral auf dem Datenbankserver Hera installiert (''%%hera.hs-regensburg.de%%'')
  * Oracle 12c R1, zentral auf dem Datenbankserver Zeus installiert (''%%zeus.hs-regensburg.de%%'')
**Serververfügbarkeit:**
  * In einem Semester sind nicht unbedingt beide Server (Zeus / Hera) bzw. Datenbanken gleichzeitig online und verfügbar.
  * Welcher Server benutzt werden kann, erfahren sie ggf. von ihrem Dozenten oder einem [[public:service_und_support|IM-Mitarbeiter]].
==== Oracle 19c ====
|**Benutzername**             |//abc12345//                             |wie RZ-Account                                                                                                                        |
|**Passwort**                 |aktuelles Oracle-Passwort|Das aktuelle Passwort ist unabhängig vom RZ-Account, aber das Initialpasswort ist gleich dem Benutzernamen.                           |
|**Host**                     |''%%localhost%%''                        |für PHP-Webseiten auf dem Server Hera                                                                                                 |
|:::                          |''%%hera.hs-regensburg.de%%''            |über Netzwerk, von anderen Rechnern aus                                                                                               |
|**Port**                     |''%%1521%%''                             |Standardport                                                                                                                          |
|**Instanz**                  |''%%o19%%''                              |Oracle-Instanz für die Verbindung                                                                                                     |
|**Container**                |''%%IM%%''                               |Standard-Container unserer [[https://apex.oracle.com/pls/apex/germancommunities/dbacommunity/tipp/4561/index.html|Pluggable Database]]|
|**Container**                |''%%BIKE%%''                             |Container für Vorlesungen von Prof. Schicker                                                                                          |
==== Oracle 12c ====
|**Benutzername**             |//abc12345//                             |wie RZ-Account                                                                                             |
|**Passwort**                 |aktuelles Oracle-Passwort|Das aktuelle Passwort ist unabhängig vom RZ-Account, aber das Initialpasswort ist gleich dem Benutzernamen.|
|**Host**                     |''%%localhost%%''                        |für PHP-Webseiten auf dem Server Zeus                                                                      |
|:::                          |''%%zeus.hs-regensburg.de%%''            |über Netzwerk, von anderen Rechnern aus                                                                    |
|**Port**                     |''%%1522%%''                             |Standardport                                                                                               |
|**Instanz**                  |''%%ora12c%%''                           |Oracle-Instanz für die Verbindung                                                                          |
==== Weitere Informationen ====
  * Die Oracle Datenbank(en) sind für jeden PC im Campus-LAN oder per  verfügbar.
  * Das Benutzerpasswort ist für jede Oracle-Instanz separat, es wird NICHT synchronisiert.
  * Jeder Benutzer hat eine Quota von 150MB im Benutzer-Tablespace.
  * Der Benutzer-Tablespace wird NICHT gesichert (KEIN Backup).
===== Client-Konfiguration =====
**Datenbank-Instanz:**
  * Welche Datenbank-Instanz verwendet werden soll, erfahren sie von ihrem Dozenten.
==== Listener-Konfiguration ====
^  Listener-Name        ^  Hostname                   ^  Port      ^  Protokoll  ^
|''%%LISTENER_O19%%''   |''%%hera.hs-regensburg.de%%''|''%%1521%%''|''%%TCP%%''  |
|''%%LISTENER_ORA12C%%''|''%%zeus.hs-regensburg.de%%''|''%%1522%%''|''%%TCP%%''  |
==== Net-Services ====
^  Servicename  ^  Hostname                   ^  Port      ^  Protokoll  ^
|''%%O19%%''    |''%%hera.hs-regensburg.de%%''|''%%1521%%''|''%%TCP%%''  |
|''%%IM%%''     |''%%hera.hs-regensburg.de%%''|''%%1521%%''|''%%TCP%%''  |
|''%%BIKE%%''   |''%%hera.hs-regensburg.de%%''|''%%1521%%''|''%%TCP%%''  |
|''%%ORA12C%%'' |''%%zeus.hs-regensburg.de%%''|''%%1522%%''|''%%TCP%%''  |
==== Konfigurationsdateien ====
Sie können auch die bereits erstellten Konfigurationsdateien ''%%tnsnames.ora%%'' und ''%%sqlnet.ora%%'' herunterladen
  * {{wiki:sqlnet.ora|Datei:sqlnet.ora}}
  * {{wiki:tnsnames.ora|Datei:tnsnames.ora}}
und in Ihr Oracle-Client-Verzeichnis unter ''%%network\admin%%'' kopieren, z.B.
  C:\Programme\Oracle\product\11.1.0\client\network\admin\
oder
  C:\oracle\client\NETWORK\ADMIN
===== Zugriff auf die Oracle-Datenbank =====
==== Unter Linux ====
Mit dem Kommando ''%%sqlplus%%'' können Sie sich mit der Datenbank verbinden:
  % sqlplus /@
Benutzername, Passwort und Instanz werden entsprechend der #Verbindungsinformationen angegeben.
==== Unter Windows ====
Zum Zugriff auf die Datenbank wird der GUI-Client //SQL Developer// benutzer werden, der sich unter
  Start → SQL Developer
befindet. Benutzername, Passwort und Instanz werden entsprechend der #Verbindungsinformationen angegeben.
==== Mit PHP ====
Auf dem Server Zeus mit der Oracle 12c Datenbank ist auch der [[http://httpd.apache.org/|Apache-Webserver]] mit [[http://www.php.net/|PHP]] installiert. Der Webzugriff auf die Datenbank via PHP ist deshalb ebenfalls möglich. Dazu muss ein entsprechendes Skript im Unterverzeichnis ''%%public_html%%'' des Linux Home-Verzeichnisses abgelegt werden. Das Skript wird (entsprechende Berechtigungen vorausgesetzt) vom Server bei Aufrufen via Webbrowser ausgeführt.
**Beispielskript**
";
$pass = "";
$pdo = new PDO($conn, $user, $pass);
$query = "SELECT foo FROM bar";
$stmt  = $pdo->query($query);
while ( $result = $stmt->fetch() )        // alle Zeilen ausgeben
  echo "Ausgabe: $result[FOO]
";
$pdo->commit();
$pdo=false;       // Beenden der DB-Verbindung
?>
Benutzername und Passwort werden entsprechend der [[#Verbindungsinformationen]] für Oracle 12c angegeben.
===== Passwort ändern =====
Standardmäßig sollte man auch sein Passwort ändern. Durchgeführt kann dies mit folgendem SQL-Befehl werden:
  SQL> alter user  identified by ;
  User altered.
Testen:
  SQL> connect /@ora12c
  Connected.
===== Siehe auch =====
  * [[public:FAQ_Linux|FAQ Linux]]
  * [[public:accounts|Accounts]]
  * [[public:mysql_mariadb|MySQL-Datenbank]]
  * [[postgres|Postgres-Datenbank]]
===== Weblinks =====
  * [[http://tahiti.oracle.com/|Original Dokumentation]] von Oracle zur Datenbank und zugehörigen Werkzeugen
  * [[http://www.oracle.com/|Oracle-Homepage]]
  * [[http://httpd.apache.org/|Apache-Webserver]]
  * [[http://www.php.net/|PHP-Homepage]]