TimesTen CacheGroup配置標準操作步驟

tangyunoracle發表於2016-01-25
1. 編寫目的
鑑於最近網上很多朋友都在問關於CacheGroup的操作,很多兄弟按照官方文件操作,出現大量的問題,又不知道如何解決。為了幫助初學的兄弟快速搭建CacheGroup環境,所以才編寫該操作文件,按照該操作文件操作即簡單又清晰,希望對正在學習TimesTen的你有幫助。
2. Oracle資料庫配置
2.1 建立CG表空間
SQL> create tablespace TBS_TT_CG datafile '+DATADG' size 20g; 
TT在Oracle端的表空間統一使用TBS_TT_CG,“+DATADG”根據各個地市的具體情況指定。
2.2 建立並賦權CG管理使用者
SQL> create user TTABM indentified by TTABM default tablespace TBS_TT_CG;
SQL> create user TTCBE indentified by TTCBE default tablespace TBS_TT_CG;
SQL> create user TTBILL indentified by TTBILL default tablespace TBS_TT_CG;
SQL> grant connect,unlimited tablespace,resource,select any table,create any trigger to TTABM;
SQL> grant connect,unlimited tablespace,resource,select any table,create any trigger to TTCBE;
SQL> grant connect,unlimited tablespace,resource,select any table,create any trigger to TTBILL;
--create by tangyun-[tony.tang]-----
這裡的密碼屬於安全保護檔案,具體實施過程由新炬TT組的同事指定。
3. TimesTen記憶體庫配置
3.1 TimesTen環境變數配置
export TNS_ADMIN=/oracle/client_64/network/admin
export ORACLE_HOME=/oracle/client_64 
將上面兩行新增到環境變數.profile檔案中
3.2 配置sys.odbc.ini檔案
OracleNetServiceName=GZCRM2
在sys.odbc.ini檔案中新增OracleNetServiceName連線引數,後面的值GZCRM2是連線Oracle的TNS連線串。
$ chmod 600 sys.odbc.ini
由於sys.odbc.ini檔案涉及密碼安全問題,將該檔案的許可權修改為600.
3.3 配置ttendaemon.options檔案
--create by tangyun-[tony.tang]-----
-tns_admin /oracle/client_2/network/admin
tns_admin引數的配置屬於資料庫級別的引數,該引數需要首先是要ttmodinstall進行修改後再做配置,配置完成後需要重啟deamon程式;該引數的值是指定Oracle的tnsnames.ora的路徑。
$ chmod 600 ttendaemon.options
由於ttendaemon.options檔案涉及資料庫級安全問題,將該檔案的許可權修改為600.
3.4 配置tnsnames.ora檔案
ORA11G=
  (DESCRIPTION =
    (ENABLE=BROKEN)
    (FAILOVER=YES)
    (LOAD_BALANCE=OFF)
    (ADDRESS_LIST=
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.26.132)(PORT = 1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.26.130)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME =sora)
      )
    )
  )
這裡需要注意的是,SERVICE_NAME的值為連線Oracle端的服務名,該服務執行在哪個節點,那麼TT將從哪個節點進行CacheGroup重新整理;一旦Oracle端執行該服務的節點出現問題時,需要服務能正常自動切換;如果該服務無法正常切換,那麼CacheGroup將不能正常重新整理,待Oracle端資料庫恢復後,TT端需要重啟說有節點(包括主備節點)的CacheAgent程式,重新與Oracle建立連線。
4. 建立CacheGroup
4.1 建立CacheGroup管理賬號
--ABM
$ ttisql abm
Command> create user TTABM indentified by TTABM;
Command> grant create session,admin,cache_manager to TTABM;
--create by tangyun-[tony.tang]-----
Command> create user TTBILL indentified by TTBILL;
Command> grant create session,admin,cache_manager to TTBILL;
這裡的密碼屬於安全保護檔案,具體實施過程由新炬TT組的同事指定,而且這裡TT管理賬號許可權很高,必須注意密碼保護。
4.2 設定CacheGroup管理賬號
--ABM
$ ttisql abm
Command> call ttcacheuidpwdset(‘TTABM’,‘TTABM’);
--create by tangyun-[tony.tang]-----
單引號的第一個值為CacheGroup管理賬號的使用者名稱,第二個值為CG管理賬號的密碼,密碼按照真實密碼填寫。
4.3 建立CacheGroup
---這裡以ABM為例
$ ttadmin -repstop ABM
$ ttisql "dsn=ABM;uid=TTABM;pwd=TTABM;oraclepwd=TTABM"


Command> call ttCacheStart; 
Command>create readonly cache group TTABM.XXXX_CACHE
       > autorefresh mode incremental
       > interval 30000 milliseconds
> from GZABM1.XXXX (
       > TID       TT_BIGINT NOT NULL,
       > TNAME     TT_INTEGER,
       > primary key (TID));
Command> create index GZABM1.IDX_TNAME on GZABM1.XXXX (TNAME);
Command> load cache group TTABM.XXXX_CACHE commit every 25600 rows parallel 4;
Command> ALTER CACHE GROUP TTABM.XXXX_CACHE SET AUTOREFRESH STATE PAUSED;
--create by tangyun-[tony.tang]-----
Command> alter active standby pair include cache group TTABM.XXXX_CACHE;
Command> ALTER CACHE GROUP TTABM.XXXX_CACHE SET AUTOREFRESH STATE on;
Command> exit
$ ttadmin -repstart GZABM


4.4 重啟CacheAgent並檢查Oracle端狀態
a)重啟CacheAgent
Command> call ttcachestop;
Command> call ttcachestart; 
b)獲取Oracle端表的object_id。
select object_id from dba_objects where owner='TTABM' and object_name='&tabName' and object_type='TABLE';
c)、確定CacheGroup在Oracle端的物件
select object_name,object_type,owner from dba_objects where object_name like 'TT_05_object_id%';
d)、確定CacheGroup在Oracle端的註冊資訊
select object_id,bookmark,host,owner,cgname,status from ttabm.tt_05_agent_status 
where owner='TTABM' and cgname='&cgName';


4.5 重建備機
---參考重建備機操作手冊。
參考指令碼:
ttRepAdmin                       \
  -duplicate -from ${STORENAME} -host ${ACTIVEHOST}   \
  -setMasterRepStart -ramLoad -delXla                 \
  -UID ${UID} -PWD ${PWD}                             \
  -compression 0 -verbosity 2                         \
  -keepCG -cacheUid ${CACHEUID} -cachePwd ${CACHEPWD} \
  -localhost ${STANDBYHOST}                           \
  -connStr "dsn=$DSN;uid=$UID;pwd=$PWD"               \
5. 注意事項
--create by tangyun-[tony.tang]-----
a)、配置TNS後,需要提前進行測試。
b)、檔案tnsnames.ora建議採用屬主為timesten,並回收其他使用者的修改許可權,避免誤修改引發的問題
c)、對CacheGroup的任何變更需要重啟CacheAgent.
Created by Tony.Tang[TangYun]2016.01
------------------------End---------------------------

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24930246/viewspace-1981948/,如需轉載,請註明出處,否則將追究法律責任。

相關文章