1. 程式人生 > >11g RAC環境下客戶端配置TAF

11g RAC環境下客戶端配置TAF

TAF是Transparent Application Failover的英文縮寫,顧名思義就是對應用透明的故障轉移,舉個例子,當應用連線某個oracle資料庫的執行查詢操作的時候,資料庫伺服器網路中斷或者例項崩潰,在經過delay引數設定的值之後,將自動連線到其他可用的例項,繼續進行查詢。(前提是執行計劃,輸出結果集和輸出的順序不能發生變化)

TAF的特性:
1:TAF是ORACLE客戶端提供的一項特性,使用TAF,對客戶端的環境有一定的要求,比如JAVA的JDBC驅動、Oracle客戶端的版本等(8i開始支援TAF);
2:大致上TAF可以分為2種,連線時的TAF和會話建立後TAF;
3:TAF本身與是否RAC環境無關,但一般都用在RAC環境,最小程度的減少最應用的影響,單例項環境下也可以使用TAF,這樣使用PL/SQL developer連線資料庫,即使資料庫例項重啟,也不需要重新連線;
4:RAC環境下,還可以把TAF配置在伺服器端;
5:配置listener.ora檔案的GLOBAL_DBNAME引數後將會禁用TAF。

配置如下:

1、檢視服務端的service_name 和 RAC SCAN地址

[[email protected] tnslsnr]$ cat /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1               localhost.localdomain localhost
::1             localhost6.localdomain6 localhost6

#Public
10.1.252.121            rac121
10.1.252.122            rac122
#Private
192.168.123.1           rac121-priv
192.168.123.2           rac122-priv

#Virtual IP
10.1.252.75             rac121-vip
10.1.252.76             rac122-vip
10.1.252.68             rac-scan [[email protected] tnslsnr]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.3.0 Production on Tue Jun 26 15:33:29 2012 Copyright (c) 1982, 2011, Oracle.  All rights reserved. Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP, Data Mining and Real Application Testing options SQL> show parameter service_name NAME                                 TYPE        VALUE ------------------------------------ ----------- ------------------------------ service_names                        string      
racdb SQL> 

2、在客戶端tnsnames.ora檔案中新增如下內容:

racdb =  
  (DESCRIPTION =  
    (ADDRESS_LIST =  
      (ADDRESS = (PROTOCOL = TCP)(HOST = 10.1.252.68)(PORT = 1521))  
    )  
    (CONNECT_DATA =  
      (SERVICE_NAME = racdb)  
      (FAILOVER_MODE =  
       (TYPE = SELECT)  
       (METHOD = BASIC)  
       (RETRIES = 180)  
       (DELAY = 5))  
    )  
  ) 
    屬性說明 :
            TYPE    type屬性描述了故障轉移的型別,可能的值如下:
                         SESSION  指定發生故障轉換時,TAF應建立會話,不執行其他任何操作。
                         SELECT   指定執行故障轉換時,除了建立會話,TAF 也應該重新啟動故障轉移期間執行的任何SELECT語句,
                                            當SELECT 語句執行時,ORACLE Net將返回故障轉移前沒有返回給使用者的行。
                          NONE     不執行TAF故障轉移
             METHOD  method特徵確定何時建立會話,可能的值如下 :
                         BASIC      在故障轉移期間建立會話
                         PRECONNECT 與資料庫的初始連線建立後,採用由BACKUP 特性指定的ORACLE Net別名建立故障轉移會話。
             RETRIES retries特性指Oracle Net 返回ADDRESS_LIST 並嘗試連線到倖存例項的次數。
             DELAY   delay特性指定每次重試之間等待的次數       

3、用客戶端登入作如下操作

C:\Documents and Settings\```>sqlplus /nolog
SQL*Plus: Release 10.2.0.1.0 - Production on 星期二 6月 26 15:00:56 2012
Copyright (c) 1982, 2005, Oracle.  All rights reserved.

SQL> conn sys/[email protected] as sysdba
已連線。
SQL> show parameter instance_name

NAME                      TYPE                    VALUE
------------------------- ----------------------  ---------------
instance_name             string                   racdb2
SQL> select sid from v$mystat where rownum=1;
       SID
----------
       163
SQL> select machine,failover_type,failover_method,failed_over from v$session where sid=163;
MACHINE           FAILOVER_TYPE       FAILOVER_METHOD       FAILED
----------------  ----------          --------------------  ------
AILK\TANWEI       SELECT              BASIC                 NO

SQL> create table taf_client_test(id int,vname varchar2(10));
表已建立。
SQL> insert into taf_client_test values(1,'taf');
已建立 1 行。
SQL> update taf_client_test set id=5;
已更新 1 行。
SQL> select * from taf_client_test;
        ID VNAME
---------- --------------------
         5 taf

4、更新完畢不commit,停掉racdb2例項:

[[email protected] tnslsnr]$ srvctl status instance -d racdb -i racdb2
Instance racdb2 is running on node rac122
[[email protected] tnslsnr]$ srvctl stop instance -d racdb -i racdb2 -o abort
[[email protected] tnslsnr]$ srvctl status instance -d racdb -i racdb2
Instance racdb2 is not running on node rac122
[[email protected] tnslsnr]$ srvctl status instance -d racdb -i racdb1
Instance racdb1 is running on node rac121--還有一個節點在工作


5、回到客戶端作如下操作:

SQL> select * from taf_client_test;
select * from taf_client_test
*
第 1 行出現錯誤:
ORA-25402: 事務處理必須重新執行


SQL> rollback;


回退已完成。


SQL> select instance_name from v$instance;


INSTANCE_NAME
--------------------------------
racdb1


SQL> show parameter instance_name




NAME                TYPE            VALUE
----------------    -------------   -----------
instance_name       string          racdb1 --發現自動切換到節點1,
SQL> select * from taf_client_test;
未選定行
SQL> select * from v$mystat where rownum=1;


       SID STATISTIC#      VALUE
---------- ---------- ----------
       166          0          0


SQL> select failover_type,failover_method,failed_over from v$session where sid=166;

FAILOVER_TYPE              FAILOVER_METHOD      FAILED
-------------------------- -------------------- ------
SELECT                     BASIC                YES

到此,完成了TAF的配置與驗證。


相關推薦

11g RAC環境客戶配置TAF

TAF是Transparent Application Failover的英文縮寫,顧名思義就是對應用透明的故障轉移,舉個例子,當應用連線某個oracle資料庫的執行查詢操作的時候,資料庫伺服器網路中斷或者例項崩潰,在經過delay引數設定的值之後,將自動連線到其他可用的

Oracle RAC負載均衡 客戶配置

RAC的負載均衡主要是指新會話連線到RAC資料庫時,如何判定這個新的連線要連到哪個節點進行工作。在RAC中,負載均衡分為兩種,一種是基於客戶端連線的,另外一種是基於伺服器端的。 客戶端的負載均衡配置相對簡單,只需要在tnsnames.ora中新增LOAD_BALANCE=ON這麼一個選項即可。比如下面的T

RAC環境配置tnsname實現failover:TAF

Q:有一段 RAC的配置(3節點rac) ###### RAC的配置(3節點rac) ############################### ORALOCAL =  (DESCRIPTION =  (load_balance = yes)  (failover = on)   (ADDRESS_LI

Oracle在RAC環境遠端客戶連線的問題

資料庫伺服器系統:Solaris 5.9 兩臺做cluster,共享磁碟陣列櫃資料庫:Oracle 9.2.0.5 做的是RAC現象:最近2個月發現不時的客戶端應用程式無法登入,像宕機一樣一直等待(2個月前一直正常,這套系統已經投入使用5年)。應用伺服器  Windows 2

Linuxl2tp客戶配置並解決pppd斷線問題

不為 dead minutes 根據 1.4 安裝 signal 未能 請求 1.安裝客戶端軟件使用xl2tpd,pppyum install -y xl2tpd ppp 2.配置xl2tpd vim /etc/xl2tpd/xl2tpd.conf 最下方追加下面代碼 [l

ORACLE 全綠色版的PL/SQL和Oracle客戶配置-打造綠色Oracle開發環境

 全綠色版的PL/SQL和Oracle客戶端配置-打造綠色Oracle開發環境 我的環境: win7 64 Oracle 10g伺服器、也有11g的,都可以用。 1、準備軟體 PL/SQL Developer 9.0.5.1648 綠色版註冊版 instantclient-basi

OpenVPM系列圖文教程之(一)—— Windows搭建服務客戶配置

背景:公司移動APP需要使用吶網服務,就順便研究了一下各種搭建方式,廢話不說看教程! 本文測試環境 雲香港 ECS 1 核 1GB (新人2折) Windows server 2012 R2 Datacenter Intel® Xeon® CPU

IBM WebSphere MQ 在AIX環境服務和模擬客戶配置步驟

                           IBM WebSphere MQ 在AIX環境配置服務端和模擬客戶端的步驟 首先,配置AIX的本地服務端佇列管理器,建立接收佇列、接收通道、傳送佇列、遠端傳送佇列、遠端傳送通道,建立監聽等。 其次,在本地配製另一佇列管理器

OpenVPN 系列圖文教程之(一)—— Windows搭建VPN服務客戶配置

背景:公司移動APP需要使用VPN服務,就順便研究了一下各種VPN的搭建,突然發現買個阿里雲香港伺服器自己用也是不錯的選擇哈哈,廢話不說看教程! 本文測試環境 阿里雲香港 ECS 1 核 1GB(簡約型 t1, ecs.t1.small) 領取優惠

Ubuntu12.04OpenVPN安裝和客戶配置

一、實驗環境: 1.物理拓撲: 目的:利用VPN Server,使Client01和Client02能夠互訪。 2.主機配置: 主機名             IP(Static)                             系統       

Centos6.4OpenVPN在windows和centos客戶安裝與配置詳解

上一篇我們介紹了服務端的安裝與配置,我們主要講解在windows下與centos下的配置,ubuntu和android的類似,刷過系統的路由也可以使用openvpn,比如tomato系統,開啟路由器的samba,然後把證書上傳到一個目錄下,然後在openvpn自定義裡面貼

11g R2 RAC 環境開啟歸檔模式的方法

方法一 首先來看一下官方的文件: How To Enable Archive Logging In RAC Environment [ID 1186764.1]轉到底部 修改時間:2011-6-2型別:HOWTO狀態:PUBLISHED優先順序:3註釋 (0) In

windows環境wampserver的配置教程

module 單獨 ext 寫作 還需 sta write 打開 服務器 對於初做PHP網站的朋友來說,第一步肯定是希望在自己電腦是搭建PHP環境,省去空間和上傳的麻煩!但搭建環境也不是件容易的事情,特別是對於新手同學來說!因此在這裏跟大家介紹我作為一名新手在使用的方便好用

企業生產環境NFS客戶掛載建議(八)

nfs掛載 mount nfs nfsmount 企業生產環境NFS客戶端掛載建議:一、把NFS rpc服務的啟動命令和掛載命令均放到/etc/rc.local,然後通過nagios監控軟件監控開機後的掛載情況。如:[[email protected]/* */ ~]# cat /et

NTP服務器搭建和客戶配置

position 服務器 relative middle border 1 搭建NTP服務器準備搭建環境主機IPOS備註NTP Server192.168.5.180CentOS 6NTP Client192.168.5.181CentOS 61.1 安裝NTP服務程序[[email

CnetOS 6.6 rsync 的服務客戶配置

rsync rsync 的服務端和客戶端配 linux centos 6.6 CentOS 6.6 rsync 的服務端和客戶端配置基本信息系統版本主機名IP地址角色CentOS 6.6backup10.0.0.10rsync服務端CentOS 6.6lamp0110.0.0.8rsync

WSUS服務器客戶配置說明

wsus服務器步驟1:win7執行【開始】I【運行】命令,在彈出的對話框中輸入gpedit.msc.單擊【確定】按鈕,打開【組策略編輯器】窗口,如圖1所示。  圖1【組策略編輯器】窗口 步驟2:依次展開【計算機配置】丨【管理模板】丨【Windows組件】丨【WindowsUpdate】結

Mac環境SVN的配置和使用

nbsp 環境 配置 創建 bsp cnblogs 執行 use 使用   簡單記錄一下在Mac環境下,SVN的配置步驟和使用相關。(Mac自帶了svn的服務器和客戶端功能,簡單配置一下即可使用)   一、SVN的配置方法   1. 創建一個倉庫目錄,比如在/Users/你

ssh環境客戶信息管理系統學習問題(二)

2.3 根據 包括 style 有用 信息 org 翻譯 use 問題1: 這是包沖突的問題,jar包中存在兩個沖突的包,可以看到上面的Referenced Libraries中存在asm.jar和asm-2.2.3.jar兩個包,這兩個包沖突了

Spring Cloud 入門教程(四): 分布式環境自動發現配置服務

.html article png discover ice conf label tail 註釋 前一章, 我們的Hello world應用服務,通過配置服務器Config Server獲取到了我們配置的hello信息“hello world”. 但自己的配置文件中必須配