我想将dblink从一个数据库迁移到另一个数据库,发现在源端直接用pl/sql developer查看DBLINK的创建sql,sql里里不包含用户的密码,所以在目标端创建失败。
这里用这种方法导出。
1.在源端查看LINK$表,导出insert语句
在源端用pl/sql developer执行如下查询sql,并将查询的结果导出成insert语句(< Export Query Results>-->sql file,另存为)
SELECT owner#, name,host, userid, flag,passwordx FROM LINK$;
2.在目标端执行insert语句
略
3.验证
注意:执行完成后在每个节点都测试一下dblink是否建成功:
select 1 from dual@link名称
--发现按这种方式导dblink,link$里的owner#和dba_users里的user_id对应不上(用户名称一样,但是userid发生变化),导致dblink无法使用,需要在新环境修改link$里的owner#为dba_users里查出来的user_id。
如果出现一个节点报未找到远程数据连接说明:文章来源:https://www.toymoban.com/news/detail-498152.html
另一个节点报dblink lock或者其它,即两个节点测试dblink结果不一致 ,需要在报未找到远程数据连接说明的节点清理数据库缓存,执行:
SQL>alter system flush shared_pool;
SQL>alter system flush buffer_cache;文章来源地址https://www.toymoban.com/news/detail-498152.html
到了这里,关于怎样导dblink的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!