
此类问题解决之道的根本在于项目前期的表空间设计原则的设定,国内大部分系统只有几
个表空间的粗放式设计风格显然不可取,表空间设计应该充分体现数据可管理性、高可用性、高
性能等多方目标的诉求,也需要设计者非常熟谙Oracle表空间级的多种管理操作,例如本文提及
的基于表空间实施RMAN,还有只读表空间、表空间传输、基于表空间的数据加密、基于表空间的
数据压缩、基于表空间的ADO历史数据管理、基于表空间实施IMO等各种新老技术。然后结合业务
需求,再在时间、业务分类等维度展开表空间的精细化设计。
回到RMAN实施主题,表空间级RMAN备份可以直接通过backup tablespace进行,也可以通过
exclude命令选项将某些表空间排除或包括在数据库级的备份操作之中,例如以下就是我当年为
国税系统编写的只备份2006年业务数据的备份脚本:
RMAN> CONFIGURE EXCLUDE FOR TABLESPACE CTAIS2_DAT_2002 ;
RMAN> CONFIGURE EXCLUDE FOR TABLESPACE CTAIS2_DAT_2003 ;
RMAN> CONFIGURE EXCLUDE FOR TABLESPACE CTAIS2_DAT_2004 ;
RMAN> CONFIGURE EXCLUDE FOR TABLESPACE CTAIS2_DAT_2005 ;
RMAN> CONFIGURE EXCLUDE FOR TABLESPACE CTAIS2_DAT_2006 clear;
RMAN> backup incremental level 0 database format='/ctais/ctaisbak/FULL_%d_%t_%U'
plus archivelog delete all input tag= Level0_Backup;
上述语句的思路有点绕,即2002年至2005年表空间通过EXCLUDE选项排除在外,而2006年数
据则通过exclude … clear的否定之否定命令,将包含在后面的全库备份操作之中。
真实案例的深入探讨
上文讲述的那个每个数据文件为50M、2TB数据库的数据文件多达1万多个,最终导致60小时
备份时间的案例,我其实还不了解这个系统的表空间设计情况,是若干个大表空间包含了几十、
几百个50M大小的数据文件,还是每个表空间只包括一个50M数据文件,从而也导致1万多个表空
间?我很想一探究竟,但是我想该客户的备份恢复处可能不仅回答不了这个问题,而且他们也可
能没有兴趣去了解,因为他们只是在数据库级进行备份和恢复,全然没有考虑在表空间级进行备
份恢复所带来的显著收益。我认为这也是众多客户尤其是国企客户的一个更深层次问题:即过于
考虑分工负责,缺乏跨部门的IT系统总体规划和更精细化的实施策略。这就是国内IT系统可提升
和精雕细琢的巨大空间,最终也一定能给各行各业的IT系统带来显著的降本增效。
表空间精细化设计与其说是追求诸如RMAN备份、数据压缩、数据加密等数据管理工作的更加
精细化和高效能,不如说是更体现出IT从业人员做事风格的更加缜密、更加专业、更加职业化。
2. RMAN十大问题之六:没有实施全面的备份数据管理功能
问题描述
就像我们在将自己笔记本电脑的文件数据备份到活动硬盘或某个云存储服务器时,需要考
虑备份数据的份数或保存期限一样,RMAN也提供了强大的备份数据管理功能,例如RMAN提供了两
相关文档
评论