轉~timesten系列六:定義複製,實現timesten的高可用性
如果只有一臺TT放在前面提供服務,就算它再快,可能你也要考慮一下,這一臺TT出問題了怎麼辦?
TT的解決方案就是透過類似ORACLE data guard技術的複製,實現高可用性。
在TT裡面,源TT稱為master,而目標TT稱為 subscriber 。
在TT裡面,可以定義如下一些型別的高可用性環境
1.一臺TT為主,另外一臺只做資料複製
當主TT出現問題的時候,另外一臺接管業務
2.一臺TT為主,另外一臺TT為active standby
當主TT出現問題的時候,另外一臺接管業務,這種模式用得最多,也是TT推薦的模式
3.兩臺TT同時對外提供服務,但是隻分別提供部分表的操作
比如TT A提供表一的操作,同時把表一的修改同步到TT B
而TT B則提供表二的操作,同時把表二的修改同步到TT A
4.兩臺TT同時對外提供同樣的服務
同一張表可以同時在TT A 和TT B上面提供服務
在所有的高可用性模式下,TT都可供了三種資料同步模式
1.完全非同步
這種模式下,事物在master 直接提交,由 replication agent根據日誌非同步完成同步工作
這種模式提高了最高的效能模式。
2.半同步模式
這種模式下,事物在master 提交時,由 replication agent 把修改資訊複製到 subscriber ,等 subscriber 確認收到這些修改後,
事物在master上才能提交。
3.完全同步模式
這種模式下,事物在master 提交時,由 replication agent 把修改資訊複製到 subscriber ,等 subscriber 確認收到這些修改後,並且在subscriber 應用完成這些事物並提交後,事物在master上才能提交。
這種模式提高了最高的保護模式。
這和oracle的data guard保護模式幾乎一致。
同步的原理是 master和 subscriber 都透過replication agent ,根據日誌的資訊,相互同步。
複製的單位可以是一張表,幾張有主外來鍵關係的表,或者整個data store .
建立複製,非常的簡單,以如下環境為例說明
主機 rac01安裝了TT ,data store放在 /oracle/timesten/TimesTen/tt70/info/wzy ,檔案以wzy開頭,DSN=wzy_tt70
主機 rac02安裝了TT ,data store放在 /oracle/timesten/TimesTen/tt70/info/wzy ,檔案以wzy開頭,DSN=wzy_tt70
首席檢查rac01和rac02的 /etc/hosts檔案,加上對rac01,rac02的解析
如下:
10.0.0.1 rac01
10.0.0.2 rac02
我們以test_r表為例說明,首先在兩臺TT的data store上面建立該表
ttIsql wzy_tt70
Command> create table test_r(id number(2) primary key);
然後登陸rac01
執行如下操作:從rac01複製到rac02
建立單向的複製
登陸rac01的wzy_tt70 data store
ttIsql wzy_tt70
Command>CREATE REPLICATION reptest ELEMENT TABLE test_r MASTER wzy on "rac01" SUBSCRIBER wzy on "rac02";
注意:MASTER 和 SUBSCRIBER 後面跟的都是 data store對應的檔名的字首! 比如
datastore的配置是
/oracle/timesten/TimesTen/tt70/info/wzy/dstest,那麼就應該是dstest .
然後在rac01和rac02上面 啟動 replication agent
ttAdmin -repStart wzy_tt70
在rac01的wzy_tt70上面生成一些記錄,現在就能夠同步到rac02的wzy_tt70了。
簡單吧?
[@more@]
TT的解決方案就是透過類似ORACLE data guard技術的複製,實現高可用性。
在TT裡面,源TT稱為master,而目標TT稱為 subscriber 。
在TT裡面,可以定義如下一些型別的高可用性環境
1.一臺TT為主,另外一臺只做資料複製
當主TT出現問題的時候,另外一臺接管業務
2.一臺TT為主,另外一臺TT為active standby
當主TT出現問題的時候,另外一臺接管業務,這種模式用得最多,也是TT推薦的模式
3.兩臺TT同時對外提供服務,但是隻分別提供部分表的操作
比如TT A提供表一的操作,同時把表一的修改同步到TT B
而TT B則提供表二的操作,同時把表二的修改同步到TT A
4.兩臺TT同時對外提供同樣的服務
同一張表可以同時在TT A 和TT B上面提供服務
在所有的高可用性模式下,TT都可供了三種資料同步模式
1.完全非同步
這種模式下,事物在master 直接提交,由 replication agent根據日誌非同步完成同步工作
這種模式提高了最高的效能模式。
2.半同步模式
這種模式下,事物在master 提交時,由 replication agent 把修改資訊複製到 subscriber ,等 subscriber 確認收到這些修改後,
事物在master上才能提交。
3.完全同步模式
這種模式下,事物在master 提交時,由 replication agent 把修改資訊複製到 subscriber ,等 subscriber 確認收到這些修改後,並且在subscriber 應用完成這些事物並提交後,事物在master上才能提交。
這種模式提高了最高的保護模式。
這和oracle的data guard保護模式幾乎一致。
同步的原理是 master和 subscriber 都透過replication agent ,根據日誌的資訊,相互同步。
複製的單位可以是一張表,幾張有主外來鍵關係的表,或者整個data store .
建立複製,非常的簡單,以如下環境為例說明
主機 rac01安裝了TT ,data store放在 /oracle/timesten/TimesTen/tt70/info/wzy ,檔案以wzy開頭,DSN=wzy_tt70
主機 rac02安裝了TT ,data store放在 /oracle/timesten/TimesTen/tt70/info/wzy ,檔案以wzy開頭,DSN=wzy_tt70
首席檢查rac01和rac02的 /etc/hosts檔案,加上對rac01,rac02的解析
如下:
10.0.0.1 rac01
10.0.0.2 rac02
我們以test_r表為例說明,首先在兩臺TT的data store上面建立該表
ttIsql wzy_tt70
Command> create table test_r(id number(2) primary key);
然後登陸rac01
執行如下操作:從rac01複製到rac02
建立單向的複製
登陸rac01的wzy_tt70 data store
ttIsql wzy_tt70
Command>CREATE REPLICATION reptest ELEMENT TABLE test_r MASTER wzy on "rac01" SUBSCRIBER wzy on "rac02";
注意:MASTER 和 SUBSCRIBER 後面跟的都是 data store對應的檔名的字首! 比如
datastore的配置是
/oracle/timesten/TimesTen/tt70/info/wzy/dstest,那麼就應該是dstest .
然後在rac01和rac02上面 啟動 replication agent
ttAdmin -repStart wzy_tt70
在rac01的wzy_tt70上面生成一些記錄,現在就能夠同步到rac02的wzy_tt70了。
簡單吧?
[@more@]
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/14844492/viewspace-1044928/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Timesten學習3(高可用性)
- 轉~timesten系列七:配置高可用性的TT,同時實現和cache和後臺oracle整合Oracle
- 轉~timesten系列一:簡介
- Step by Step TimesTen --- DataStore的雙向複製( 一)AST
- Step by Step TimesTen --- DataStore的雙向複製( 二)AST
- Timesten cache group aging 功能的實現
- TimesTen-CacheGroup配置操作指導[TimesTen運維]運維
- TimesTen IX鎖及用途介紹[TimesTen運維]運維
- TimesTen重建備機標準操作[TimesTen運維]運維
- 配置TimesTen客戶端連線[TimesTen運維]客戶端運維
- TimesTen計算和配置TimesTen的ttmesg日誌儲存空間
- TimesTen學習(三)遠端連線TimesTen資料庫資料庫
- [轉]使用複製來提升MySQL的高可用性和處理能力MySql
- Timesten學習1
- Timesten學習2
- timesten client dsn 配置client
- Step by Step TimesTen --- ttIsqlSQL
- TimesTen常用維護內建的儲存過程[TimesTen運維基礎]儲存過程運維
- 【Mysql】MySQL 主主複製 + LVS + Keepalived 實現 MySQL 高可用性MySql
- TimesTen手動主備切換(ASP模式)[TimesTen運維基礎]模式運維
- TimesTen支援的連線數
- Timesten cache database的準備Database
- timesten配置只讀同步
- TimesTen錯誤總結
- TimesTen生成加密密碼加密密碼
- 高階複製-3、主體定義站點上的操作
- TimesTen記憶體碎片(高水位)回收步驟詳解記憶體
- 高階複製-4、非主體定義站點上的操作
- Timesten11g建立datastoreAST
- Timesten11G安裝
- timesten資料庫ttcserver程式的作用資料庫Server
- Timesten 資料庫端需要的配置資料庫
- Linux下TimesTen主備搭建、重建cache group、重建備機操作[TimesTen運維]Linux運維
- 分散式服務高可用實現:複製分散式
- 【記憶體資料庫】TimesTen記憶體資料庫
- 使用ttTraceMon進行TimesTen故障分析
- Timesten匯入資料到Cache Group
- Timesten安裝筆記 參考筆記