工作中需要进行数据迁移,使用expdp做的,做个记录。expdp是oracle10g中提出来的,比exp的速度高的不是一般,这个是体验过的。和DBA在做数据迁移的时候,开始用的exp,超过半个小时后,我们就忍受不了了,太慢了,就改成了expdb,4分钟,8个G,速度不错吧!看下我们使用 脚本 1: expdp dbusername/dbpassword dumpfile=dmpfilename.dmpdirectory=DMPDIRECTORY tables=tablename:partname exclude=index; 分析一下 expdp 导出命令 dbusername/dbpassword 数据库用户名和密码(注:要有执行expdp命令的权利) dumpfile=dmpfilename.dmp 导出的数据文件 logfile=dmpfilelog.log 导出时的日志文件 directory=DMPDIRECTORY 数据文件的保存位置(需要提前创建) tables=tablename:partname 按表分区导出,tablename是表名,partname是分区名 exclude=index 不导出索引详细介绍下expdp1. 执行expdp之前必须创建directory对象,并且分配权限,如: connect system/admin createor replace directory expdir as'e:dmpfile'; grantread,writeon directory expdir topublic;2. 常见用法:(我这里直接用命令行的方式,还有使用配置文件的方式)2.1 导出scott整个schema expdp system/admin@dapengdb DIRECTORY=expdir DUMPFILE=scott_full.dmp LOGFILE=scott_full.log SCHEMAS=SCOTT配置文件的方式 expdp system/admin@dapengdb parfile=c:exp.par exp.par内容: DIRECTORY=expdir DUMPFILE=scott_full.dmp LOGFILE=scott_full.log SCHEMAS=SCOTT2.2 导出scott下的dept,emp表 expdp scott/tiger@dapengdb DIRECTORY=expdir DUMPFILE=scott.dmp LOGFILE=scott.log TABLES=DEPT,EMP2.4 导出scott下的存储过程 expdp scott/tiger@bright DIRECTORY=expdir DUMPFILE=scott.dmp LOGFILE=scott.log INCLUDE=PROCEDURE2.5 导出scott下以’E’开头的表expdp scott/tiger@bright DIRECTORY=expdir DUMPFILE=scott.dmp LOGFILE=scott.log INCLUDE=TABLE:"LIKE'E%'" –可以改成 NOTLIKE,就导出不以E开头的表2.6 带QUERY导出expdp scott/tiger@bright DIRECTORY=expdir DUMPFILE=scott.dmp LOGFILE=scott.log TABLES=EMP,DEPT QUERY=EMP:"where empno >=8000″ QUERY=DEPT:"where deptno >=10 and deptno <=40″注:处理这样带查询的多表导出,如果多表之间有外健关联,可能需要注意查询条件所筛选的数据是否符合这样的外健约束,比如:EMP中有一栏位是deptno,是关联dept中的主键,如果”where empno >=8000″中得出的deptno=50的话,那么,你的dept的条件”where deptno >=10 and deptno <=40″就不包含deptno=50的数据,那么在导入的时候就会出现错误! 摘抄网址:[http://www.dbifan.com/200802/common-usage-of-expdp.html](http://www.dbifan.com/200802/common-usage-of-expdp.html "http://www.dbifan.com/200802/common-usage-of-expdp.html")原文采用配置文件的方式。
5月6月牢骚一大把 5月过了就像把这个牢骚发发的,没找着机会,这次5月6月的牢骚一起发了。4月末项目中的短信发送出了问题,负责这块的哥们回家了,我跟了这块的问题,算是有人在处理,可也没处理个啥结果,心急啊,我也没个实质性的好办法。系统升级失败,回退到升级前的状态,还出问题,真是叫人无法理解,没法查啊!还是硬着头皮看代码,又不是这块的熟手,没办法改这个东西。最后为了过个安稳点的5.1,有了一个版本出来了,算是解决了正常使用,也遗留了一大块的问题,放到5.1后再处理了。5.1前的问题就这么过去了。原想是5.1休息休息,前两天我姐到武汉了,5.1就去了趟武汉,去那边了,没看见过太阳,我姐身体不太好,还带着小外甥,没出去转过哪里。回南京时,去火车站,半路公交车给坏了,下了一车人,还赶巧了,下车的那地方,就是黄鹤楼,进去一张门票是30还是60的,忘记了,没去,都6点多了吧!我还得找地方住呢,不然晚上要在雨下面待着了。5月份一上班,稀里糊涂的就去另外个项目做支援去了,当时没弄明白,事后才知道的,也不给人说清楚些。5月份基本都在这项目组里面,要给领导们做演示,加班加点的,没休息几天,休息了一次,还在搬家。今年的5月份,最倒霉了,啥倒霉事情还都赶到一起了。事情做完了,没落个是什么好,我认了,这真是我个人的问题。另外就是,演示的前一天中午,在领导要看系统的面前,电脑打不开了,最后的结论是硬盘坏了,项目代码都在我电脑上面,这个运气,真是赶上时间了啊!幸好代码曾经给一朋友发过一份,不然真就是完蛋了。硬盘坏了,这天灾,我也认了。后面接着还有,领导对我今年来的状况做了教育,今年来杂七杂八的事情,心一直静不下来,被教育是应该的。后面有的是,被别人在我后面说三道四了,o(︶︿︶)o 唉!这个我就有点伤心了,一个战壕里面都1年的兄弟了,不需要这样吧!说我做的不对的,我不介意,说一些乱扣帽子的,就不好了吧!这么久了,谁做什么,谁说什么,都知道,真不需要这样的。6月,我是打算好好干起来的,可就是没压住,事情还是有遗漏,这个遗漏啊,把这次升级弄的一团糟,o(︶︿︶)o 唉!现在也不知道咋办了,又乱起来了,比之前更加的乱。NND!!!!!
人人网的开源框架paoding-rose(1) 计划使用servlet+jsp来做,不打算使用框架的,估计是遭了框架的毒了,自己的设计思路还是框架的思维,这样下去,自己就像去写框架了,自己的能力自己了解,就算写出来,价值顶多是自己吹牛用用,还不足使用现成的。 现在开源社区的框架遍地开花,分不出来好坏,经典的配合不是ssh,就是ssi,我都用过,传说中的mvc模式,我感觉用起来还没有jdbc使用的方便。 去年人人把自己的框架开源了,曾经看过,没地方用,没细细看,很失误的啊!昨天半夜起来,把人人的paoding-rose下载下来,计划今天研究研究,看一下看传说中的人人框架。 人人paoding-rose的地址是:http://code.google.com/p/paoding-rose/ 版本还是2010年6月份1.01的版本,真的是好久都没更新了。 paoding-rose其实不能说是人人开发的框架,它是在spring2.5.6上面二次开发,开发了一些特性,更加能快速开发。 paoding-rose的lib包有9m大,这个我认为就很大了,看lib中,除了常用的jar包外,有spring,还有paoding-rose的包,另外还有veloctiy的包。veloctiy是个模板引擎,我是打算这次使用到项目中的,这下集中进来了,省了不少事情! 我学习的方法是,看demo,写demo,在写demo的过程中再看API的使用。 paoding-rose的文档太节约了,demo也很少,有些东西我是蒙出来的。文档和demo的说明,还算规范,源码中的注释写的很详细,虽说里面有些错误,但也不影响阅读。例子,这个写的,我就怀疑是不是写框架的人写的了,里面那么多明显的错误,也不改改。 网上除了人人在google上面的提供的文档外,没看到其他例子,写了一个,依照是第二个例子,也仅仅是做了一个查询而已,相当简单,看看就会。 下载地址是: 其中使用paoding-rose,有几个需要注意的 1.简单的dao,写接口就可以,在@SQL("")中写好sql就可以了,不用写实现类,这点很实用、快速。写实现类的核心就是写sql脚本,而paoding-rose就是把sql封装到了@SQL(),看源码,也就是动态解析生成,难度不大,不过这样的思想可不容易学啊! 2.controller层必须出现在controllers包中,名字必须满足***Controller,我就是因为没有这样做,害的我查了好几个小时,饭都没吃好,和官网上面的例子,一个一个做对比,才发现的,而且,这样关键的约定,我没有在官网的任何地方发现有说明,o(︶︿︶)o 唉!框架做的不错,就是文档做的有些差。这样的规定是一个框架的约定,我认为这样不太适合,我已经做好了注解,还要指明路径,才能找到controller,完全可以做成自动载入的,不过,想一想,在一个大型项目中,java类会很多的,完全靠自动扫描,也有些不现实。 3.很关键的一点,要注意其中那些原标记的使用。在paoding-rose中,大量使用原标记,原标记的确是很好用的东西。