db2 备份 恢复

备份和恢复
备份和恢复是在介质失效的情况下确保业务连续性的基本要求。MySQL 备份和恢复选项在很大程度上依赖于底层的表类型。比如 MyISAM 和 InnoDB 表类型都允许进行数据库冷备份。不过从 MySQL 4.0 版开始,还以商业附件的形式提供了 InnoDB 热备份 (InnoDB 是 Oracle Corp. 的产品),但 MySQL 5.1 仍然不支持 MyISAM 的热备份。


DB2 Express 从一开始就提供了冷备份和热备份。所谓冷备份,就是当用户处于离线状态时,不访问正在备份的数据库。这就意味着,使用冷备份时,如果遇到介质失效的情况, 上一次备份以后的数据将丢失。而热备份允许事务继续写入日志,无需关闭正在备份的数据库。通过适当的规划,热备份可以确保介质失效的情况下不损失数据。 24x7 环境需要这种备份。
DB2 Express 有两种记录法,即循环记录法和存档记录法。循环记录法(循环写入,写满后覆盖)可以进行冷备份,档案记录法(存档已经提交的内容)支持热备份。
选择冷备份还是热备份取决于在 db config 中设置的参数:

LOGFILSIZ —— 日志文件大小。总数为 4KB(默认 250)
LOGPRIMARY —— 主日志个数(模认为 3)
LOGSECOND —— 主日志填满时可以分配的次级日志个数。
NEWLOGPATH —— 更改后续日志文件存储的位置。只在数据库重新激活时生效。
MIRRORLOGPATH —— 写入日志的后备路径,以免单点失效。
OVERFLOWLOGPATH —— 指定前滚操作中的日志位置,以便在多个位置访问日志。

failarchpath--故障转移归档路径(failarchpath)
如果指定的日志归档方法失败,则为归档日志文件指定备用目录。在失败的日志归档方法再次可用之前,此目录是日志文件的临时存储区,此时日志文件将从此目录 中移至日志归档方法。通过将日志文件移动至该临时位置,可以避免日志目录发生已满情况。此参数必须是一个全限定现有目录。
冷备份很简单。首先关闭数据库,然后发出备份命令,如 db2 backup database  to c:/backup
热备份同样简单。首先打开日志保留参数,然后发出命令,如 db2 backup database online  to c:/backup
冷备份和热备份都可以通过在 DB2 Express Control Center 中点击几下鼠标来完成。另外,DB2 Express 还提供了增量备份和 delta 备份。



增量备份 —— 备份最近一次成功的完全备份以后的所有更改。
Delta 备份 —— 备份上一次成功的完全备份、增量备份或 delta 备份以后的所有更改
关于备份和恢复问题,将在以后的文章进行更详细的讨论。

 

在版本9之前,DB2有三种方式的压缩,分别是空间值压缩(VALUE COMPRESS子句)、索引压缩(MDC技术)和数据库备份压缩。
使用空间值压缩(VALUE COMPRESS子句)时,不会将变长数据类型(VARCHAR、VARGRAPHICS、LONG VARCHAR、LONG VARGRAPHIC、BLOB、CLOB和DBCLOB)的 空值(NULL)和零长度数据存储在磁盘上。只有与这些数据类型相关联的开销值才会占用磁盘空间。如果使用了VALUE COMPRESS,那么还可以使用可选COMPRESS SYSTEM DEFAULT选项来进一步减少磁盘空间的使用量。如果插入的或更新的值等于列的数据类型的系统缺省值,那么使用的磁盘空间最少。缺省值将不会存储在磁盘 上。支持COMPRESS SYSTEM DEFAULT的数据类型包括所有数字类型列、定长字符和定长图形字符串数据类型。这表示零和空格可以压缩。

    通过在创建表的时候指定ORGANIZE BY DIMENSIONS选项,将对表的启用MDC功能,可以指定一个或多个键作纬。MDC是使用基于块的索引, 块索引指向记录块或记录组,而不是指向单个记录。通过从物理上根据群集值将MDC表中的数据组织成块,然后使用块索引来存取这些块,能显著地改善性能。在 MDC中,群集索引是基于块的。这些索引比常规的基于记录的索引要小很多,因此,占用的磁盘空间更少,并且扫描时速度会更快。

    如果数据库中的数据量比较大,可以在备份数据库的时候通过指定COMPRESS选项使用备份压缩功能,从而是备份映像文件需要的存储空间最小。

    DB2 V9新增了可用来压缩数据对象的基于字典的行压缩功能。在压缩数据时,通过使用较少的数据库页来表示相同数据,从而达到节省磁盘存储空间的目的。对于那些 行中包含重复模式的大型表,将能从此功能中受益。数据行压缩(COMPRESS子句)可与现有的空间值压缩(VALUE COMPRESS子句)一起使用。对于使用行压缩的表,查询性能可能有所提高。可能需要更少的 I/O 操作来访问压缩数据,并且在压缩后,可以将更多数据高速缓存在缓冲池中。由于用户数据压缩在日志记录内,因此日志记录可能会变小。对于 UPDATE 日志记录,则可能不会出现这种情况。与行压缩关联的成本取决于压缩和解压缩数据所需的额外 CPU 周期。在访问行中的数据时,压缩和解压缩是以行为单位执行的。要评估使用行压缩后存储器的节省情况,可使用 DB2 INSPECT 联机实用程序的 ROWCOMPESTIMATE 选项。在启用了表的COMPRESS 属性并创建了压缩字典之后,才可压缩行。可通过 CREATE 或 ALTER TABLE 语句来设置 COMPRESS 属性。可使用 REORG TABLE 命令来创建压缩字典。在处理 REORG
命令时,现有的所有表行都要被压缩。数据行压缩不适用于索引、LOB、LF 或 XML 对象。

    在将表存储在磁盘上时,如果对数据行、空值和系统缺省值使用诸如压缩之类的功能,则表可能占用较少的空间。通过数据压缩,可以使用较少的数据库页来存储数 据,从而节省磁盘存储空间。由于每页可以存储更多的逻辑数据,因此访问同样多的逻辑数据时需要读取的页数将会少一些。这意味着压缩还可以节省磁盘I/O。 I/O速度也会加快,因为可以将更多的逻辑数据高速缓存在缓冲池中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值