关于css:如何查看timesten表结构

2次阅读

共计 4078 个字符,预计需要花费 11 分钟才能阅读完成。

1 Oracle 的 Schema 用户
$ sqlplus sysprod as sysdba
CREATE USER oratt IDENTIFIED BY oracle;
GRANT CREATE SESSION, RESOURCE TO oratt;
alter user oratt quota unlimited on users;

2TimesTen 端的 Schema 用户, 与 Oracle 数据库端统一
$ ttisql ttdb
create user oratt identified by timesten;
grant create session, create table to oratt;

2 TimesTen 端的 Cache 管理员
CREATE USER cacheadm IDENTIFIED BY timesten;
GRANT CREATE SESSION, CACHE_MANAGER, CREATE ANY TABLE, DROP ANY TABLE TO, ALTER ANY TABLE,www.cungun.com DELETE ANY TABLE ,SELECT ANY TABLE to cacheadm;

ttisql “uid=oratt;pwd=timesten;dsn=ttdb”
ttisql “uid=cacheadm;pwd=timesten;dsn=ttdb”
测试连贯 TimesTen 页游数据库
[timestenrac2 conf]$ ttisql “uid=oratt;pwd=timesten;dsn=ttdb”

Copyright (c) 1996, 2021, Oracle and/or its affiliates. All rights reserved.
Type ? or “help” for help, type “exit” to quit ttIsql.
connect “uid=oratt;pwd=;dsn=ttdb”;
Connection successful: DSN=TTDB;UID=oratt;DataStore=/u01/database/data/ttdb;DatabaseCharacterSet=AL32UTF8;ConnectionCharacterSet=AL32UTF8;DRIVER=/home/oracle/tt181/install/lib/libtten.so;LogBufMB=256;LogBufParallelism=8;LogDir=/u01/database/log;PermSize=512;TempSize=64;OracleNetServiceName=prod;
(Default setting AutoCommit=1)
Command> exit
Disconnecting…
Done.
[timestenrac2 conf]$ ttisql “uid=cacheadm;pwd=timesten;dsn=ttdb”
Copyright (c) 1996, 2021, Oracle and/or its affiliates. All rights reserved.
Type ? or “help” for help, type “exit” to quit ttIsql.
connect “uid=cacheadm;pwd=;dsn=ttdb”;
Connection successful: DSN=TTDB;UID=cacheadm;DataStore=/u01/database/data/ttdb;DatabaseCharacterSet=AL32UTF8;ConnectiwwwwwwonCharacterSet=AL32UTF8;DRIVER=/home/oracle/tt181/install/lib/libtten.so;LogBufMB=256;LogBufParallelism=8;LogDir=/u01/database/log;PermSize=512;TempSize=64;OracleNetServiceName=prod;
(Default setting AutoCommit=1)
Command>

3 Oracle 端的 Cache 管理员
此管理员用户名为 cacheadm, 口令为 oracle。该用户名与 Timeten 端 cache 管理员雷同
先切换到指定目录,因为此目录下有需执行的 SQL 脚本:

cd $TIMESTEN_HOME/install/oraclescripts
sqlplus sysprod as sysdba

执行以下 SQL:
CREATE TABLESPACE cachetblsp DATAFILE ‘cachetblsp.dbf’ SIZE 100M;

CREATE USER cacheadm IDENTIFIED BY oracle DEFAULT TABLESPACE cachetblsp QUOTA UNLIMITED ON cachetblsp;

grantCacheAdminPrivileges “cacheadm”

4 在 TimesTen 中缓存 Oracle Cache 管理员的口令
应用 timesten cache 管理员登录:
这个明码是 Cache Agent 后盾用的,执行如 autorefresh 这样的操作,就得事后用 ttCacheUidPwdSet 存起来。
$ ttIsql “DSN=ttdb;UID=cacheadm;PWD=timesten;OraclePWD=oracle” <<<<< 这里有两个明码,一个是 TT 端 cacheadm, 一个是 Oracle 数据库端 cacheadm
call ttCacheUidPwdSet(‘cacheadm’,’oracle’); <<<< 存储 Oracle 数据库端 cacheadm 的明码

留神:DNS 文件中 OracleNetServiceName 的设置,必须与 tnsnames.ora 中保持一致,也就是这个到 Oracle 的主动工作须要应用网络连接,这个配置要统一能力找到
Oracle 数据库,后面 cacheadm 和其明码都存好了,也就能够主动执行一些数据保护工作,比方主动定时刷新数据。

5 缓存功能测试
(1)在 Oracle 库中创立测试表(基表)
$ sqlplus oratt/oracleprod
CREATE TABLE readtab (keyval NUMBER NOT NULL PRIMARY KEY, str VARCHAR2(32));

插入数据:
INSERT INTO readtab VALUES (1, ‘Hello’);
COMMIT;

(2)赋权给缓存管理员 cacheadm,该用户对表 readtab 有 select 对象权限,对 writetab 有 select,insert,update,delete 对象权限。

GRANT SELECT ON readtab TO cacheadm;

(3)启动缓存代理
$ ttAdmin -cacheStart ttdb
从 ttstatus 能够查看以后缓存代理过程,截取 ttstatus 的局部信息
Type PID Context Connection Name ConnID
Cache Agent 5991 0x0000000001251e10 Marker(140183514806016) 6
Cache Agent 5991 0x00007f7eb00a4ae0 LogSpaceMon(140183516911360) 7
Cache Agent 5991 0x00007f7eb801ec70 Timer 3
Cache Agent 5991 0x00007f7ebc0c8820 Refresher(S,5000) 4
Cache Agent 5991 0x00007f7ebc1fa330 BMReporter(140183512700672) 5
Cache Agent 5991 0x00007f7ec004a1f0 Refresher(S,5000)(140183510595 1
Cache Agent 5991 0x00007f7f0807e9d0 Handler 2

$ ttisql “uid=cacheadm;pwd=timesten;dsn=ttdb;oraclepwd=oracle”
CREATE READONLY CACHE GROUP readcache <<<<<< 创立只读缓存组
AUTOREFRESH INTERVAL 5 SECONDS <<<<<<5 秒主动刷新一次
FROM oratt.readtab <<<<<< 刷新对象 oratt.readtab 表,这里页定义了该表
(keyval NUMBER NOT NULL PRIMARY KEY, str VARCHAR2(32));

缓存组信息如下:
Command> cachegroup

Cache Group CACHEADM.READCACHE:

Cache Group Type: Read Only
Autorefresh: Yes
Autorefresh Mode: Incremental
Autorefresh State: On
Autorefresh Interval: 5 Seconds
Autorefresh Status: ok
Aging: No aging defined

Root Table: ORATT.READTAB
Table Type: Read Only

(4) 刷新操作,Oracle 与 TimesTen 数据统一:

$ ttisql “uid=cacheadm;pwd=timesten;dsn=ttdb;oraclepwd=oracle”
LOAD CACHE GROUP readcache COMMIT EVERY 256 ROWS;
Oracle 端查问
SQL> select * from oratt.readtab;

KEYVAL STR


2 World
1 Hello
3 Hallo
4 Four
5 Five
6 Six

6 rows selected.

TimesTen 端查问
Command> select * from readtab;
< 1, Hello >
< 2, World >
< 3, Hallo >
< 4, Four >
< 5, Five >
< 6, Six >
6 rows found.

目前 Oracle 数据库端与 TimesTen 端数据同步,后续当 Oracle 数据库端表 readtab 数据变更,则 TimesTen 端数据主动装置同步。

正文完
 0