ver una todas tengo tablas scripts saber las ejemplos developer datos cuantas conectarse conectar como bases oracle oracle11g sqlplus

una - Cómo visualizar bases de datos en Oracle 11g usando SQL*Plus



ver todas las bases de datos en oracle (5)

Con ayuda de este comando, show databases; Puedo ver bases de datos en MySQL .

¿Cómo mostrar las bases de datos disponibles en Oracle ?


No estoy claro al respecto, pero normalmente un servidor tiene una base de datos (con muchos usuarios), si crea muchas bases de datos significa que crea muchas instancias, oyentes, ... también. Entonces puede verificar su LISTENER para identificarlo.

En mi prueba, creé 2 bases de datos ( dbtest y dbtest_1 ), así que cuando dbtest_1 estado de mi LISTENER, aparecía así:

lsnrctl status

....

ESTADO DEL ESCUCHA

.....

(DESCRIPTION = (DIRECCIÓN = (PROTOCOLO = tcp) (HOST = 10.10.20.20) (PORT = 1521)))

Resumen de servicios ...

El servicio "dbtest" tiene 1 instancia (s).

Instance "dbtest", estado READY, tiene 1 controlador (es) para este servicio ...

El servicio "dbtest1XDB" tiene 1 instancia (s).

Instance "dbtest1", estado READY, tiene 1 controlador (es) para este servicio ...

El servicio "dbtest_1" tiene 1 instancia (s).

Instance "dbtest1", estado READY, tiene 1 controlador (es) para este servicio ... El comando se completó correctamente


Oracle no tiene un modelo de base de datos simple como MySQL o MS SQL Server. Encuentro que lo más parecido es consultar los espacios de tabla y los usuarios correspondientes dentro de ellos.

Por ejemplo, tengo un tablespace DEV_DB con todas mis ''bases de datos'' reales dentro de ellos:

SQL> SELECT TABLESPACE_NAME FROM USER_TABLESPACES;

Resultando en:

SYSTEM SYSAUX UNDOTBS1 TEMP USERS EXAMPLE DEV_DB

También es posible consultar a los usuarios en todos los espacios de tabla:

SQL> select USERNAME, DEFAULT_TABLESPACE from DBA_USERS;

O dentro de un tablespace específico (usando mi tablespace DEV_DB como ejemplo):

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


Puede pensar en una "base de datos" de MySQL como un esquema / usuario en Oracle. Si tiene los privilegios, puede consultar la vista DBA_USERS para ver la lista de esquemas.


Tal vez podrías usar esta vista, pero no estoy seguro.

select * from v$database;

Pero creo que solo le mostrará información sobre el db actual.

Otra opción, si el db se ejecuta en Linux ... sería algo como esto:

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


SELECT NAME FROM v$database; muestra el nombre de la base de datos en el oráculo