- 浏览: 2234181 次
- 性别:
- 来自: 深圳
最新评论
-
wahahachuang5:
web实时推送技术使用越来越广泛,但是自己开发又太麻烦了,我觉 ...
细说websocket - php篇 -
wahahachuang8:
挺好的,学习了
细说websocket - php篇 -
jacking124:
学习了!支持你,继续
初窥Linux 之 我最常用的20条命令 -
aliahhqcheng:
应该是可以实现的,没有看过源码。你可以参考下:http://w ...
Jackson 框架,轻易转换JSON
文章列表
系统配置:HP-UX B.11.31 U ia64、OracleEnterprise Edition Release 10.2.0.4.0、表级单向流复制问题现象:流复制失效,源表更新,目标表没有更新,没有apply error信息排错过程:
1) 检查源库的alert_<sid>.log,发现大量C001: large txn detectedC001: large txn detected (245742 LCRs), xid: 0x001e.008.00004d5cThu Apr 29 16:59:53 2010C001: large txn detected (245742 ...
- 2016-12-29 09:14
- 浏览 261
- 评论(0)
在使用Oracle10g 流复制时出现过一些问题,现在把解决过程总结一下。
系统配置:HP-UX B.11.31 U ia64、Oracle Enterprise Edition Release 10.2.0.4.0、表级单向流复制问题现象:流复制失效,源表更新,目标表没有更新排错过程:
1) 查看应用错误信息SQL> select apply_name,LOCAL_TRANSACTION_ID,SOURCE_TRANSACTION_ID,ERROR_MESSAGE from dba_apply_error;APPLY_NAME LOCAL_TRANSACTION_ID SOURCE_ ...
- 2016-12-29 09:13
- 浏览 307
- 评论(0)
表可以按range,hash,list分区,表分区后,其上的索引和普通表上的索引有所不同,Oracle对于分区表上的索引分为2类,即局部索引和全局索引,下面分别对这2种索引的特点和局限性做个总结。局部索引local index
1. 局部索引一定是分区索引,分区键等同于表的分区键,分区数等同于表的分区说,一句话,局部索引的分区机制和表的分区机制一样。2. 如果局部索引的索引列以分区键开头,则称为前缀局部索引。3.如果局部索引的列不是以分区键开头,或者不包含分区键列,则称为非前缀索引。4.前缀和非前缀索引都可以支持索引分区消除,前提是查询的条件中包含索引分区键。5.局部索引只支持分区内的唯一性,无 ...
- 2016-12-29 09:10
- 浏览 374
- 评论(0)
Killing the Oracle DBMS_JOBJames F. Koopmann,www.dbdoctor.net
源地址:http://www.quest-pipelines.com/newsletter-v4/0403_C.htm
Take control ofOracle's queue with a step by step approach to getting rid of those pesky DBMS_JOBs.
Let's face it, Oracle's job scheduling facility is a wonderful tool for sched ...
- 2016-12-29 09:04
- 浏览 310
- 评论(0)
什么是星型模式?
可以将星型模式描述为一个简单的星型:中央表包含事实数据,多个表以中央表为中心呈放射状分布,它们通过数据库的主键和外键相互连接。
什么是雪花型模式?
雪花型模式表示一种维度模型,该模型也是由一个中央事实表和一组成员维度表组成,这些维度表可进一步规范化为子维度表。
何时使用雪花型模式实施?
数据仓库专家 Ralph Kimball 建议了三种情况,在这三种情况下,不仅可以使用雪花型实施,而且它还是成功设计的关键:
- 2016-12-29 08:58
- 浏览 173
- 评论(0)
有个需求看着很简单,但也查了许多资料,还是记录下来。需求是这样的:根据一个表中的某些被修改的字段修改其它字段,用触发器实现。示例代码如下:
CREATE TABLE t
(
ID INT,
update_time DATE,
other_col VARCHAR2(20)
);
CREATE OR REPLACE TRIGGER trigger_on_t1_change
BEFORE INSERT OR UPDATE
ON t1
FOR EACH ROW
BEGIN
:NEW.update_time := SYSDATE;
END;
/
- 2016-12-28 16:32
- 浏览 685
- 评论(0)
应用程序开发人员的需求是这样的:1. 根据条件给每一个国家的商品生成唯一7位随机代码,不同国家之间的商品代码可以相同2. 如果输入标准分隔符的字符串,则解析该字符串作为需要生成的商品ID,为其生成代码,否则为商品表中所有商品ID生成代码3. 代码的每一位要符合相应的规则,例如第一位的规则是[0123],则这位只能是0、1、2、3中的一个数4. 由于可能一次生成大量的代码,这个过程需要较长时间,所以需要用进度条提示生成进度5. 可以在生成过程执行中终止过程6. 返回需要生成的代码个数和实际生成的代码个数7. 每次提交的个数可以通过参数定义,例如共要生成10万的代码,每次提交1000个
设计思路: ...
- 2016-12-28 16:29
- 浏览 317
- 评论(0)
使用下面的方针决定是否使用聚簇表:
经常被应用的连接语句访问的表可以使用聚簇表
如果应用只是偶尔地使用表连接,或者频繁修改连接列的值,则不要使用聚簇表。修改一行的聚簇键值比修改非聚簇表的值花费更长的时间,因为Oracle可能为了维护聚簇而把被修改的行从一个块迁移到另一个块。
如果应用经常对聚簇中的一个表进行全表扫描,则不要使用聚簇表。对聚簇表的全面扫描会比对非聚簇表的全表扫描花费更长的时间。因为表被存储在一起,Oracle可能要读取更多的块。
如果经常查询一个主表的记录和与之对应的子表记录,这种主子表可以放到一个聚簇中。子表和主表记录被存储在相同的数据块,因此当查询它们的时候将被一起读到内存中 ...
- 2016-12-28 16:23
- 浏览 193
- 评论(0)
高性能MySQL这本书中关于查询缓存有一段这样的描述:
Cache invalidations can happen because of fragmentation, insufficient memory, ordata modifications. If you have allocated enough memory to the cache and tuned thequery_cache_min_res_unit value properly, most cache invalidations should be due todata modifications. You can ...
- 2016-12-28 16:21
- 浏览 294
- 评论(0)
在本地用select语句访问远程,如果远程表有CLOB字段的话则会有错:ora-22992;如果真的想看到clob字段的内容的话就得在本地建立一个表,用下面两条语句:我刚才试验insert into table select * from remote table成功remote table含有CLOB总结:在我的环境中成功(1)create table aaa select * from remote table(2)insert into table select * from remote table
不过网上也有以下说法,虽然有错,不过也是一种方法,
通过临时表从DBLink中获取Blo ...
- 2016-12-28 16:19
- 浏览 720
- 评论(0)
数据模型
传统的数据库在数据模型方面,主要是关系型,它的特色是对Join类操作和ACID事务的支持。在NoSQL领域,主要有三种主流的数据模型:
Column-oriented(列式)
列式也主要使用Table这样的模型,但是它并不支持类似Join这样多表的操作,它的主要特点是在存储数据时,主要围绕着“列(Column)”,而不是像传统的关系型数据库那样根据“行(Row)”进行存储,也就是说,属于同一列的数据会尽可能地存储在硬盘同一个页(Page)中,而不是将属于同一个行的数据存放在一起,这样做的好处是,对于很多类似数据仓库(Data Warehouse)的应用,虽然每次查询都会处理 ...
- 2016-12-28 16:15
- 浏览 247
- 评论(0)
这一篇博客我们来介绍一下Mybatis执行sql语句返回的结果值的到实体对象的映射机制。首先ResultType和ResultMap的使用方式是不同的。
ResultType的使用方式:
resultType的值为实体类
<select id="getUser" parameterType="int" resultType="com.tianjunwei.learn.learn1.entity.User">
select * from users where id=#{id}
</select&g ...
- 2016-12-28 15:49
- 浏览 418
- 评论(0)
一、查询缓存
1. 查询缓存命中率计算公式:
Qcache_hits/(Qcache_hits + Com_select)
2. 状态变量
Qcache_hits
查询缓存命中数,即可以从查询缓存中直接返回结果的次数
Qcache_not_cached
不可缓存查询数,current_date等不确定函数或者查询结果大于query_cache_limit使得查询不可缓存
Qcahce_inserts
被加入缓存的查询数,包括新查询或缓存失效后重新被缓存的查询
Qcache_free_blocks
查询缓存中空闲块数,如果此值过高,说明缓存碎片严重
Qcache_lowmem_prunes
- 2016-12-28 15:46
- 浏览 217
- 评论(0)
Oracle里有内建函数bin_to_num可以将二进制数转换为十进制数,但这个函数的入参是个数不定的0或1:
[sql]view plaincopy
SELECTBIN_TO_NUM(1,1
- 2016-12-28 15:44
- 浏览 271
- 评论(0)
总的SELECT查询数 = Com_select + Qcache_hits + queries with errors found by parser
Com_select = Qcache_inserts + Qcache_not_cached
+ queries with errors found during the column-privileges check
- 2016-12-28 15:41
- 浏览 219
- 评论(0)