在Oracle 10g中建立没有域名的DB_LINK


在Oracle 10g中建立没有域名的DB_LINK:

    记录如下:

    ——用alter语句这种修改方法,重启数据库,无效!

    alter database rename global_name to ORCL;

    ——用alter语句这种修改方法,重启数据库,有效!但是不是我想要的结果,虽然域名修改后变短了,但是建立DB_LINK还有域名存在!

    alter database rename global_name to ORCL.QIANGGUO.COM;

    ——用update语句这种修改方法,重启数据库,有效!创建DB_LINK没有域名存在!

    update global_name set global_name='ORCL';

    Microsoft Windows [版本 5.2.3790]

    (C) 版权所有 1985-2003 Microsoft Corp.

    C:\Documents and Settings\Administrator>sqlplus "/ as sysdba"

    SQL*Plus: Release 10.2.0.1.0 - Production on 星期三 3月 19 14:22:37 2008

    Copyright (c) 1982, 2005, Oracle. All rights reserved.

    连接到:

    Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production

    With the Partitioning, OLAP and Data Mining options

    SQL> show parameter global_name;

    NAME TYPE VALUE

  ------------------------------------ ----------- ------------------------------

    global_names boolean FALSE

    SQL> show parameter global_name

    NAME TYPE VALUE

  ------------------------------------ ----------- ------------------------------

    global_names boolean FALSE

    SQL> select * from global_name;

    GLOBAL_NAME

  --------------------------------------------------------------------------------

    ORCL.REGRESS.RDBMS.DEV.US.ORACLE.COM

    SQL> alter database rename global_name to ORCL;

    数据库已更改。

    SQL> select * from global_name; ——在这里可以看到,把global_name直接修改为“ORCL”,并不起作用!

    GLOBAL_NAME

  --------------------------------------------------------------------------------

    ORCL.REGRESS.RDBMS.DEV.US.ORACLE.COM

    SQL> shutdown immediate;

    数据库已经关闭。

    已经卸载数据库。

    ORACLE 例程已经关闭。

    SQL> startup

    ORACLE 例程已经启动。

    Total System Global Area 289406976 bytes

    Fixed Size 1248576 bytes

    Variable Size 134218432 bytes

    Database Buffers 146800640 bytes

    Redo Buffers 7139328 bytes

    数据库装载完毕。

    数据库已经打开。

    SQL> select * from global_name; ——重启数据库后,仍然不起作用,GLOBAL_NAME并没有变成我想要的“ORCL”!

    GLOBAL_NAME

  --------------------------------------------------------------------------------

    ORCL.REGRESS.RDBMS.DEV.US.ORACLE.COM

    SQL> alter database rename global_name to ORCL.QIANGGUO.COM; ——如果修改为带域名的“ORCL.QIANGGUO.COM”,重启数据库将起作用,域名发生了变化!

    数据库已更改。

    SQL> select * from global_name;

    GLOBAL_NAME

  --------------------------------------------------------------------------------

    ORCL.QIANGGUO.COM

    SQL> alter database rename global_name to ORCL; ——再次试着修改为“ORCL”,仍然不行!

    数据库已更改。

    SQL> select * from global_name;

    GLOBAL_NAME

  --------------------------------------------------------------------------------

    ORCL.AHDX.COM

    SQL> update global_name set global_name='ORCL'; ——如果用update语句修改,重启数据库,成功!哈哈!

    已更新 1 行。

    SQL> select * from global_name;

    GLOBAL_NAME

  --------------------------------------------------------------------------------

    ORCL

    SQL> select * from global_name;

    GLOBAL_NAME

  --------------------------------------------------------------------------------

    ORCL

    SQL> commit;

    提交完成。

    SQL> shutdown immediate

    数据库已经关闭。

    已经卸载数据库。

    ORACLE 例程已经关闭。

    SQL> startup

    ORACLE 例程已经启动。

    Total System Global Area 289406976 bytes

    Fixed Size 1248576 bytes

    Variable Size 134218432 bytes

    Database Buffers 146800640 bytes

    Redo Buffers 7139328 bytes

    数据库装载完毕。

    数据库已经打开。

    SQL> select * from global_name;——如果用update语句修改,重启数据库,成功!哈哈!

    GLOBAL_NAME

  --------------------------------------------------------------------------------

    ORCL

    SQL>

    分析一下:global_name视图

    创建global_name视图的语句如下:

    create or replace view global_name

    as

    select value$ from sys.props$ where name = 'GLOBAL_DB_NAME'

    不能直接修改sys.props$内部表,会告诉你权限不足!

    所以可以用update修改!

    验证如下:

    SQL> select * from global_name;

    GLOBAL_NAME

  --------------------------------------------------------------------------------

    ORCL

    SQL> select value$ from sys.props$ where name = 'GLOBAL_DB_NAME';

    VALUE$

  --------------------------------------------------------------------------------

    ORCL

    SQL>

 

本文作者:
« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3