DB2 back 存档使用与正确维护

数据库
我们今天主要向大家描述的是DB2 back 存档使用与正确维护,以及对其在实际操作中值得我们大家留意的相关事项的描述。

以下的文章主要向大家描述的是DB2 back 存档使用与正确维护,在实际操作中我们是否希望以更好的方法管理 IBM® DB2® for Linux® or AIX® 服务器上的诊断文件?如果是这样,本文会对您有帮助。

这里提供一个脚本,它可以帮助您存档和维护这些文件。通过压缩和删除旧的文件,可以进一步简化管理过程。

简介

随着自治技术的应用日益增加,DB2 数据库服务器可能会产生很大的消息日志文件、管理通知日志文件和事件日志文件。在具有许多逻辑和物理分区的大型数据仓库环境中,这种情况尤其显著。另外,在出现问题时,为了满足首次故障数据捕捉的需要,DB2 往往会产生大量诊断数据。

日志记录活动的增加还会增加占用的文件系统空间,导致可管理性问题。简单地删除日志文件是不可行的,因为 DB2 支持人员常常要求用户提供历史诊断数据,尤其是在研究当前问题期间和迁移实例之后。

本文介绍一个新脚本,可以使用它对 DB2 实例的诊断日志和数据执行维护任务。这个脚本称为 db2dback.ksh,可以通过后面 下载 部分中的 zip 文件获得它。这个脚本可以在单一分区和多分区环境中运行,它会考虑不同的用户设置,不同的物理分区可以使用共享的或单独的诊断数据路径。

脚本概述

db2dback.ksh shell 脚本可以对来自 DB2 数据库实例配置的诊断数据路径 (DIAGPATH) 的诊断数据进行存档。还可以对目标(存档)目录中已经存档的数据进行维护。

DB2 实例的所有者应该定期运行此脚本。可以手工运行此脚本,也可以通过调度工具(例如,cron 作业)运行。

此脚本当前可以处理 AIX 和 Linux 操作系统上的 DB2 实例。在这两种环境中,它可以处理单分区实例或用 Data Partitioning Feature (DPF) 创建的多分区实例,还包括 Balanced Warehouse 设置。在 DPF 环境中,此脚本支持不同的实例配置:

在所有分区之间共享单一 DIAGPATH

每个物理分区使用单独的 DIAGPATH

 

注意:DIAGPATH 是一个 DB2 数据库管理程序配置参数值。如果在实例配置中没有设置这个参数,那么使用 DB2 实例所有者的默认值 $HOME/sqllib/db2dump。关于数据库管理程序配置参数的更多信息,请参见 DB2 Information Center。

安装脚本

DB2 实例所有者可以按以下步骤安装此脚本:

从下面的 下载 部分获取 db2dback.zip 文件。

从 zip 文件中提取出 db2dback.ksh 脚本。

 

把 db2dback.ksh 复制到 DB2 数据库实例的 sqllib/bin 目录中。

 

必须有在 DPF 设置上远程执行脚本所需的执行权限。

下面的命令示例设置正确的执行权限:

  1. cp db2dback.ksh ~/sqllib/bin  
  2. hmod 755 ~/sqllib/bin/db2dback.ksh 

获得脚本帮助

可以用 –h 命令行选项运行 db2dback.ksh 脚本,显示脚本选项的帮助:

  1. $ db2dback.ksh -h  
  2. 04-01-2009 13:13:25: DIAGPATH is set to /home3/agrankin/sqllib/db2dump  
  3. Usage: db2dback.ksh [-ahzvptl] [-o <path> ] [-r <days> ]  
  4. Options:  
  5. -h Print help message  
  6. -a Archive diagnostic data  
  7. -r <days> Remove diagnostic archives that are >   
  8. then <days> old. Can be combined with -a  
  9. -o <dir> Specify output directory  
  10. -z Compress diagnostic data tar archive  
  11. -v Verbose output.  
  12. -p Run diag data archiving in parallel  
  13. (default is sequential).  
  14. -l Local execution. This is used in cases   
  15. when db2dump is shared by all partitions.   
  16. It also can be used if archive runs on   
  17. just single physical partition.  
  18. -t Suboption for -a, archives data to a   
  19. tar archive at destination. 

下面详细介绍不同的选项。

指定目标(存档)目录

如果没有在命令行上指定目标目录,脚本使用 DIAGPATH/db2dump_archive 目录作为默认的目标。如果此目录不存在,脚本会创建它。

可以创建一个 DIAGPATH/db2dump_archive 链接,让它指向另一个有足够空间的本地或 NFS 挂载文件系统。在有多个物理分区的 DPF 设置中,如果物理分区不共享诊断路径目录,那么必须在每个物理分区上创建此链接。

存档

使用 –a (archive) 命令行选项存档来自 DIAGPATH 的诊断数据:

  1. db2dback.ksh -a [-o <destination_path> ] 

在默认情况下,在 DPF 系统上脚本尝试使用 rah 命令在每个物理分区上运行本身的本地版本。如果所有物理分区共享 DIAGPATH(BCU 不建议这么做),可以使用 –l 子选项调用脚本的本地版本。

脚本把 db2diag.log 和管理日志文件重命名为 db2diag.log..log.,然后为实例创建新的日志文件。然后,脚本使用 UNIX mv 命令转移 DIAGPATH 中的所有文件和目录,但是以下文件和目录除外:

刚创建的 db2数据库diag.log 和管理通知日志文件。

stmmlog 目录中的自调优内存管理程序 (STMM) 日志文件。STMM 自动地管理它的日志文件使用的空间,通常不会让空间总量超过 50MB。

 

在 15 分钟以内创建的任何诊断数据文件或首次发生数据捕捉 (FODC) 目录。这是为了确保在诊断数据转储期间启动存档的情况下,文件不会分配到不同的存档或目标中。

 

从 DIAGPATH 转移到新目标的所有文件保留原有的目录层次结构。所有文件转移到采用以下命名约定的子目录中:

 

  1. db2dback.<hostname>.YYYY-MM-DD-hhmmss  

使用 –t 命令行选项为目标目录中的所有诊断数据文件创建 tar 存档:

  1. db2dback.ksh -a -t [-o <destination_path> ]  

从源目录中删除已经复制到 tar 存档中的文件。上面的文件例外规则也适用于 tar 存档。tar 文件采用以下命名约定:

  1. db2dback.<hostname>.YYYY-MM-DD-hhmmss.tar 

使用 –z 命令行子选项压缩目标目录中的文件。在默认情况下,脚本使用 gzip 工具压缩文件。如果脚本在系统上找不到 gzip 命令,它会尝试使用 compress 实用程序。可以与 –t 子选项同时使用此选项,也可以单独使用:

  1. db2dback.ksh -a –z [-o <destination_path> ]  
  2. db2dback.ksh -a -t –z [-o <destination_path> ]  

在把数据发送给 tar 存档时,工具在最后压缩存档。如果要转移数据(没有 –t 选项),那么在目标目录中分别压缩转移的每个文件。只压缩超过 200KB 的文件。

在默认情况下,DPF 系统上的诊断数据存档是连续的,这意味着工具每次存档一个物理分区的数据。使用 –p 子选项对所有物理分区同时执行存档。这会在脚本中的 DB2 rah 命令中插入 ||& 前缀。关于使用 rah 命令的更多信息,请参见 DB2 数据库Information Center。

【编辑推荐】

  1. 降低DB2管理表空间的高水位标记实操
  2. IBM DB2数据库错误信息的大集合,不得不看!
  3. DB2v9.5控制中心建库报错如何挽救?
  4. DB2 数据类型如何才能轻松接触?
  5. 对DB2取得当前时间的正确解析
责任编辑:佚名 来源: 网络整理
相关推荐

2010-08-12 11:26:03

2010-09-07 16:11:19

执行DB2命令

2010-08-05 09:14:29

DB2隔离级别

2010-07-29 09:30:01

IBM DB2事件监视

2010-08-16 10:10:27

DB2常用函数

2010-08-02 17:30:30

DB2锁等待

2011-05-17 10:11:24

IBM DB2维护

2010-08-13 13:40:47

DB2编程序

2010-11-02 14:53:38

DB2权限

2010-08-09 09:05:41

DB2快照函数

2010-08-18 16:45:40

IBM DB2 Cat

2010-08-06 13:20:00

DB2锁等待

2010-08-02 13:25:23

DB2物化视图

2010-08-10 17:39:52

DB2 基础

2010-08-02 14:03:49

DB2驱动类型

2010-08-20 10:18:32

DB2自动增长主键

2010-08-05 15:40:07

DB2快照函数

2010-08-17 09:18:29

DB2 备份

2010-09-30 13:27:09

DB2游标

2010-08-11 09:14:33

DB2数据类型
点赞
收藏

51CTO技术栈公众号