在Oracle里面,我通过图形界面创建dblink,老是不成功,报错。问了同事后,同事建议我用sql创建,于是复制了如下sql
create database link dblink_test
connect to
登录用户名
identified by
登录密码
using '(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST =
19.19.19.19
)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME =
数据库实例名
)
)
)'
使用了如上语句,很好,创建成功。
使用dblink的方法如下:
select * from 表名@dblink名
执行的时候提示 ORA-01017 、ORA-02063 错误。网络上搜索一下解决问题的方法,主要是数据库版本不一致,导致密码错误引起的
解决办法:将密码用双引号引起来。如 identified by "登录密码"
完成的创建sql如下
create database link dblink_test
connect to
登录用户名
identified by
"登录密码"
using '(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST =
19.19.19.19
)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME =
数据库实例名
)
)
)'
再次执行 select * from 表名@dblink名 则可以世界看到数据了
之所以用到dblink,是因为想创建另外一个库的表,但不想复制数据及结构,觉得麻烦,所以通过dblink,一条sql搞定
以上内容,来自以下网页的帮助
http://www.baidu.com/
http://oracle.chinaitlab.com/induction/915197.html
http://blog.163.com/js_xiaoyi/blog/static/196600094201210274837140/