比如我想在192.168.1.1服务器上的orcl数据库创建dblink,访问192.168.1.2服务器上db01数据库的test用户,具体步骤如下:
以下所有操作都是在服务器192.168.1.1上完成
1 确保网络互通
ping 192.168.2
2 配置网络
cd $ORACLE_HOME/network/admin
[oracle@cc admin]$ vim tnsnames.ora
2 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.2)(PORT =
1521))
)
(CONNECT_DATA =
(SERVICE_NAME = db01)
)
)
如果tnsping 2可以说明网络配置成功
3 创建dblink
create
database link db01 connect to test identified by test using '2';
select * from test@db01;如果可以访问到test用户下数据,说明配置成功;
其中在创建过程中可能会出现以下几种错误:
(以下问题都是在192.168.1.2服务器上解决的)
问题一:
tnsping 2不通,出现TNS-12532 错误
解决办法:
注释掉默认域名
[oracle@card admin]$ vim sqlnet.ora
#NAMES.DEFAULT_DOMAIN = DEV.CN.TLAN
NAMES.DIRECTORY_PATH= (TNSNAMES, ONAMES, HOSTNAME)
问题二:
select* from test@db01;创建完dblink时查询数据出错
ERROR at line 1:
ORA-02085: database link FGOS.REGRESS.RDBMS.DEV.US.ORACLE.COM connects to ORCL
出现错误ORA-02085
解决办法:
当GLOBAL_NAMES参数设置为TRUE时,使用DATABASE LINK时,DATABASE LINK的名称必须与被连接库的GLOBAL_NAME一致。
SQL> show parameter global_names
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
global_names boolean TRUE
SQL> alter system set global_names=falsescope=both;
MySQL云数据库创建、配置与使用教程,五秒钟创建属于自己的mysql云数据库,申请地址:xmjar.cn