web-dev-qa-db-fra.com

Comment afficher des bases de données dans Oracle 11g à l'aide de SQL * Plus

Avec l'aide de cette commande show databases; Je peux voir les bases de données dans MySQL .

Comment afficher les bases de données disponibles dans Oracle ?

67
Nubkadiya

Vous pouvez considérer une "base de données" MySQL comme un schéma/utilisateur sous Oracle. Si vous disposez des privilèges, vous pouvez interroger la vue DBA_USERS pour afficher la liste des schémas.

47
dpbradley

SELECT NAME FROM v$database; affiche le nom de la base de données dans Oracle

73
Shan

Oracle ne dispose pas d'un modèle de base de données simple comme MySQL ou MS SQL Server. Je trouve que la chose la plus proche est d'interroger les tablespaces et les utilisateurs correspondants en leur sein.

Par exemple, j'ai un espace de table DEV_DB contenant toutes mes "bases de données" réelles:

SQL> SELECT TABLESPACE_NAME FROM USER_TABLESPACES;

Résultant en:

SYSTEM
SYSAUX
UNDOTBS1
TEMP
USERS
EXAMPLE
DEV_DB

Il est également possible d'interroger les utilisateurs dans tous les espaces de table:

SQL> select USERNAME, DEFAULT_TABLESPACE from DBA_USERS;

Ou dans un espace de table spécifique (en utilisant mon exemple d'espace de table DEV_DB):

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
19
Thomas Bratt

Peut-être que vous pourriez utiliser cette vue, mais je ne suis pas sûr.

select * from v$database;

Mais je pense que cela ne vous montrera que des informations sur la base de données actuelle.

Autre option, si la base de données est en cours d'exécution sous Linux ... Quelque chose ressemblerait à ceci:

SQL>!grep SID $TNS_ADMIN/tnsnames.ora | grep -v PLSExtProc
13
Jonathan

Je ne suis pas clair à ce sujet, mais en général, un serveur a une base de données (avec de nombreux utilisateurs). Si vous créez plusieurs bases de données, vous créez également de nombreuses instances, écouteurs, ... ainsi. Vous pouvez donc vérifier votre LISTENER pour l'identifier.

Lors de mes tests, j'ai créé 2 bases de données (dbtest et dbtest_1). Ainsi, lorsque je vérifie mon statut LISTENER, il se présente comme suit:

lsnrctl status

....

Statut de l'écouteur

.....

(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)) (hôte = 10.10.20.20) (PORT = 1521)))

Résumé des services ...

Le service "dbtest" a 1 instance (s).

Instance "dbtest", statut PRET, dispose de 1 gestionnaire (s) pour ce service ...

Le service "dbtest1XDB" a 1 instance (s).

L'instance "dbtest1", statut READY, dispose de 1 gestionnaire (s) pour ce service ...

Le service "dbtest_1" a 1 instance (s).

L'instance "dbtest1", statut READY, a 1 gestionnaire (s) pour ce service ... La commande s'est terminée avec succès

1
BongSey