Oracle的9个_name

来源:pcdog 作者:佚名 2008-03-21 出处:pcdog.com

linux  oracle  安全  数据库  
上一页 1 2 3 4 5 6 7 8 
 以下是引用片段:
  SQL> show parameter global_names
  NAME TYPE VALUE
  ------------------------------------ ----------- ------------------------------
  global_names boolean TRUE
  SQL> select count(*) from t_emp@dbl;
  select count(*) from t_emp@dbl

    第 1 行出现错误:

    ORA-02085: 数据库链接 DBL 连接到 ORCL

  SQL> col db_link format a10
  SQL> col host format a10
  SQL> col owner format a10
  SQL> col username format a10
  SQL> select * from dba_db_links;
  OWNER DB_LINK USERNAME HOST CREATED
  ---------- ---------- ---------- ---------- --------------
  SYS DBL TEST orcl 01-12月-07
  SYS ORCL TEST orcl 01-12月-07
  SQL> select count(*) from t_emp@orcl;
  COUNT(*)
  ----------
  4
  SQL>

    8、在通过netmanager配置静态监听注册时,需要输入的全局数据库名(GLOBAL_DBNAME )到底应该输入什么?而通过netmanager配置网络服务命名(tns)是需要输入的服务名(SERVICE_NAME )又是什么?

listener.ora内容如下:

  SID_LIST_LISTENER =
  (SID_LIST =
  (SID_DESC =
  (GLOBAL_DBNAME = test)
  (ORACLE_HOME = E:\oracle\product\10.2.0\db_1)
  (SID_NAME = tsid)
  )
  )
  LISTENER =
  (DESCRIPTION =
  (ADDRESS = (PROTOCOL = TCP)(HOST = xys)(PORT = 1521))
  )

    tnsnames.ora内容如下:

  TEST =
  (DESCRIPTION =
  (ADDRESS_LIST =
  (ADDRESS = (PROTOCOL = TCP)(HOST = xys)(PORT = 1521))
  )
  (CONNECT_DATA =
  (SERVICE_NAME = test)
  )
  )

    这里明确的告诉大家,配置静态监听注册时,需要输入的全局数据库名(GLOBAL_DBNAME )输入什么都可以,只要保证listerner.ora中的GLOBAL_DBNAME和tnsnames.ora中的SERVICE_NAME保持一致就可以,下面通过试验看看效果:

    值得主要的是GLOBAL_DBNAME = test,而此时数据库的db_name和global_name以及service_names分别如下显示:

    SQL> show parameter db_name

    NAME TYPE VALUE

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

    db_name string test1

    SQL> select *from global_name;

    GLOBAL_NAME

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

    test1

    SQL> alter database rename global_name to abcd.yu;

    数据库已更改。

    SQL> select *from global_name;

    GLOBAL_NAME

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

    ABCD.YU

    SQL>

    SQL> show parameter service_names

    NAME TYPE VALUE

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

    service_names string TEST2, TEST3

    SQL>

    而我在配置listener和tnsnames时提供的test和db_name,globla_name,service_name没有任何关系,然后看看tnsping的效果:

    C:\>tnsping test

    已使用 TNSNAMES 适配器来解析别名

    Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)

    (HOST = xys)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = test)))

    OK (30 毫秒)

    C:\>

    9、db_unique_name

    DB_UNIQUE_NAME是10g的参数,在配置dataguard环境时必须为处于dg环境中每个db设置一个唯一值,在没有DB_UNIQUE_NAME参数之前,在同一台机器上搭建dg时必须使用参数LOCK_NAME_SPACE在standby参数文件中,10g

    有了参数db_unique_name,LOCK_NAME_SPACE已经被废弃!



上一页 1 2 3 4 5 6 7 8 
上一篇:Oracle:ERP伸向企业外部
下一篇:Oracle数据库百分比格式化的解决方案