创建数据库链接

我们假设我们有两个数据库 ORA1ORA2。我们可以使用数据库链接从数据库 ORA1 访问 ORA2 的对象。

先决条件:要创建专用数据库链接,你需要 CREATE DATABASE LINK 权限。要创建私有数据库链接,你需要 CREATE PUBLIC DATABASE LINK 权限。

* 两个实例上都必须存在 Oracle Net

如何创建数据库链接:

来自 ORA1:

SQL> create <public> database link ora2 connect to user1 identified by pass1 using <tns name of ora2>;

数据库链接已创建

现在我们已经设置了 DB 链接,我们可以通过从 ORA1 运行以下内容来证明:

SQL> Select name from V$DATABASE@ORA2; -- should return ORA2

你还可以从 ORA1 访问 ORA2 的数据库对象,因为用户 user1 对 ORA2 上的那些对象具有 SELECT 权限(例如下面的 TABLE1):

  SELECT COUNT(*) FROM TABLE1@ORA2;

预 requistes:

  • 两个数据库都必须启动并运行(打开)。
  • 两个数据库侦听器都必须启动并运行。
  • 必须正确配置 TNS。
  • 用户 user1 必须存在于 ORA2 数据库中,必须检查并验证密码。
  • 用户 user1 必须至少具有 SELECT 权限,或访问 ORA2 上的对象所需的任何其他权限。