TimesTen配置及使用文档格式.docx
- 文档编号:1161868
- 上传时间:2023-04-30
- 格式:DOCX
- 页数:17
- 大小:190.29KB
TimesTen配置及使用文档格式.docx
《TimesTen配置及使用文档格式.docx》由会员分享,可在线阅读,更多相关《TimesTen配置及使用文档格式.docx(17页珍藏版)》请在冰点文库上搜索。
在安装TT软件后,可通过如下步骤配置DSN:
1.进入“控制面板–>
管理工具->
数据源(ODBC)”,在“系统DSN”页签,选择“添加”。
2.选择数据库驱动程序,TimesTen相关的驱动程序有2个,"
TimesTenClient11.2.2"
是用于访问非本机数据库用的,由于我们要在本机建立数据库,所以选择"
TimesTenDataManager11.2.2”。
3.配置DSN基本属性。
在选择DataSourcePath时,要确保该目录已经存在。
且此处DatabaseCharacterSet必须与Oracle的字符集相同,如果不同,后面还需要重新配置数据源。
4.配置数据库的大小。
只需要设置PermanentDataSize和TemporaryDataSize的大小,单位均是M。
5.配置字符集。
这里的字符集也是必须与Oracle保持一致。
6.配置完成后,依次点击“OK”、“确定”,保存设置。
7.在cmd窗口,执行ttisqltest_tt,检查DSN是否创建成功。
或是在ttisql下,执行connecttest_tt。
正常情况下应如下图所示:
2.查看TT状态
在cmd窗口,执行ttstatus检查tt状态:
C:
\DocumentsandSettings\Administrator>
ttstatus
TimesTenstatusreportasofTueSep1111:
02:
452012
Daemonpid696port53392instancett1122_32
TimesTenserverpid1244startedonport53393
------------------------------------------------------------------------
Datastoree:
\mydemo\test_tt
Thereare12connectionstothedatastore
SharedMemoryKEYGlobal\test_tt.e||mydemo.SHM.10HANDLE0x288
PL/SQLMemoryKEYGlobal\test_tt.e||mydemo.SHM.11HANDLE0x290Address0x5B8C000
TypePIDContextConnectionNameConnID
Process34200x01030d78test_tt1
Subdaemon11720x00b7c398Manager2047
Subdaemon11720x00bcfb00Rollback2046
Subdaemon11720x01845470Flusher2045
Subdaemon11720x01857170Monitor2044
Subdaemon11720x018e8ef0DeadlockDetector2041
Subdaemon11720x0e339768Checkpoint2043
Subdaemon11720x0e38b4a8LogMarker2042
Subdaemon11720x0e3ed1f8Aging2040
Subdaemon11720x0e43ef38HistGC2039
Subdaemon11720x0e490c78AsyncMV2038
Subdaemon11720x0e4ea010IndexGC2037
Replicationpolicy:
Manual
CacheAgentpolicy:
PL/SQLenabled.
---------------------------------------------------------------------
AccessiblebygroupWWW-B1818C3ACBB\None
Endofreport
可以看到DataStoree:
\mydemo\test_tt已经在运行了,且有一些后台的服务线程也已经启动。
且显示了相应的TimesTen监听端口号。
比如主守护进程(Daemon)的端口号是17000;
Server端的监听端口号是17002,这个端口号是当Client/Server配置的时候,远程Client端连接过来时,Server端这边的服务端口号;
还有WebServer的端口号17004,TimesTen自身带有一个自用的webserver的。
3.创建TT用户
在command窗口,执行如下命令创建TT用户tt:
ttisqltest_tt
Copyright(c)1996-2011,Oracle.Allrightsreserved.
Type?
or"
help"
forhelp,type"
exit"
toquitttIsql.
connect"
DSN=test_tt"
;
Connectionsuccessful:
DSN=test_tt;
UID=Administrator;
DataStore=E:
\MyDemo\test_tt
DatabaseCharacterSet=ZHS16GBK;
ConnectionCharacterSet=ZHS16GBK;
DRIVER=C:
\TimesTe
n\TT1122~1\bin\ttdv1122.dll;
PermSize=64;
TempSize=32;
TypeMode=0;
(DefaultsettingAutoCommit=1)
Command>
createuserttidentifiedbytt;
Usercreated.
grantalltott;
quit;
三.设置CacheConnect
1.创建Oracle用户
由于CacheConnect访问Oracle的时候,必须有一个用户在TimesTen和Oracle中是一样的,通过这个用户登录TimesTen之后,然后CacheConnect的底层通过这个用户去和Oracle通讯,来进行数据的两边同步。
在前面我们已经创建了用户tt,那么现在在oracle中,我们也创建同样的用户tt,并授予相应的Oracle权限。
以Oracledba用户或系统用户登录Oracle,执行创建操作。
sqlplussystem/test@test
SQL>
用户已创建。
grantconnect,resource,createanytriggertott;
授权成功。
grantdbatott;
commit;
提交完成。
2.更新DSN配置
在“控制面板–>
数据源(ODBC)”的“系统DSN”页签,找到之前配置的数据源test_tt,执行如下步骤更新配置:
1.在“GeneralConnection”页签,填上新建的TT访问Oracle的用户tt.
2.在“IMDBCache”页签,填上tt用户的密码,及本地配置的要访问的Oracle的服务名。
3.配置完成后,依次点击“OK”、“确定”,保存设置。
3.创建测试表
以tt用户登录Oracle,创建cache测试表。
connecttt/tt@orcl
已连接。
createtabletest(aintprimarykey,bchar(10));
表已创建。
insertintotestvalues(1,’aaa’);
已创建1行。
insertintotestvalues(2,’bbb’);
4.创建cache
callttcacheuidpwdset(’tt’,'
tt’);
callttcachestart;
5.创建TimesTen表空间
在此之后要创建一个cachegrid,只cachegrid的第一个数据库成员需要执行这个操作。
注意,只有cachemanageruser能创建和管理cachegrid,一个cachedatabase只能属于一个cachegrid,然后可以使用过程ttgridinfo来检查是否创建成功。
在创建cachegrid前,要先创建表空间,然后建timesten用户,操作创建grid才不会报错。
创建一个单独的表空间来管理缓存到timesten的对象
createtablespacetimestendatafile'
D:
\oracle\product\10.2.0\oradata\orcl\timesten.dbf'
size50m;
6.创建timesten用户
运行initCacheGlobalSchema.sql脚本来创建用户,这用户拥有存储cachegrid和gridmember信息的表。
这个脚本在%TimesTen_install_dir%/oraclescripts目录下。
在创建之前,请切换到脚本所在目录,再以oracledba或system用户登录:
\TimesTen\tt1122_32\oraclescripts>
sqlplussystem/Younuoda2006@orcl
@initCacheGlobalSchema"
timesten"
PleaseenterthetablespacewhereTIMESTENuseristobecreated
Thevaluechosenfortablespaceistimesten
*******CreationofTIMESTENschemaandTT_CACHE_ADMIN_ROLEstarts*******
1.CreatingTIMESTENschema
2.CreatingTIMESTEN.TT_GRIDIDtable
3.CreatingTIMESTEN.TT_GRIDINFOtable
4.CreatingTT_CACHE_ADMIN_ROLErole
5.GrantingprivilegestoTT_CACHE_ADMIN_ROLE
**CreationofTIMESTENschemaandTT_CACHE_ADMIN_ROLEdonesuccessfully**
PL/SQL过程已成功完成。
7.创建Grid
执行ttisqltest_dsn连接内存库,创建Grid。
callttGridCreate('
myGrid'
);
callttGridNameSet('
8.创建CacheGroup
1.创建CacheGroup。
createreadonlycachegrouptest_cg
>
autorefreshinterval5seconds
>
fromtest
(aintprimarykey,bchar(10));
其中,test_cg为CacheGroup的名,test为前面在Oracle中创建的测试表。
2.创建完后,执行cachegroups检查是否创建成功:
cachegroups;
CacheGroupTT.TEST_CG:
CacheGroupType:
ReadOnly
Autorefresh:
Yes
AutorefreshMode:
Incremental
AutorefreshState:
Paused
AutorefreshInterval:
5Seconds
AutorefreshStatus:
ok
Aging:
Noagingdefined
RootTable:
TT.TEST
TableType:
1cachegroupfound.
在未装载前,cachegroup的自动刷新状态是Paused。
3.装载cachegroup。
loadcachegroupreadcommitevery10rows;
4.检查cachegroup是否装载成功。
select*fromtest;
<
1,aaa>
2,bbb>
2rowsfound.
此后,在Oracle数据库中插入到test表的数据,5秒钟之后都会被刷新到TimesTen中来,CacheConnect正常运转了。
5.通过ttstatus命令可以看到cacheagent已经启动:
ttstatustest_tt
TimesTenstatusreportasofThuSep1316:
18:
142012
Daemonpid2812port53392instancett1122_32
TimesTenserverpid2640startedonport53393
Thereare16connectionstothedatastore
SharedMemoryKEYGlobal\test_tt.e||mydemo.SHM.10HANDLE0x294
PL/SQLMemoryKEYGlobal\test_tt.e||mydemo.SHM.11HANDLE0x298Address0x5B8C0000
CacheAgent14480x00df9ff0Handler2
CacheAgent14480x0c60ce30Timer3
CacheAgent14480x0d310540Aging4
CacheAgent14480x0d3ccd70BMReporter(1976)6
CacheAgent14480x0d600d10Refresher(S,5000)7
Subdaemon29240x00b7c398Manager2047
Subdaemon29240x00bcfb00Rollback2046
Subdaemon29240x01804dc0Flusher2044
Subdaemon29240x01816ac0Monitor2045
Subdaemon29240x018acce0DeadlockDetector2043
Subdaemon29240x0da60048Aging2042
Subdaemon29240x0dac1038AsyncMV2041
Subdaemon29240x0db44260Checkpoint2040
Subdaemon29240x0db95fa0LogMarker2039
Subdaemon29240x0dbe7ce0HistGC2038
Subdaemon29240x0dc6e588IndexGC2037
TimesTen'
sCacheagentisrunningforthisdatastore
四.用SQLDeveloper连接TT
在使用SQLDeveloper前,要确保本机上已经安装jdk。
建议安装jdk1.5或jdk1.6版本。
1.打开SQLDeveloper。
在第一次打开的时候,需要在java的安装路径下选择javaw.exe。
2.新建连接。
选择“+”图标,或是在“连接”上右键选择“新建”。
3.设置连接属性。
选择“TimesTen”页签,连接类型为“直接驱动程序”,连接字符串的形式为“DSN=test_conn;
DATASTORE=E:
\MyDemo\test_tt;
ORACLENETSERVICENAME=orcl;
”
其中,dsn、datastore、oraclenetservicename均已在系统DSN下配置。
4.配置完成后,点击“测试”,如果状态为成功,则表明连接成功;
否则,请根据错误提示进行修改。
5.测试后,选择“连接”。
连接成功后,在数据库的图标上,会有个电源样式的小图标。
表明该数据库是当前正在使用的数据库。
五.异常处理
1.connecttest_tt报错
connecttest_tt;
836:
Cannotcreatedatastoreshared-memorysegment,error3
Thecommandfailed.
检查之后,发现是在ODBC中设置DataStore的路径时出现错误,MyDemo目录是在E盘下而不是D盘。
改了之后就能连接了。
tt’)报错
场景一:
callttcacheuidpwdset('
tt'
'
5010:
NoOracleNetServiceNamespecifiedinDSN
在testtt数据源中,要在GeneralConnection页,在UserId这一栏填上tt,再点击CacheConnect页,看到OracleUserID已经填上了tt。
在OracleID一栏填上Oracle的ServiceName,在OraclePassword一栏填上对应的密码。
场景二:
Warning5183:
Functionkollglid2wasnotinthelibrary.Thefunctionwillnot
becalled.
Functionkollgsnp2wasnotinthelibrary.Thefunctionwillnot
Warning5186:
TheOCIclientlibraryinusedoesnotcontainrequiredroutines
tosupportcachingLOBSfromOracle.
该错误是由于tt用户没有dba权限引起的。
需要在Oracle中,执行
grantcreateanytabletott;
3.createreadonlycachegroup报错
createreadonlycachegroupread
>
autorefreshinterval5seconds
fromtest
(aintprimarykey,bchar(10));
报错:
Warning5002:
Unabletoconnecttothecacheagentfore:
\mydemo\testtt;
check
agentstatus
Warning5051:
Commitmessagetocacheagentfailed.Cacheagentmustberestarted
可通过重启cache解决:
callttcachestop;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- TimesTen 配置 使用