zoukankan      html  css  js  c++  java
  • 10g RAC 采用service达到taf

    service由于oracle数据库中的一个关键概念,利用得当,可以轻松地管理数据库,提高数据库的工作效率。

    经service。oracle可以实现server side  taf,简单化client维修,下面我们来看看10g rac 如何测试service实现 serve side  taf

    使用dbca来配置taf

    通过dbca能够很方便的配置server  side taf





    至此。service配置完毕,以下我们验证一下

    [root@node1 ~]# su - oracle
    [oracle@node1 ~]$ lsnrctl status
    
    LSNRCTL for Linux: Version 10.2.0.5.0 - Production on 05-AUG-2014 21:46:10
    
    Copyright (c) 1991, 2010, Oracle.  All rights reserved.
    
    Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
    STATUS of the LISTENER
    ------------------------
    Alias                     LISTENER_NODE1
    Version                   TNSLSNR for Linux: Version 10.2.0.5.0 - Production
    Start Date                05-AUG-2014 21:26:40
    Uptime                    0 days 0 hr. 19 min. 30 sec
    Trace Level               off
    Security                  ON: Local OS Authentication
    SNMP                      OFF
    Listener Parameter File   /u01/app/oracle/product/11.2.0/db/network/admin/listener.ora
    Listener Log File         /u01/app/oracle/product/11.2.0/db/network/log/listener_node1.log
    Listening Endpoints Summary...
      (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.100.131)(PORT=1521)))
      (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.100.31)(PORT=1521)))
    Services Summary...
    Service "+ASM" has 1 instance(s).
      Instance "+ASM1", status BLOCKED, has 1 handler(s) for this service...
    Service "+ASM_XPT" has 1 instance(s).
      Instance "+ASM1", status BLOCKED, has 1 handler(s) for this service...
    Service "PLSExtProc" has 1 instance(s).
      Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
    Service "racdb" has 3 instance(s).
      Instance "racdb", status UNKNOWN, has 1 handler(s) for this service...
      Instance "racdb1", status READY, has 2 handler(s) for this service...
      Instance "racdb2", status READY, has 1 handler(s) for this service...
    Service "racdbXDB" has 2 instance(s).
      Instance "racdb1", status READY, has 1 handler(s) for this service...
      Instance "racdb2", status READY, has 1 handler(s) for this service...
    Service "racdb_XPT" has 2 instance(s).
      Instance "racdb1", status READY, has 2 handler(s) for this service...
      Instance "racdb2", status READY, has 1 handler(s) for this service...
    Service "service1" has 1 instance(s).
      Instance "racdb1", status READY, has 2 handler(s) for this service...
    The command completed successfully
    [oracle@node1 ~]$ sqlplus / as sysdba
    
    SQL*Plus: Release 10.2.0.5.0 - Production on Tue Aug 5 21:46:23 2014
    
    Copyright (c) 1982, 2010, Oracle.  All Rights Reserved.
    
    
    Connected to:
    Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bit Production
    With the Partitioning, Real Application Clusters, OLAP, Data Mining
    and Real Application Testing options
    
    SQL> show parameter service
    
    NAME				     TYPE	 VALUE
    ------------------------------------ ----------- ------------------------------
    service_names			     string	 service1
    SQL> col name for a20
    SQL> col failover_method for a20
    SQL> col failover_type for a20
    SQL>  select name,failover_method,failover_type from dba_services;
    
    NAME		     FAILOVER_METHOD	  FAILOVER_TYPE
    -------------------- -------------------- --------------------
    SYS$BACKGROUND
    SYS$USERS
    seeddataXDB
    seeddata.regress.rdb
    ms.dev.us.oracle.com
    
    racdbXDB
    racdb
    service1
    
    7 rows selected.
    
    SQL> exit
    Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bit Production
    With the Partitioning, Real Application Clusters, OLAP, Data Mining
    and Real Application Testing options
    
    [oracle@node1 ~]$ srvctl config service -d racdb -s service1 -a
    service1 PREF: racdb1 AVAIL: racdb2 TAF: basic
    [oracle@node1 ~]$ srvctl config service -d racdb
    service1 PREF: racdb1 AVAIL: racdb2


    从上面的结果能够看出,通过dbca配置service 的taf,会在ocr中存储taf配置信息(不过taf method),在数据库參数文件里会加入service条目,而且在数据字典中加入对应记录,可是数据字典中的taf信息是空的,须要另外加入。如

    SQL> begin
      2  dbms_service.modify_service(
      3  service_name=>'service1',
      4  failover_method=>dbms_service.failover_method_basic,
      5  failover_type => dbms_service.failover_type_select,
      6  failover_retries => 180,
      7  failover_delay => 5 
      8  );
      9  end;
     10  /
    
    PL/SQL procedure successfully completed.
    
    SQL> col name for a20
    SQL> col failover_method for a20
    SQL> col failover_type for a20
    SQL> select name,failover_method,failover_type from dba_services;
    
    NAME		     FAILOVER_METHOD	  FAILOVER_TYPE
    -------------------- -------------------- --------------------
    SYS$BACKGROUND
    SYS$USERS
    seeddataXDB
    seeddata.regress.rdb
    ms.dev.us.oracle.com
    
    racdbXDB
    racdb
    service1	     BASIC		  SELECT
    
    7 rows selected.

    另外,也能够使用srvctl来加入service

    [root@node1 ~]# srvctl add service -h
    Usage: srvctl add service -d <name> -s <service_name> -r "<preferred_list>" [-a "<available_list>"] [-P <TAF_policy>]
        -d <name>           Unique name for the database
        -s <service>        Service name
        -r "<pref_list>"    List of preferred instances
        -a "<avail_list>"   List of available instances
        -P <TAF_policy>     TAF policy (NONE, BASIC, or PRECONNECT)
    Usage: srvctl add service -d <name> -s <service_name> -u {-r "<new_pref_inst>" | -a "<new_avail_inst>"}
        -d <name>           Unique name for the database
        -s <service>        Service name
        -u                  Add a new instance to service configuration
        -r <new_pref_inst>  Name of new preferred instance
        -a <new_avail_inst> Name of new available instance
        -h                  Print usage
    [root@node1 ~]# srvctl add service -d racdb -s service2 -r racdb1 -a racdb2 -P BASIC
    PRKH-1014 : Current user root is not the same as oracle owner oracle of oracle home /u01/app/oracle/product/11.2.0/db.
    [root@node1 ~]# su - oracle
    [oracle@node1 ~]$ srvctl add service -d racdb -s service2 -r racdb1 -a racdb2 -P BASIC
    [oracle@node1 ~]$ srvctl config service -d racdb -a
    service1 PREF: racdb1 AVAIL: racdb2 TAF: basic
    service2 PREF: racdb1 AVAIL: racdb2 TAF: BASIC
    [oracle@node1 ~]$ sqlplus / as sysdba
    
    SQL*Plus: Release 10.2.0.5.0 - Production on Tue Aug 5 22:16:43 2014
    
    Copyright (c) 1982, 2010, Oracle.  All Rights Reserved.
    
    
    Connected to:
    Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bit Production
    With the Partitioning, Real Application Clusters, OLAP, Data Mining
    and Real Application Testing options
    
    SQL> show parameter service
    
    NAME				     TYPE	 VALUE
    ------------------------------------ ----------- ------------------------------
    service_names			     string	 service1, racdb
    SQL> select name from dba_services;
    
    NAME
    ----------------------------------------------------------------
    SYS$BACKGROUND
    SYS$USERS
    seeddataXDB
    seeddata.regress.rdbms.dev.us.oracle.com
    racdbXDB
    racdb
    service1
    
    7 rows selected.

    从这里。能够看出通过srvct加入的service不会在数据库參数和数据字典中加入对应的信息



    版权声明:本文博主原创文章,博客,未经同意不得转载。

  • 相关阅读:
    还记得吗
    PAT A 1065. A+B and C (64bit) (20)
    畅通project(杭电1863)
    cocos2d-x 3.0游戏实例学习笔记《卡牌塔防》第七步---英雄要升级&amp;属性--解析csv配置文件
    热烈祝贺Polymer中文组织站点上线
    具体解释HTML中的window对象和document对象
    oc15--文档安装
    oc14--匿名对象
    oc13--pragma mark
    oc12--对象作为参数
  • 原文地址:https://www.cnblogs.com/gcczhongduan/p/4853671.html
Copyright © 2011-2022 走看看