С помощью этой команды show databases;
я могу видеть базы данных в MySQL.
Как показать доступные базы данных в Oracle?
С помощью этой команды show databases;
я могу видеть базы данных в MySQL.
Как показать доступные базы данных в Oracle?
Вы можете думать о базе данных mysql как о схеме/пользователе в Oracle. Если у вас есть привилегии, вы можете запросить представление DBA_USERS, чтобы просмотреть список схем.
SELECT NAME FROM v$database;
показывает имя базы данных в oracle
Возможно, вы могли бы использовать это представление, но я не уверен.
select * from v$database;
Но я думаю, что он только покажет вам информацию о текущем db.
Другой вариант, если db работает в linux... что-то вроде этого:
SQL>!grep SID $TNS_ADMIN/tnsnames.ora | grep -v PLSExtProc
В Oracle нет простой модели базы данных, такой как MySQL или MS SQL Server. Я считаю, что самое близкое к тому, чтобы запросить табличные пространства и соответствующие им пользователи.
Например, у меня есть табличное пространство DEV_DB со всеми моими "базами данных" внутри них:
SQL> SELECT TABLESPACE_NAME FROM USER_TABLESPACES;
Результат:
SYSTEM SYSAUX UNDOTBS1 TEMP USERS EXAMPLE DEV_DB
Также можно запросить пользователей во всех табличных пространствах:
SQL> select USERNAME, DEFAULT_TABLESPACE from DBA_USERS;
Или в пределах определенного табличного пространства (используя в качестве примера мое табличное пространство 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
Я не совсем понимаю, но, как правило, у одного сервера есть одна база данных (со многими пользователями), если вы создаете много баз данных, значит, вы создаете множество экземпляров, слушателей.... Поэтому вы можете проверить свой LISTENER
, чтобы идентифицировать его.
В моем тестировании я создал 2 базы данных (dbtest
и dbtest_1
), поэтому, когда я проверяю статус LISTENER, он выглядит следующим образом:
lsnrctl status
....
СОСТОЯНИЕ ПРОСЛУШИВАНИЯ
.....
(ОПИСАНИЕ = (ADDRESS = (PROTOCOL = tcp) (HOST = 10.10.20.20) (PORT = 1521)))
Резюме служб...
Служба "dbtest" имеет 1 экземпляр.
Экземпляр "dbtest", статус READY, имеет 1 обработчик для этой службы...
Сервис "dbtest1XDB" имеет 1 экземпляр (ы).
Экземпляр "dbtest1", статус READY, имеет 1 обработчик для этой службы...
Служба "dbtest_1" имеет 1 экземпляр (ы).
Экземпляр "dbtest1", статус READY, имеет 1 обработчик для этой службы... Команда успешно завершена