如何确定在Oracle RDBMS的查询中使用哪些数据库链接?

时间:2010-03-18 03:10:49

标签: database oracle

我想知道是否正在使用任何数据库链接,模式以及哪些表。有可能通过数据字典以某种方式吗?

这可以通过Oracle RDBMS实现吗?

3 个答案:

答案 0 :(得分:3)

这将显示在数据库上设置的任何数据库链接:

select * from dba_db_links;

然后,您必须使用db链接搜索任何查询或对象,方法是对它们进行文本搜索,以获取链接语法<tablename>@<dblink name>

答案 1 :(得分:3)

我知道道格曼的答案是被接受和准确的。但这里有更多信息。

如果用户不是DBA用户,则无权访问DBA_DB_LINKS。此外,USER_DB_LINKS将显示当前用户创建的数据库链接,以便不会列出用户有权访问的所有数据库链接。

您可以使用ALL_DB_LINKS获取用户有权访问的链接。

select * from all_db_links;

答案 2 :(得分:1)

您可以先编辑架构的所有sql代码: 例如:

SELECT DBMS_METADATA.GET_DDL(object_type, object_name, owner)
  FROM all_OBJECTS
  WHERE (OWNER = 'your schema name');

然后在结果中搜索db_link的模式,看起来像@dblink_name