专业编程教程与实战项目分享平台

网站首页 > 技术文章 正文

【Oracle】查看 dblink 密码方法 oracle查看dbname

ins518 2024-10-16 12:35:14 技术文章 10 ℃ 0 评论

本次将给大家讲一下在Oracle 10g以下版本要如何才可以查看dblink的密码的方法。
DBlink作为跨域数据访问的重要手段,在同一企业不同项目之间需要产生数据交互的场景中使用得比较多。虽然它会产生安全性低、性能较差、传输不稳定等诸多问题,但是对于开发人员来说确实非常方便。
由于要访问远程数据库,因此创建dblink时是需要写入远程数据库登录用户名和密码的,但在某些交接不清的情况下(内部管理混乱且出现交接断层时),会造成信息缺失。但生产的东西你又不想碰(前面已经说了交接不清了,一碰就死),若是10g以下的OracleDB是可以通过命令找回来的。

重申:本方法只适用于Oracle 10g以下版本且使用DBA权限登录,亲测可用。

  1. 先查询dblink:
SELECT * FROM SYS.link$;
  1. 通过查询dblink对应的用户信息可以定位到密码:
SELECT * FROM SYS.link$ l, SYS.user$ u  
WHERE l.owner# IN (
                SELECT kzsrorol 
                FROM x$kzsro)
             AND l.owner# = u.user#;

由于10g以下的都是采取明码的保存方式可以这样找回来,10g以后就不是明文保存了,所以没有办法实在不行就创建一个新的dblink吧。

如果是以创建新dblink来处理的思路来解决的话,要按照 “创建 -> 验证 -> 删除 -> 重命名” 这套流程来进行以确保万无一失。因为使用新的dblink最怕的是什么?是不能穷举所有需要使用的地方,这个时候没有办法了,只能通过重命名将新的dblink替代掉旧的,在命名上保持一致,在这之前需要先将旧的dblink删除或者改名。

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表