摘要: 现在随着项目集成的越来越深入,异构的数据多起来,数据同步的场景也用的多起来,我甚至在考虑是否忽悠用户上Oracle GoldenGate了,这样就可以不用考虑采用哪种同步方案了。 简单的介绍一下我们数据的业务,与边界交换网管相关,有两个表一个是缓冲表,另外一个是持久化表。在一个库类,不同的表名,看似很简单,要不然也不会写出来,主要是其中有多个blob字段! 这样有如下个问题 1.Blob字段无法做数据变化监控,只能监控id 和其他字段的变化 2.Blob字段在入另外表时必须先iNSERT 后 UPDATE,总共在一个事物隔离级别中,进行的。 想了个偷懒的方法 1.通过... 阅读全文
posted @ 2013-11-29 22:59 jerry_xing8 阅读(913) 评论(0) 推荐(0) 编辑
摘要: 今天完成了一个负载较高的中央数据库的分库操作, 并实现了oracle的滚动升级(10.2.0.1->10.2.0.4), 业务中断仅15分钟. 平台: RHEL AS 4 + Oracle 10.2.0.1分库目的:1) 迁出BUSINESS/BUSINESS_APP两业务系统用户数据, 减轻中央库的业务压力和负载, 调整数据库架构, 以应对后续新业务系统上线造成对中央库的冲击;2) 新库升级Oracle10.2.0.1到10.2.0.4, 数据库本身修复了很多bug, 增强了数据库的稳定性.3) 调整定时任务, 把原先的定时任务由crontab/job方式改为oracle schedu 阅读全文
posted @ 2013-11-19 11:49 jerry_xing8 阅读(1491) 评论(0) 推荐(0) 编辑
摘要: 总结一下Oracle数据库表级别的复制同步一.通过触发器进行表的复制原理,是监听表上都某一字段进行的DML操作,然后得到DML操作的数据,重新在另一个表上执行DML操作。优点: 简单,编写一个触发器就可以,不需要过多的配置。 易修改,遇到了问题很好定位。缺点:表大的话是有性能问题,如果表中含有blob列,是无法监听到其改变的,而且整个insert 必须先insert 一个空的blob,再进行update操作,而且很有可能出现数据不为空,blob为空的情况。二.通过Stream进行表同步原理,Stream的功能很强大的,主要是进行多个数据库之间的同步,在原库和目的库,分别启动捕获队列,捕获进程和 阅读全文
posted @ 2013-11-18 14:53 jerry_xing8 阅读(7503) 评论(0) 推荐(0) 编辑
摘要: 实在是很简单的一个Django 的分页插件。使用pip instal pagination 即可完成安装。完成后配置如下:1. 将安装文件中的 pagination 文件夹拷贝到项目的根目录下2. settings.py 修改添加 App1 INSTALLED_APPS = (2 # ...3 'pagination',4 )app configuration添加中间件1 TEMPLATE_CONTEXT_PROCESSORS = (2 "django.core.context_p... 阅读全文
posted @ 2013-11-15 17:22 jerry_xing8 阅读(731) 评论(0) 推荐(0) 编辑
摘要: editplus中输入tab自动变成4个空格打开tools->preference打开面板,files的子栏目->settings & syntax面板中的tab/indent再打开子面板,1.把上面tab与indent的值改为4,2.勾选insert spaces instand oftabeditplus打开后自动换行打开tools->preference打开面板,files的子栏目->settings & syntax面板中的 word-wrap 再打开子面板,1.勾选 enable word-wrapeditplus取消保存时产生的.bak文件打 阅读全文
posted @ 2013-11-13 12:02 jerry_xing8 阅读(746) 评论(0) 推荐(0) 编辑
摘要: 总结一下 Django开发中,注意的事项,特别是新人,由于水平有限,也只能到这个层次,更多模式思想性的东西,还得在开发中慢慢体会。 1.各个APP独立,做到项目的模块分明。说的有点大,列几个列子优先 from project.bookmark.models import Tag 该例子将项目名称加入其中是不合适,缺点在于:应用和项目变成了紧耦合,无法将应用轻易变得可重用。如果将来要换一个项目名称,那你可有得受了。 推荐的做法是1 from bookmark.models import Tagdjangoa app 还有个例子1 bookmark.views.py2 3 from... 阅读全文
posted @ 2013-08-09 14:42 jerry_xing8 阅读(13362) 评论(0) 推荐(2) 编辑
摘要: 一.近日在做全文检索,基础采用oracle text,版本是10g,做好管理页面后,有功能是删除索引,就是生成drop index的语句。没有想到这个全文检索的index这么直接弄还不行,经过这样删除的index涉及到的表,重新建立索引后,插入会报错错误如下:Java代码ora-29861:域索引标记为loading/failed/unusable网上多数解释是说这个索引有问题了,但是这个索引根本没有问题,同步和重建这个索引都不能解决这个问题,知道我看到有人说是采用这样的方法查看索引的状态Sql代码select*fromsys.all_indexestwheret.owner='CTX 阅读全文
posted @ 2013-07-04 11:57 jerry_xing8 阅读(545) 评论(0) 推荐(0) 编辑
摘要: 简介: Python 是一种强大的面向对象脚本语言,用 python 开发应用程序往往十分快捷,非常适用于开发时间要求苛刻的原型产品。使用 python 开发 web service 同样有语言本身的简捷高速的特点,能使您快速地提供新的网络服务,从而适应快速发展的网络商业环境。本文将用实例一步步描述如何用 Python 开发 web service。 搭建开发环境 一个基本的 pytho... 阅读全文
posted @ 2013-05-09 20:19 jerry_xing8 阅读(756) 评论(0) 推荐(0) 编辑
摘要: Cube在Oracle数据库中的应用非常广泛,特别是在产生交叉报表的情况。OracleOLAP使用MView刷新cube的方法是比较常用的。 我们用Oracle数据库创建了一个cube ,这时cube 里面的数据只有在我们手工执行。 dbms_cube.build(‘<cube_name>’) 才会被刷新。 比如你在前面已经建立好了global 的price_cube , 并且执行了第一次d... 阅读全文
posted @ 2013-05-07 15:33 jerry_xing8 阅读(626) 评论(0) 推荐(0) 编辑
摘要: 1.通过JOB SCHEDULER 进行 ORACLE CUBE 中的物化视图进行刷新时,出现的LOG如下:SQL> exec dbms_mview.refresh('DW.CB$DSS_TFAC_DEVICE_CUBE');BEGIN dbms_mview.refresh('DW.CB$DSS_TFAC_DEVICE_CUBE'); END;*第 1 行出现错误:ORA-37162: OLAP 错误XOQ-00703: 执行 OLAP DML 命令"(SYS.AWXML!R11_AGGREGATE_CONSISTENT('DSS_TFA 阅读全文
posted @ 2013-05-06 14:55 jerry_xing8 阅读(778) 评论(0) 推荐(0) 编辑