通过二十分钟的发呆, 进入了研究Oracle压缩(Compress)表的大门, 随之而来的这几天, 研究得很顺利, AUL 5的测试版发布了. 知道Oracle DUL 10版本支持压缩表后, 心中一直就有一个结, 如今这结已经打开, 剩下的只是多做些测试去发现Bug并解决Bug了. 在对Oracle文件格式的研究中, 我找到了自已的DBA激情, 那就是研究Oracle的兴趣, 给平静的DBA生活增加了一些特有的颜色.

    由于程序设计当初没有考虑压缩表的需求, 这一次的变动很大, 处理一个数据块内记录的函数(如printDataRows函数), 已经全部重写. 因此在最近一段时间内, AUL 5还不适合作为正式数据恢复的版本, 除非你需要恢复Compress表. 当然欢迎大家来对AUL 5进行测试, 测试方法如下:

1, 创建一个压缩表T_COMPRESS
2, 用AUL 5进行恢复(恢复步骤)
3, 将恢复出来的记录装载到非压缩表T_NOCOMPRESS中
4, SELECT * FROM T_COMPRESS MINUS SELECT * FROM T_NOCOMPRESS
5, SELECT * FROM T_NOCOMPRESS MINUS SELECT * FROM T_COMPRESS

    理想的结果是第四步和第五步中的SQL都返回0条记录. 开发这个功能时, 用于测试的数据库版本是Oracle 10g, 欢迎大家在Oracle 9i和Oracle 11g上进行测试.

    Update: Linux版本下载, Solaris版本下载