Oracle修改DatabaseLink密码

生产库上要修改生产用户的密码,密码修改完后就涉及到修改dblink的密码。

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:空间域名、网站空间、营销软件、网站建设、向阳网站维护、网站推广。

11gR2版本之前只能删除dblink后重建,11gR2版本后可以直接修改。

修改dblink的密码有两种方法:

    1、删除dblink后重建

    2、直接修改dblink的用户密码

下面测试两种方法:

测试库版本:11.2.0.4.0

创建两个dblink,一个PUBLIC另一个PRIVATE

create PUBLIC database link link_101 connect to SYSTEM identified by "123456" using '(DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.56.11)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = mydb)
    )
  )';
create database link link_102 connect to SYSTEM identified by "123456" using '(DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.56.11)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = mydb)
    )
  )';
sys@ORCL>select * from dual@link_101;

DUM
---
X

sys@ORCL>select * from dual@link_102;

DUM
---
X

修改远端数据库密码

SQL> alter user system identified by "654321";

User altered.

sys@ORCL>select * from dual@link_101;
select * from dual@link_101
                   *
ERROR at line 1:
ORA-01017: invalid username/password; logon denied
ORA-02063: preceding line from LINK_101


sys@ORCL>select * from dual@link_102;
select * from dual@link_102
                   *
ERROR at line 1:
ORA-01017: invalid username/password; logon denied
ORA-02063: preceding line from LINK_102

方法一:

sys@ORCL>drop public database link link_101;

Database link dropped.

sys@ORCL>drop database link link_102;

Database link dropped.

create PUBLIC database link link_101 connect to SYSTEM identified by "654321" using '(DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.56.11)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = mydb)
    )
  )';

create database link link_102 connect to SYSTEM identified by "654321" using '(DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.56.11)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = mydb)
    )
  )';

sys@ORCL>select * from dual@link_101;

DUM
---
X

sys@ORCL>select * from dual@link_102;

DUM
---
X

方法二:

sys@ORCL>select * from dual@link_101;
select * from dual@link_101
                   *
ERROR at line 1:
ORA-01017: invalid username/password; logon denied
ORA-02063: preceding line from LINK_101

sys@ORCL>select * from dual@link_102;
select * from dual@link_102
                   *
ERROR at line 1:
ORA-01017: invalid username/password; logon denied
ORA-02063: preceding line from LINK_102


sys@ORCL>alter public database link link_101 connect to system identified by "654321";

Database link altered.

sys@ORCL>alter database link link_102 connect to system identified by "654321";

Database link altered.

sys@ORCL>select * from dual@link_101;

DUM
---
X

sys@ORCL>select * from dual@link_102;

DUM
---
X

方法二如果提示ORA-01031: insufficient privileges,则赋权grant alter database link to zx;


文章题目:Oracle修改DatabaseLink密码
文章位置:http://scyanting.com/article/jgpoip.html