1.创建dblink第一种方法,是在本地数据库tnsnames.ora文件中配置了要远程访问的数据库。

1.设置监听:
①[root@host02 ~]# vi /etc/hosts
添加:【IP和名字】
192.168.206.2   host02
②vi listener.ora:
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = host02)(PORT = 1521))
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
  )

ADR_BASE_LISTENER = /u01/app/oracle

③vi tnsnames.ora:
ENMO=
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = host02)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = ENMO)
    )
  )
④查看监听状态:
[oracle@host02 ~]$ lsnrctl status

LSNRCTL for Linux: Version 11.2.0.4.0 - Production on 01-DEC-2016 20:37:30

Copyright (c) 1991, 2013, Oracle.  All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=host02)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 11.2.0.4.0 - Production
Start Date                01-DEC-2016 20:18:58
Uptime                    0 days 0 hr. 18 min. 32 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   /u01/app/oracle/product/11.2.0/db_1/network/admin/listener.ora
Listener Log File         /u01/app/oracle/diag/tnslsnr/host02/listener/alert/log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=host02)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
Services Summary...
Service "ENMO" has 1 instance(s).
  Instance "ENMO", status READY, has 1 handler(s) for this service...
Service "ORCLXDB" has 1 instance(s).
  Instance "ENMO", status READY, has 1 handler(s) for this service...
The command completed successfully

⑤连接到sys赋权限:
SQL> conn / as sysdba
Connected.
SQL> grant create public database link,create database link to scott;

Grant succeeded.
⑥创建dblink:
SQL> create database link emp connect to scott identified by tiger using host02;

Database link created.

 

2.创建dblink第二种方法,是在本地数据库tnsnames.ora文件中没配置要远程访问的数据库。

1.设置监听:
①[root@host02 ~]# vi /etc/hosts
添加:【IP和名字】
192.168.206.2   host02
②vi listener.ora:
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = host02)(PORT = 1521))
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
  )

ADR_BASE_LISTENER = /u01/app/oracle

③vi tnsnames.ora:
ENMO=
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = host02)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = ENMO)
    )
  )
④查看监听状态:
[oracle@host02 ~]$ lsnrctl status

LSNRCTL for Linux: Version 11.2.0.4.0 - Production on 01-DEC-2016 20:37:30

Copyright (c) 1991, 2013, Oracle.  All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=host02)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 11.2.0.4.0 - Production
Start Date                01-DEC-2016 20:18:58
Uptime                    0 days 0 hr. 18 min. 32 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   /u01/app/oracle/product/11.2.0/db_1/network/admin/listener.ora
Listener Log File         /u01/app/oracle/diag/tnslsnr/host02/listener/alert/log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=host02)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
Services Summary...
Service "ENMO" has 1 instance(s).
  Instance "ENMO", status READY, has 1 handler(s) for this service...
Service "ORCLXDB" has 1 instance(s).
  Instance "ENMO", status READY, has 1 handler(s) for this service...
The command completed successfully

⑤连接到sys赋权限:
SQL> conn / as sysdba
Connected.
SQL> grant create public database link,create database link to scott;

Grant succeeded.
⑥创建dblink:
SQL> create database link emp connect to scott identified by tiger using 
  2  '(DESCRIPTION =
  3      (ADDRESS = (PROTOCOL = TCP)(HOST = host02)(PORT = 1521))
  4      (CONNECT_DATA =
  5        (SERVER = DEDICATED)
  6        (SERVICE_NAME = ORCL)
  7      )
  8    )
  9  ';

Database link created.

3.创建公共的dblink
语法:create public database link emp using 。。。

posted on 2016-12-04 12:59  Tomatoes  阅读(2113)  评论(0编辑  收藏  举报