Oracle 中的私有数据库 Link

Private DB Link in Oracle

我想创建一个私有数据库link。我已经搜索了 Oracle 网站,很清楚。如果有人能解释创建私有数据库 link 的语法以及私有数据库 link 和 public 数据库 link 之间的语法差异,这将很有帮助。

最后,我如何验证创建的数据库 Link 是私有的还是 public?

正如 MT0 指出的那样,SQL Language Reference 解释了缺少关键字 PUBLIC 使得数据库 link 私有。

下面是创建 public 和私有数据库 link 的示例:

--Create public and private database links.
create public database link public_link
connect to fake_user identified by fake_password using 'fake tns entry';

create database link private_link
connect to fake_user identified by fake_password using 'fake tns entry';

以下是查询数据字典以查找 link 是 public 还是私有的方法。 Public link 归 PUBLIC 所有,私有 link 归真实用户所有。

--View the database links in the data dictionary.
--(The link name may be slightly different than what you asked for because of the DB_DOMAIN.)
select owner, db_link
from all_db_links
where db_link like '%LINK%'
order by 1,2;

OWNER     DB_LINK
-------   ----------------------------
JHELLER   PRIVATE_LINK.COYOTE.ACME.COM
PUBLIC    PUBLIC_LINK.COYOTE.ACME.COM