Erkennen, ob eine Oracle-Datenbank installiert ist
-
08-07-2019 - |
Frage
Ich frage mich, ob es eine Möglichkeit, wenn eine Instanz von Oracle auf einem System zu sagen, war eine Datenbank installiert ist oder nicht?
Dies ist für ein Installationsskript, und ich brauche, um zu überprüfen, dass es eine tatsächliche Datenbank vorhanden ist, bevor mit dem Laden meiner eigenen Tabellen auf diese Datenbank fortfahren. jemand in Angriff genommen hat dieses Problem vor?
Prost
Lösung
Überprüfen Sie für die Existenz eines ORACLE_HOME. Es ist auch zu erwarten, dass diese Umgebung für die Installation konfiguriert werden, damit die Umgebungsvariablen zu testen und Aussteigen mit einer vernünftigen Diagnose (möglicherweise darauf hindeutet, sie laufen oraenv) ein guter erster Start ist. Wenn Sie eine ORACLE_HOME, ORACLE_SID oder andere geeignete Umgebungsvariable eingerichtet haben, können Sie dann überprüfen, für die Existenz eines Orakels nach Hause und Test für die Datenbankkonnektivität und Berechtigungen.
Andere Tipps
Für Oracle 10g unter Windows:
- Überprüfen Sie die Registrierung:
- Der Schlüssel
HKLM\SOFTWARE\ORACLE
muss vorhanden sein. - Ein Unterschlüssel muss, dass vorhanden sind:
- hat einen Namen mit
KEY_
(wieKEY_OraDb10g_home1
, das Ende Zeichenfolge einen Oracle-Name ist) zu starten. - hat einen Wert, dessen Name beginnt mit
ORA_
und endet mit_AUTOSTART
. (WieORA_XE_AUTOSTART
, die mittlere Saite einen Instanznamen zu sein).
- hat einen Namen mit
- Der Schlüssel
Hüten Sie sich vor, ein Oracle-Client-Installation (ohne Datenbankinstanz dann), erstellte Einträge in der Registrierung und Umgebungsvariablen (wie ORACLE_HOME
). Aus diesem Grund ist das obige Muster ist ein bisschen kompliziert.
Dieses Muster ist sehr wahrscheinlich auch für Oracle 9i arbeiten und möglicherweise Oracle 8i.
Sie tnsping
verwenden könnten zu überprüfen, ob die Datenbank-Listener aktiv sind, das wäre ein guter Indikator sein. Other than that, warum nicht nur einfach eine Testverbindung tun? Wenn es Teil eines Installationsprozesses ist, können Sie den Benutzer auffordern, die entsprechenden Verbindungsinformationen einzugeben, wenn Sie nicht wissen, was sie im voraus sein wird.
Sehen Sie die / etc / oratab Datei für Oracle homes.These Häuser haben die Datenbank-Software sowie dem Datenbanknamen aus, dass installiert home.Then Sie überprüfen können, ob die Datenbank Sound ist oder nicht, indem sie zu starten.
Ich bin nicht sicher über Oracle, aber für MySQL und PostgreSQL ich folgendes tun:
$yum grouplist | grep SQL
Das gibt:
MySQL Database client
MySQL Database server
PostgreSQL Database client
PostgreSQL Database server
Also ich nehme an, Sie sollten versuchen:
$yum grouplist | grep Orac