天萃荷净

详细记录关于In-Memory Database Cache配置方法与使用案例

一、Oracle数据库创建相关用户和权限

1.创建timesten用户

store information about cache grids

SQL> CREATE TABLESPACE cachetblsp DATAFILE

2 'E:\ORACLE\ORADATA\XFF\datfttuser.dbf'

3 SIZE 10M autoextend on next 10m maxsize 30g;

表空间已创建。

SQL> @E:\oracle\timesten\oraclescripts\initCacheGlobalSchema "cachetblsp"

Please enter the tablespace where TIMESTEN user is to be created

The value chosen for tablespace is cachetblsp

******* Creation of TIMESTEN schema and TT_CACHE_ADMIN_ROLE starts *******

1. Creating TIMESTEN schema

2. Creating TIMESTEN.TT_GRIDID table

3. Creating TIMESTEN.TT_GRIDINFO table

4. Creating TT_CACHE_ADMIN_ROLE role

5. Granting privileges to TT_CACHE_ADMIN_ROLE

** Creation of TIMESTEN schema and TT_CACHE_ADMIN_ROLE done successfully **

PL/SQL 过程已成功完成。

2.创建测试用户

the Oracle tables to be cached in a TimesTen database

SQL> create user xff identified by oracle研究中心;

用户已创建。

SQL> grant create session,resource to xff;

授权成功。

3.创建cache管理用户

creates and maintains Oracle objects that store information used to manage cache grids and enforce predefined behaviors of particular cache group types.

SQL> CREATE USER cacheuser IDENTIFIED BY oracle

2 DEFAULT TABLESPACE cachetblsp QUOTA UNLIMITED ON cachetblsp;

用户已创建。

SQL> @grantCacheAdminPrivileges "cacheuser"

Please enter the administrator user id

The value chosen for administrator user id is cacheuser

***************** Initialization for cache admin begins ******************

0. Granting the CREATE SESSION privilege to CACHEUSER

1. Granting the TT_CACHE_ADMIN_ROLE to CACHEUSER

2. Granting the DBMS_LOCK package privilege to CACHEUSER

3. Granting the RESOURCE privilege to CACHEUSER

4. Granting the CREATE PROCEDURE privilege to CACHEUSER

5. Granting the CREATE ANY TRIGGER privilege to CACHEUSER

6. Granting the DBMS_LOB package privilege to CACHEUSER

7. Granting the SELECT on SYS.ALL_OBJECTS privilege to CACHEUSER

8. Granting the SELECT on SYS.ALL_SYNONYMS privilege to CACHEUSER

9. Checking if the cache administrator user has permissions on the default

tablespace

Permission exists

11. Granting the CREATE ANY TYPE privilege to CACHEUSER

********* Initialization for cache admin user done successfully *********

二、TimesTen创建相关用户

1.cache管理用户

A cache manager user performs cache grid and cache group operations. The TimesTen cache manager user must have the same name as an Oracle user that can access the cached Oracle tables.

Command> CREATE USER cacheuser IDENTIFIED BY timesten;

User created.

Command> GRANT CREATE SESSION, CACHE_MANAGER, CREATE ANY TABLE TO cacheuser;

2.cache对应用户

You must create a TimesTen cache table user with the same name as an Oracle schema user for each schema user who owns or will own Oracle tables to be cached in the TimesTen database

Command> create user xff identified by timesten;

User created.

三、配置DSN

Data Store Path + Name: E:\oracle\timesten\mytt_db\data

Permanent Data Size: 64

Oracle Net Service Name: XFF

Database Character Set: ZHS16GBK

四、在TT中设置cache管理用户名和密码

ttIsql "DSN=my_ttdb;UID=cacheuser;PWD=timesten;OraclePWD=oracle"

Command> call ttCacheUidPwdSet('cacheuser','oracle');

Warning 5183: Function kollglid2 was not in the library. The function will not

be called.

Warning 5183: Function kollgsnp2 was not in the library. The function will not

be called.

Warning 5186: The OCI client library in use does not contain required routines

to support caching LOBS from Oracle.

--第一次调用相关函数因为没有编译出错,再次调用即可

Command> call ttCacheUidPwdSet('cacheuser','oracle');

五、创建测试表(Oracle db中)

SQL> CREATE TABLE readtab (keyval NUMBER NOT NULL PRIMARY KEY, str VARCHAR2(32));

表已创建。

SQL> CREATE TABLE writetab (pk NUMBER NOT NULL PRIMARY KEY, attr VARCHAR2(40));

表已创建。

SQL> INSERT INTO readtab VALUES (1, 'Hello');

已创建 1 行。

SQL> INSERT INTO readtab VALUES (2, 'World');

已创建 1 行。

SQL> INSERT INTO writetab VALUES (100, 'oracle研究中心');

已创建 1 行。

SQL> INSERT INTO writetab VALUES (101, 'WWW.oracleplus.net');

已创建 1 行。

SQL> COMMIT;

提交完成。

SQL> GRANT SELECT ON readtab TO cacheuser;

授权成功。

SQL> GRANT SELECT ON writetab TO cacheuser;

授权成功。

SQL> GRANT INSERT ON writetab TO cacheuser;

授权成功。

SQL> GRANT UPDATE ON writetab TO cacheuser;

授权成功。

SQL> GRANT DELETE ON writetab TO cacheuser;

授权成功。

六、TimesTen相关配置

1.创建cache grid

Command> call ttGridCreate('myGrid');

Command> call ttGridNameSet('myGrid');

2.Start the cache agent

Command> call ttCacheStart;

3.创建cache group

Command> call ttCacheStart;

Command> CREATE READONLY CACHE GROUP readcache

> AUTOREFRESH INTERVAL 5 SECONDS

> FROM XFF.readtab

> (keyval NUMBER NOT NULL PRIMARY KEY, str VARCHAR2(32));

Command> CREATE DYNAMIC ASYNCHRONOUS WRITETHROUGH CACHE GROUP writecache

> FROM XFF.writetab

> (pk NUMBER NOT NULL PRIMARY KEY, attr VARCHAR2(40));

Command> cachegroups;

Cache Group CACHEUSER.READCACHE:

Cache Group Type: Read Only

Autorefresh: Yes

Autorefresh Mode: Incremental

Autorefresh State: Paused

Autorefresh Interval: 5 Seconds

Autorefresh Status: ok

Aging: No aging defined

Root Table: XFF.READTAB

Table Type: Read Only

Cache Group CACHEUSER.WRITECACHE:

Cache Group Type: Asynchronous Writethrough (Dynamic)

Autorefresh: No

Aging: LRU on

Root Table: XFF.WRITETAB

Table Type: Propagate

2 cache groups found.

4.Start the replication agent for the AWT cache group

Command> call ttRepStart;

5.Manually load the cache group

Command> LOAD CACHE GROUP readcache COMMIT EVERY 256 ROWS;

2 cache instances affected.

Command> LOAD CACHE GROUP writecache COMMIT EVERY 256 ROWS;

2 cache instances affected.

七、TT授权

主要是为了直接在cacheuser中操作方便,无其他应意义

ttisql my_ttdb

Command> GRANT SELECT ON xff.readtab TO cacheuser;

Command> GRANT SELECT ON xff.writetab TO cacheuser;

Command> GRANT UPDATE ON xff.writetab TO cacheuser;

Command> GRANT DELETE ON xff.writetab TO cacheuser;

Command> GRANT INSERT ON xff.writetab TO cacheuser;

八、相关测试

1.测试READTAB表

Command> SELECT * FROM XFF.READTAB;

< 1, Hello >

< 2, World >

2 rows found.

SQL> INSERT INTO readtab VALUES (3, 'Welcome');

已创建 1 行。

SQL> commit;

提交完成。

Command> SELECT * FROM XFF.READTAB;

< 1, Hello >

< 2, World >

< 3, Welcome >

3 rows found.

SQL> update readtab set str='www.oracle研究中心';

已更新3行。

SQL> commit;

提交完成。

Command> SELECT * FROM XFF.READTAB;

< 1, www.oracle研究中心 >

< 2, www.oracle研究中心 >

< 3, www.oracle研究中心 >

3 rows found.

SQL> delete from readtab where keyval=3;

已删除 1 行。

SQL> commit;

提交完成。

Command> SELECT * FROM XFF.READTAB;

< 1, www.oracle研究中心 >

< 2, www.oracle研究中心 >

2 rows found.

2.测试WRITETAB表

Command> SELECT * FROM XFF.writeTAB;

< 100, oracle研究中心 >

< 101, WWW.oracleplus.net >

2 rows found.

Command> update xff.writetab set attr='www.oracleplus.net' where pk=100;

1 row updated.

Command> commit;

SQL> select * from writetab;

PK ATTR

---------- ----------------------------------------

100 www.oracleplus.net

101 WWW.oracleplus.net

Command> insert into xff.writetab values(102,'oracle研究中心');

1 row inserted.

Command> commit;

SQL> select * from writetab;

PK ATTR

---------- --------------------------------

102 oracle研究中心

100 www.oracleplus.net

101 WWW.oracleplus.net

--------------------------------------ORACLE-DBA----------------------------------------

最权威、专业的Oracle案例资源汇总之学习笔记:通过案例深入学习In-Memory Database Cache 总结配置过程

oracle 百万记录 cache,学习笔记:通过案例深入学习In-Memory Database Cache 总结配置过程...相关推荐

  1. HTML入门学习笔记+详细案例

    ✨HTML入门学习笔记+详细案例 作者介绍:

  2. [电离层建模学习笔记]开源程序M_GIM学习记录

    [电离层建模学习笔记]开源程序M_GIM学习记录 文章目录 [电离层建模学习笔记]开源程序M_GIM学习记录 1. 程序相关信息 2. 程序学习记录 2.1 采用的数据说明 2.2 程序运行前 2.3 ...

  3. Hadoop学习笔记—15.HBase框架学习(基础知识篇)

    Hadoop学习笔记-15.HBase框架学习(基础知识篇) HBase是Apache Hadoop的数据库,能够对大型数据提供随机.实时的读写访问.HBase的目标是存储并处理大型的数据.HBase ...

  4. Hadoop学习笔记—18.Sqoop框架学习

    Hadoop学习笔记-18.Sqoop框架学习 一.Sqoop基础:连接关系型数据库与Hadoop的桥梁 1.1 Sqoop的基本概念 Hadoop正成为企业用于大数据分析的最热门选择,但想将你的数据 ...

  5. Hadoop学习笔记—16.Pig框架学习

    Hadoop学习笔记-16.Pig框架学习 一.关于Pig:别以为猪不能干活 1.1 Pig的简介 Pig是一个基于Hadoop的大规模数据分析平台,它提供的SQL-LIKE语言叫Pig Latin, ...

  6. PyTorch 学习笔记(六):PyTorch hook 和关于 PyTorch backward 过程的理解 call

    您的位置 首页 PyTorch 学习笔记系列 PyTorch 学习笔记(六):PyTorch hook 和关于 PyTorch backward 过程的理解 发布: 2017年8月4日 7,195阅读 ...

  7. JavaScript学习笔记(十)——学习心得与经验小结

    JavaScript学习笔记(十)--学习心得与经验小结 目前我先列好提纲,利用每晚和周末的闲暇时间,将逐步写完 ^_^ 转载于:https://www.cnblogs.com/mixer/archi ...

  8. 学习笔记之——基于深度学习的图像超分辨率重建

    最近开展图像超分辨率( Image Super Resolution)方面的研究,做了一些列的调研,并结合本人的理解总结成本博文~(本博文仅用于本人的学习笔记,不做商业用途) 本博文涉及的paper已 ...

  9. CS230(DeepLearning)Leture2的学习笔记(2)之深度学习

    CS230_Leture2的学习笔记2之深度学习 我们先来回顾下第二章的学习目标:        而对于第二章Week1的学习目标已经完成,具体学习内容参考博主另一篇博客,站内搜索 CS230(Dee ...

最新文章

  1. webpack 入口文件 php,webpack,jsx_webpack jsx 找不到入口文件,webpack,jsx - phpStudy
  2. 【2020蓝桥杯】Python组真题解析 - 第十一届蓝桥杯
  3. 《移动应用开发》作业——JavaScript
  4. VTK:Rendering之Rainbow
  5. ODBC数据源选项卡中的系统DNS,用户DNS和文件DNS
  6. 你真的了解CSS3硬件加速吗?
  7. C++ 学习之旅(4)——调试Debug
  8. 索引原理及项目中如何使用索引实例分析
  9. 机器学习非监督学习—k-means及案例分析
  10. WinForm------TreeList修改节点图标和按钮样式
  11. 推流和拉流的概念以及RTMP和HLS协议
  12. linux定时备份文件到指定文件夹,Linux定时备份数据库到指定邮箱的方法
  13. js打印插件_使用 Nodejs 开发一个 commitlint-release 插件
  14. c语言 步进电机 程序,两相5、6线步进电机C语言程序
  15. 阿里如何实现海量数据实时分析?
  16. js初级动态随机抽人事件运用 计时器和超时期应用 解决用on事件onclick多次点击不能停止的问题
  17. 桌面快捷方式小箭头去除与恢复方法
  18. 腾讯音乐2020年报:懒人听书收购完成,谢振宇、太盟投资减持
  19. 一年级abb式词语并造句_用ABB造句-怎么用abb式词语造句-用ABB式的词语造句子
  20. Linux系列学习(二) - Vim编辑器的介绍及使用、文件编译的过程、Makefile工具、Gdb调试器

热门文章

  1. yum安装nginx的负载均衡详解
  2. Websocket协议的学习、调研和实现
  3. 【二分图判定】hdu3478 Catch
  4. wind2008中如何显示隐藏文件/夹
  5. windows server 2003之七---DNS
  6. 读研打比赛领奖金免费旅游,国内算法竞赛平台了解一下
  7. python--pandas 分位数
  8. 微信小程序_wxml学习
  9. Spring AOP注解方式实现日志管理
  10. reactjs组件生命周期:componentWillReceiveProps及新旧版本生命周期钩子函数对比