在 Oracle 里 “数据库” 的概念和其他数据库系统有所不同,Oracle 一个实例通常对应一个数据库,但可以包含多个不同的模式(类似于其他数据库系统中的用户数据库)
你可以在 SQL*Plus 或者 SQL Developer 等工具中执行如下 SQL 语句:
SELECT name FROM v$database;

查看所有用户
SELECT username FROM dba_users;

dba_users
是一个数据字典视图,它包含了数据库中所有用户的信息,username
字段就是用户的名称。执行该语句需要有 DBA
权限。
你可以通过查看 $ORACLE_HOME/dbs
目录下的 init*.ora
或者 spfile*.ora
文件来获取相关信息,但更常用的是通过 srvctl
命令(前提是使用了 Oracle Grid Infrastructure):
- 该命令会列出所有配置的数据库实例信息。
- 示例输出:
Database unique name: orcl
Database name: orcl
Oracle home: /u01/app/oracle/product/19.3.0/dbhome_1
Oracle user: oracle
Spfile: +DATA/orcl/spfileorcl.ora
Domain:
Start options: open
Stop options: immediate
Database role: PRIMARY
Management policy: AUTOMATIC
Server pools: orcl
Disk Groups: DATA,FRA
Mount point paths:
Services:
Type: RAC
Startup state: FORCE
可以查看服务列表,在命令提示符中输入:
services.msc