从DB2 V9.7到V10.1升级过程实录
DB2 V10.1 增加了很多新的特性和改进,很多用户由于业务系统的需要,希望将 DB2 从之前的老版本升级到 V10.1。本文以 DB2 V9.7 到 DB2 V10.1 的升级为例来讲解具体的升级过程。
IBM DB2 V10.1 for Linux, Unix, and Windows,简称 DB2 V10.1,是 IBM 在 Linux,Unix 和 Windows 平台上的企业级产品 DB2 for LUW 的最新版本,它已于 2012 年 4 月正式发布。DB2 V10.1 提供了很多新的功能特性以及对一些老的 DB2 特性做了加强,关于 DB2 V10.1 的新特性,可以从三方面来介绍一些新功能:
- 低成本:在存储成本上,V10.1 引入了自适应压缩功能,对 9.7 中表压缩再次增强,在原有表压缩的基础上将数据再压缩 40% - 50%。在管理成本上,V10.1 增强了索引管理功能,并引入多温区存储特性,针对不同的数据使用热度将数据放置在不同级别的存储中,便于优化管理。在运营成本上,V10.1 加入了很多性能增强功能,如实时数据仓库和快速查询响应等。
- 高可靠性:在工作负载管理增强功能方面,引入数据标签,增强调度。在安全性增强功能方面加入了行列数据访问权限控制,并支持多备用节点的 HADR 部署。V10.1 支持 pureScale 特性,它包括集群集成管理器和集群缓存设备,提供了强大的处理能力和透明的应用扩展,且其服务是连续可用的。
- 高可用性:V10.1 的 SQL 性能得到全面提升,具有更好的 SQL 兼容能力。V10.1 集成了 IBM Data Studio 客户端工具和 Optim 工具,以取代 DB2 控制中心和其它停用工具的核心客户端工具。V10.1 支持基于时间变化的数据管理,支持 INGEST 数据连续导入工具,增加了 RDF 图表存储特性。
很多用户由于业务系统的需要,希望将 DB2 从老版本升级到 V10.1。如果要让 DB2 环境组件在 DB2 V10.1 上顺利运行,那么你可能需要对这些环境组件进行升级。DB2 环境包含几个组件,例如,DB2 、DB2 客户机、数据库应用程序和例程。对这些组件进行升级时,你需要了解 DB2 数据库产品及其升级概念。本文主要以 DB2 V9.7 到 DB2 V10.1 的升级为例来讲解具体的升级过程。
升级前准备
升级之前,客户需要考虑升级条件是否具备,然后制定升级计划。
检查升级条件
主要从两方面来检查是否支持 DB2 升级到 V10.1 版本。在 DB2 版本方面,只支持直接从 DB 9.5 之后(含)的版本升级,如果是更低的版本如 DB2 9.1,需要先升级到 9.5 或 9.7,然后再升级到 V10.1。在操作系统方面,DB2 V10.1 在软件、通信、磁盘和内存方面对不同操作系统有不同的最低要求,因此应当确保所选操作系统满足这些要求。本文不详细介绍不同操作系统安装 V10.1 的所有要求。DB2 安装软件中提供了一个很好的工具 db2prereqcheck 来检查系统是否满足安装先决条件,而不必直接开始安装特定的 DB2 版本。此命令检查先决条件,例如,操作系统级别、客户机或特定于 DB2 pureScale 特性的要求等等。
清单 1. Windowns 系统上 db2prereqcheck 命令输出
D: \database >db2prereqcheck.exe ========================================================================== Checking DB2 prerequisites for DB2 database version 10.1.0.0 on operating system "Windows" Required minimum version : Windows 2008 Server SP 2 Actual version detected: Windows 2008 Server SP 1 OS is Windows Server ERROR: Requirement not matched. Requirement not matched for DB2 database server . Version: "10.1.0.0". Requirement not matched for DB2 database server . Version: "10.1.0.0". Requirement not matched for DB2 database server . Version: "10.1.0.0". Summary of prerequisites that are not met on the current system: Required minimum version : Windows 2008 Server SP 2 Actual version detected: Windows 2008 Server SP 1 DB2 version 9.8.0.4 is not supported on the current platform. DB2 version 9.8.0.3 is not supported on the current platform. DB2 version 9.8.0.2 is not supported on the current platform.
如果 db2prereqcheck 执行成功,说明此系统满足所有的安装条件。如果发现条件不符合,那么将会返回如清单 1 所示的错误信息,列出所有安装的先决条件。客户就需要根据错误信息,逐一满足,直至运行此工具不再出现错误信息为止。
实际上,如果运行不带任何参数的 db2prereqcheck 命令,那么该命令将检查系统是否满足所有 DB2 发行版和修订包的先决条件。要检查系统是否满足特定 DB2 版本的先决条件,要运行带有 -v 参数的 db2prereqcheck 命令。对于 DB2 pureScale 特性安装,需使用 -p 选项。对于客户机安装,需使用 -c 选项。
清单 2. Aix 系统上 db2prereqcheck 命令输出
# ./db2prereqcheck -p -v 10.1.0.0 ========================================================================== Checking DB2 prerequisites for DB2 database version 10.1.0.0 on operating system "AIX" Validating kernel level ... Required minimum operating system kernel level : "6.1". Actual operating system kernel level: "6.1". Requirement matched. Validating AIX technology level and service pack ... Required minimum technology level: 6 Service pack: 5 Actual technology level: 6 Service pack: 5 Requirement matched. Validating XL C/C++ Runtime ... Required minimum XL C/C++ Runtime level: 11.1.0.1 Actual version: 11.1.0.1 Requirement matched. Validating uDAPL ... Required minimum uDAPL level: 6.1.6.15 Actual version: 6.1.6.0 ERROR: Requirement not matched. Requirement not matched for DB2 database server with DB2 pureCluster feature. Version: "10.1.0.0". Summary of prerequisites that are not met on the current system: Required minimum uDAPL level: 6.1.6.15 Actual version: 6.1.6.0
需要注意的是:db2prereqcheck 可以检查 DB2 安装的大部分升级条件,但是并不会检测 DB2 服务器升级的磁盘空间要求。在 Linux 和 UNIX 操作系统上,建议在 /tmp 目录中有 2 GB 的可用空间。此外,你需要了解系统环境中具有几个组件,如 DB2 服务器、DB2 客户机、数据库应用程序、脚本、例程和工具,在规划升级时需要彻底了解每个组件的迁移过程。