回答
你可以把一个mysql“数据库”作为Oracle架构/用户。如果您有权限,则可以查询DBA_USERS视图以查看模式列表。
也许你可以使用这种观点,但我不确定。
select * from v$database;
但我认为它只会告诉你有关当前分贝的信息。
其他选项,如果数据库在Linux上运行...是对子级是这样的:
SQL>!grep SID $TNS_ADMIN/tnsnames.ora | grep -v PLSExtProc
第一个没有在11g中工作:“ORA-00942:表或视图不存在“ – a1an 2012-07-18 09:27:23
Hi @ a1an。 毫无疑问,11g中存在v $数据库。检查您是否正在以足够的权限执行查询。 这里有关于oracle 11g的v $ database的文档。 http://docs.oracle.com/cd/B28359_01/server.111/b28320/dynviews_1086.htm Algo,在这里你有一个关于在oracle 11g中使用v%数据库的例子。 http://neeraj-dba.blogspot.com.es/2011/10/switchover-to-physical-standby-database.html 祝你好运! – Jonathan 2012-07-18 10:35:33
可能是jsut权限问题,执行它作为sysdba工作 – a1an 2012-07-18 15:23:40
SELECT NAME FROM v$database;
显示了甲骨文
我认为这就是问题所在。或者至少这是当我听到“数据库”......与模式(或用户)相对时我想到的。 – 2015-01-12 19:50:40
的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
),所以当我检查我的侦听器的状态,似乎是这样的:
lsnrctl status
....
听者
的状态.....
(DESCRIPTION =(ADDRESS =(PROTOCOL = tcp)(HOST = 10.10.20 0.20)(PORT = 1521)))
服务摘要...
服务 “dbtest” 有1个实例(S)。
实例 “dbtest”,状态READY,为这些服务1个处理器(S)...
服务 “dbtest1XDB” 有1个实例(S)。
实例 “dbtest1”,状态READY,为这些服务1个处理器(S)...
服务 “dbtest_1” 有1个实例(S)。
实例 “dbtest1”,状态READY,为这些服务1个处理器(S)...命令成功完成
- 1. SQL Express vs SQL Plus
- 2. 如何使用CONCAT在SQL Plus中解析SP2-0734?
- 3. 如何在SQL * Plus中使用begin/end运行Oracle查询?
- 4. Sql Plus如何使用时间戳复制表
- 5. 如何使用SQL * Plus从Oracle复制到Sybase?
- 6. SQL Plus和www.apex.oracle.com
- 7. SQL Plus SP2-0606
- 8. 如何使用google-plus-ios-sdk-1.7.1 sdk登录google-plus?
- 9. Adblock Plus如何在Chrome中使用?
- 10. 如何查看使用SQL PLUS在SQL开发人员上创建的表?
- 11. SQL PLUS-显示表
- 12. Oracle ODBC和SQL Plus
- 13. 问题与SQL Plus
- 14. DEFINE_EDITOR = vi in sql * plus
- 15. SQL * PLUS SET命令
- 16. 从一个表复制到另一个使用sql(sql * plus)
- 17. 从PowerShell执行SQL * Plus
- 18. Perl脚本中的SQL * Plus
- 19. Oracle权限授予SQl Plus
- 20. oracle sql plus脚本太长
- 21. 如何使用TIMESTAMP数据类型减少Oracle(SQL Plus)中列的宽度?
- 22. 如何在sql plus中使用LIKE语句和多个通配值?
- 23. SQL * Plus用户输入异常处理
- 24. sql plus循环中的.sql脚本
- 25. SQL获取非重复值[Oracle SQL * Plus]
- 26. Google Plus授权使用Symfony2
- 27. 如何启动dired plus
- 28. Oracle SQL * Plus:使用替换变量两次
- 29. 在SQL * Plus连接字符串中使用变量
- 30. 记事本plus plus for Eclipse?
一些oracle数据库有很多没有对象的用户。对于这些,替代方案是SELECT DISTINCT OWNER FROM ALL_OBJECTS; – 2010-06-09 23:26:42
+1不错的选择,请注意,如果您不是特权用户并发出此查询,您将只能看到那些拥有至少其中一个对象的权限的所有者。 – dpbradley 2010-06-10 12:54:19
查询DBA_USERS给出“ORA-00942:表或视图不存在”,也许权限问题?注释中的“SELECT DISTINCT OWNER FROM ALL_OBJECTS;”正在使用相同的访问凭据。 db 11g – a1an 2012-07-18 09:31:17