ITPub博客

首页 > 数据库 > Oracle > TimesTen-CacheGroup配置操作指导[TimesTen运维]

TimesTen-CacheGroup配置操作指导[TimesTen运维]

Oracle 作者:www_xylove 时间:2015-12-11 11:44:11 0 删除 编辑
一、Oracle数据库配置
创建CG表空间
SQL> create tablespace TBS_TY datafile '+DATADG' size 20g;
TT在Oracle端的表空间统一使用TBS_TY,“+DATADG”根据各个地市的具体情况指定。
创建并赋权CG管理用户
SQL> create user ty indentified by ty default tablespace TBS_TY;
SQL> grant connect,unlimited tablespace,resource,select any table,create any trigger to ty;
这里的密码属于安全保护文件,具体实施过程由TT组的同事指定。
TimesTen内存库配置
二、TimesTen环境变量配置
export TNS_ADMIN=/oracle/client_64/network/admin
export ORACLE_HOME=/oracle/client_64
将上面两行添加到环境变量.profile文件中
配置sys.odbc.ini文件
OracleNetServiceName=tydb
在sys.odbc.ini文件中添加OracleNetServiceName连接参数,后面的值tydb是连接Oracle的TNS连接串。
配置ttendaemon.options文件
-tns_admin /oracle/client_2/network/admin
tns_admin参数的配置属于数据库级别的参数,该参数需要首先是要ttmodinstall进行修改后再做配置,配置完成后需要重启deamon进程;该参数的值是指定Oracle的tnsnames.ora的路径。
配置tnsnames.ora文件
tydb=
  (DESCRIPTION =
    (ENABLE=BROKEN)
    (FAILOVER=YES)
    (LOAD_BALANCE=OFF)
    (ADDRESS_LIST=
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.11)(PORT = 1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.12)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME =stydb)
      (FAILOVER_MODE=
        (METHOD=BASIC)
        (type=session)
        (retries=120)
        (delay=5)
      )
    )
  )
这里需要注意的是,SERVICE_NAME的值为连接Oracle端的服务名,该服务运行在哪个节点,那么TT将从哪个节点进行CacheGroup刷新;一旦Oracle端运行该服务的节点出现问题时,需要服务能正常自动切换;如果该服务无法正常切换,那么CacheGroup将不能正常刷新,待Oracle端数据库恢复后,TT端需要重启说有节点(包括主备节点)的CacheAgent进程,重新与Oracle建立连接。
三、创建CacheGroup
创建CacheGroup管理账号
$ tt si
Command> create user ty indentified by ty;
Command> grant create session,admin,cache_manager to ty;
这里的密码属于安全保护文件,具体实施过程由TT组的同事指定,而且这里TT管理账号权限很高,必须注意密码保护。
设置CacheGroup管理账号
$ tt si
Command> call ttcacheuidpwdset('ty','ty');
单引号的第一个值为CacheGroup管理账号的用户名,第二个值为CG管理账号的密码,密码按照真实密码填写。
创建CacheGroup
$ ttadmin -repstop tytt
$ ttisql "dsn=tydb;uid=ty;pwd=ty;oraclepwd=ty"

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

重启CacheAgent并检查Oracle端状态
a)重启CacheAgent
Command> call ttcachestop;
Command> call ttcachestart;
b)获取Oracle端表的object_id。
select object_id from dba_objects where owner='TY' 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='TY' and cgname='&cgName';

重建备机
参考脚本:
 ttRepAdmin                       \
  -duplicate -from ${STORENAME} -host ${ACTIVEHOST}   \
  -UID ${UID} -PWD ${PWD}                             \
  -keepCG -cacheUid ${CACHEUID} -cachePwd ${CACHEPWD} \
  -localhost ${STANDBYHOST}                           \
  -connStr "dsn=$DSN;uid=$UID;pwd=$PWD"               \
四、注意事项
a)、配置TNS后,需要提前进行测试。
b)、文件tnsnames.ora建议采用属主为timesten,并回收其他用户的修改权限,避免误修改引发的问题
c)、对CacheGroup的任何变更需要重启CacheAgent.
======================End====================================

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/21266384/viewspace-1870337/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2010-11-12

  • 博文量
    99
  • 访问量
    221833