Mit Hilfe dieses Befehls show databases;
kann ich Datenbanken in MySQL sehen .
Wie zeige ich die verfügbaren Datenbanken in Oracle an ?
Antworten:
Sie können sich eine MySQL- "Datenbank" als Schema / Benutzer in Oracle vorstellen. Wenn Sie über die Berechtigungen verfügen, können Sie die DBA_USERS
Ansicht abfragen , um die Liste der Schemas anzuzeigen:
SELECT * FROM DBA_USERS;
SELECT * FROM DBA_USERS;
SELECT NAME FROM v$database;
Zeigt den Datenbanknamen in Oracle an
XE
der eindeutige Name gedruckt , der Ihre Instanz / Datenbank eindeutig identifiziert (heißt er SID?). Auf der anderen Seite gibt der show databases
Befehl von MySQL aus , was MySQL als Datenbank bezeichnet, auch bekannt als Schema (ungefähr das, was Sie SELECT USERNAME FROM DBA_USERS
in Oracle erhalten).
Oracle verfügt nicht über ein einfaches Datenbankmodell wie MySQL oder MS SQL Server. Ich finde es am nächsten, die Tablespaces und die entsprechenden Benutzer darin abzufragen.
Zum Beispiel habe ich einen DEV_DB-Tabellenbereich mit allen meinen tatsächlichen 'Datenbanken' darin:
SQL> SELECT TABLESPACE_NAME FROM USER_TABLESPACES;
Ergebend:
SYSTEM SYSAUX UNDOTBS1 TEMP USERS EXAMPLE DEV_DB
Es ist auch möglich, die Benutzer in allen Tabellenbereichen abzufragen:
SQL> select USERNAME, DEFAULT_TABLESPACE from DBA_USERS;
Oder innerhalb eines bestimmten Tablespace (am Beispiel meines DEV_DB-Tablespace):
SQL> select USERNAME, DEFAULT_TABLESPACE from DBA_USERS where DEFAULT_TABLESPACE = 'DEV_DB';
ROLES DEV_DB
DATAWARE DEV_DB
DATAMART DEV_DB
STAGING DEV_DB
Vielleicht könnten Sie diese Ansicht verwenden, aber ich bin nicht sicher.
select * from v$database;
Aber ich denke, es werden nur Informationen über die aktuelle Datenbank angezeigt.
Andere Option, wenn die Datenbank unter Linux läuft ... wäre ungefähr so:
SQL>!grep SID $TNS_ADMIN/tnsnames.ora | grep -v PLSExtProc
Ich bin mir nicht ganz sicher, aber normalerweise hat ein Server eine Datenbank (mit vielen Benutzern). Wenn Sie viele Datenbanken erstellen, bedeutet dies, dass Sie auch viele Instanzen, Listener usw. erstellen. So können Sie Ihre überprüfen LISTENER
, um es zu identifizieren.
Bei meinen Tests habe ich 2 Datenbanken ( dbtest
und dbtest_1
) erstellt. Als ich meinen LISTENER-Status überprüfte, sah es so aus:
lsnrctl status
....
STATUS des HÖRERS
..... .....
(BESCHREIBUNG = (ADRESSE = (PROTOKOLL = TCP) (GASTGEBER = 10.10.20.20) (PORT = 1521)))
Leistungsübersicht ...
Der Dienst "dbtest" hat 1 Instanz (en).
Instanz "dbtest", Status READY, hat 1 Handler für diesen Service ...
Der Dienst "dbtest1XDB" hat 1 Instanz (en).
Die Instanz "dbtest1", Status READY, hat 1 Handler für diesen Dienst ...
Der Dienst "dbtest_1" hat 1 Instanz (en).
Die Instanz "dbtest1", Status READY, verfügt über 1 Handler für diesen Dienst ... Der Befehl wurde erfolgreich ausgeführt