z-For-如何正确管理DB2 (zforce2)

教程大全 2025-07-08 08:38:32 浏览

我们今天主要向大家讲述的是正确管理DB2 For z/OS or OS/390的实际操作性能的描述,今天各大组织面临的很大问题,其主要在于对使他们的应用程序能够运行能能特别良好,并且保持在非常高的效率上。

这将是一个永远没有尽头的工作,你将不得不重复多次的收集,分析和检查性能相关的统计信息。当一个DBMS 的系统例如DB2 被包括在你的应用系统中时,那么性能管理将会更加困难。

实际上,性能优化是所有数据库管理员所面临的***的问题之一,他们整天的听到和面临客户关于性能低下等类似的抱怨,因为没有用户喜欢等待,当他们使用一个应用程序的时候,如果响应时间过长,那么你将得到的是用户无休止的抱怨和不满。

zforce2

对于什么原因导致的应用程序响应时间过长,这可不是容易回答和解决的问题,许多DBA 加班加点的工作,却只能解决一部分性能问题。在本文中我们将主要从性能管理和优化的基础部分开始介绍,逐渐深入到调整DB2 数据库和应用程序性能的发展之路上。

每个数据库应用程序,都会由最基本的三部分组成:操作系统,数据库和应用程序。因此DBA 需要从这三方面入手,监视和调整整个系统的性能。

一、调整系统

DB2 性能管理的开始便是系统的调整,这里所说的系统是由操作系统软件和硬件组成,这个系统为应用程序提供服务。从硬件的角度来看,主要包括主机本身,以及相应的磁盘子系统,网络连接和所有的周边设备。从软件角度来看,最主要的是包括操作系统,文件子系统以及数据管理子系统,网络协议和相关的中间件,例如交易处理器和消息队列管理器等。

为了得到稳定的系统性能,数据库管理员必须能够监视所有这些软硬件资源,并且能够管理和优化这些不同的软硬件部分,使他们相互配合,例如:内存的分配和存储管理以及郑和DBMS 和其他系统软件,正确的是用数据库log 等。此外,数据库管理员必须能够合理的配置系统的安装,移植和升级数据库软件。系统是应用程序的基石,如果系统不能够运行的良好,那么基于他的各种应用都将会运行缓慢,甚至导致程序错误。

对于管理DB2 系统性能,DBA 的***个工作便是保证所有独立并且互相联系的地址空间能够正确地相互通讯,并且每个地址空间都能够良好的运行。例如,CICS ,IMS ,TSO ,WebSphere 和DB2 Connect 等。如果这些子程序不能正确地培植,所有这些子程序和子系统都有可能影响到DB2 应用程序的性能。

例如,当数据库数据被CICS 程序访问时,多个线程将同步工作,使许多用户都能够通过CICS 程序来同步访问DB2 中的数据。 使用CICS Attach Facility (通过这种机制,CICS 连接到DB2 )你可以连接每个CICS region 到一个DB2 系统。这样多个DB2 系统通过配置,可以同布的连接到多个CICS region 上,DB2 为CICS 提供数据服务。

通过MVS 的TCB 来执行SQL 的数据操作,这些TCB 都存在CICS 地址空间中,利用跨内存指令来调用DB2 数据服务(DSNDBM1 )。

此外,资源控制表(RCT )也需要能够正确备置以使DB2 程序使用。RCT 会运行在CICS 空间中,并且仅仅适用于CICS 访问DB2 数据。它定义了CICS 交易如何使用DB2 资源,他为每个CICS 交易定义了一个Plan ,使用这个Plan 来访问DB2 ,同时定义了一些应用程序Plan 访问DB2 的详细参数和类型。

DB2 数据管理员需要特别注意DB2 系统参数的配置,无论是通过DB2 命令或者DSNZPARMs 。对于性能优化来说最重要的就是内存的使用,DB2 需要为Buffer ,EDM ,RID 以及排序缓存等分配内存,内存的数量是有限的,如何能够有效地利用这些内存,对于DB2 高效的性能至关重要。

DB2数据管理员需要特别注意DB2系统参数的配置,无论是通过DB2命令或者DSNZPARMs。对于性能优化来说最重要的就是内存的使用,DB2需要为Buffer,EDM,RID以及排序缓存等分配内存,内存的数量是有限的,如何能够有效地利用这些内存,对于DB2高效的性能至关重要。

参考资料:

Moulder, Tom, Performance Management of a>


按以下要求建立DB2 系统管理员用户组adm1

楼主说的是Windows上的吧。 这个太难了。 。 。 linux中如下:groupadd -g 999 db2iadm1groupadd -g 998 db2fadm1groupadd -g 997 dasadm1useradd -u 999 -g db2iadm1 -m -d 2home2inst1 db2inst1useradd -u 998 -g db2fadm1 -m -d 2home2fenc1 db2fenc1useradd -u 997 -g dasadm1 -m -d 2home/dasusr1 dasusr1

DB2与oracle有什么区别?

1、体系结构,DB2的实例和数据库分开的做法,我个人还是比较喜欢的,因为实例可以创建多个,数据库的恢复直接恢复到实例下就可以了,相对ORACLE简单多了。 2、管理工具,DB2的管理工具做得太简陋了,控制中心只能说能用而已,而且还有好多BUG,不如ORACLE的企业管理器做得好,连WEB版都没有。 3、备份管理,DB2的备份只能说是简陋了,没有备份集的管理功能,没有恢复预览和校验功能,不能写到网络驱动器上,唉太多的没有了,ORACLE的RMAN确实强大; 4、DB2的命令执行方式,我很喜欢,可以在命令行上执行SQL,也可以在命令窗口上执行SQL,相对SQLPLUS灵活多了; 5、DB2的自动维护功能做的很好,可以定期自动整理数据库碎片和重建索引,唯一不大理想的是自动维护的备份功能不能指定压缩备份,相对而言ORACLE的自动维护功能就很一般了; 6、DB2的运行状况的功能我也很喜欢,ORACLE也有类似的AHM,但是 DB2的运行状况更为直接,可以一下就看出数据库目前有啥问题,DB2还给出了如何处理的建议顾问程序; 7、DB2的内存状况监控功能本来我也很喜欢,可以直接在内存状况监控上直接改相应的参数,但是发现一个巨大BUG后,我就很不喜欢了,如果你一直点刷新,发现内存占用量会不断上升,我有次为了监控一个内存参数,让这个工具运行了一天一夜,结果回来一看,晕倒,所有的内存参数增长到数百G,我想看的历史变化情况居然没有。 8、DB2的远程网络连接采用的编目方式描述连接串的方式我感觉很不爽,为了改个客户端的连接服务器的IP地址,所有的客户端都需要将编目删除,然后重新编目连接地址,晕倒100多台PC机搞下来,尽管可以使用脚本,但是还是把人都快搞疯了。 ORACLE采用的用文件来配置远程服务器的方式,所有的PC机都通过更新服务器直接更新本机的TNSNAME,1分钟搞定。 9、DB2的数据库创建如果要手工管理容器,居然没有指定缺省的系统表空间数据文件名,你要创建一堆相应的文件名,没办法,只好照抄oracle的OFA体系结构的文件名。 10、DB2的连接配置图形工具实在是差了,在上面配置一步步配出的连接居然不能用!只好使用脚本,这点ORACLE比DB2强多了。 11、DB2在WINDOWS 平台的可靠性不怎么样,3个多星期无缘无故DOWN了4次机,ORACLE配好了应该没有这么悲惨吧。 12、DB2的锁自动管理机制,我比较喜欢,打开后,互锁的概率大大降低,相同的程序,在DB2下锁明显少许多,但是不爽的是DB2的select命令也是加锁的。 13、DB2 9.7的ORACLE兼容模式,我也很喜欢,迁移麻烦少了许多许多。 14、DEB2 的自动内存管理我看要比ORACLE 要强一些,几乎所有的内存参数都能自动管理,ORACLE11G貌似也可以全部自动管理了。 15、DB2的导出数据的工具实在太简陋了,连oracle的EXP/IMP 都不如,更不要说expdp/impdp 16、DB2的SQL语句运行速度明显快于ORACLE,5-6段相同的代码,同一台机器,参数都是缺省参数,个人测试DB2执行速度大约要快10%-15%,也许和DB2缺省的参数调优有关,ORACLE10g调优后,还是还有5-10%左右的差异。

SQL语言是谁发明的?

SQL是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统,可以使用相同的SQL语言作为数据输入与管理的 接口。它以记录集合作为操作对象,所有SQL语句接受集合作为输入,返回集合作为输出,这种集合特性允许一条SQL语句的输出作为另一条SQL语句的输入,所以SQL语句可以嵌套,这使他具有极大的灵活性和强大的功能,在多数情况下,在其他语言中需要一大段程序实现的功能只需要一个SQL语句就可以达到目的,这也意味着用SQL语言可以写出非常复杂的语句。 结构化查询语言(Structured Query Language)最早是IBM的圣约瑟研究实验室为其关系数据库管理系统SYSTEM R开发的一种查询语言,它的前身是SQUARE语言。SQL语言结构简洁,功能强大,简单易学,所以自从IBM公司1981年推出以来,SQL语言得到了广泛的应用。如今无论是像Oracle、Sybase、DB2、Informix、SQL Server这些大型的数据库管理系统,还是像Visual Foxpro、PowerBuilder这些PC上常用的数据库开发系统,都支持SQL语言作为查询语言。 美国国家标准局(ANSI)与国际标准化组织(ISO)已经制定了SQL标准。ANSI是一个美国工业和商业集团组织,负责开发美国的商务和通讯标准。ANSI同时也是ISO和International Electrotechnical Commission(IEC)的成员之一。ANSI 发布与国际标准组织相应的美国标准。1992年,ISO和IEC发布了SQL国际标准,称为SQL-92。ANSI随之发布的相应标准是ANSI SQL-92。ANSI SQL-92有时被称为ANSI SQL。尽管不同的关系数据库使用的SQL版本有一些差异,但大多数都遵循 ANSI SQL 标准。SQL Server使用ANSI SQL-92的扩展集,称为T-SQL,其遵循ANSI制定的 SQL-92标准。 SQL语言包含4个部分: ※ 数据定义语言(DDL),例如:CREATE、DROP、ALTER等语句。 ※ 数据操作语言(DML),例如:INSERT(插入)、UPDATE(修改)、DELETE(删除)语句。 ※ 数据查询语言(DQL),例如:SELECT语句。 ※ 数据控制语言(DCL),例如:GRANT、REVOKE、COMMIT、ROLLBACK等语句。 SQL语言包括三种主要程序设计语言类别的语句:数据定义语言(DDL),数据操作语言(DML)及数据控制语言(DCL)。 SQL 是用于访问和处理数据库的标准的计算机语言。 SQL 指结构化查询语言 SQL 使我们有能力访问数据库 SQL 是一种 ANSI 的标准计算机语言 编者注:ANSI,美国国家标准化组织
本文版权声明本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请联系本站客服,一经查实,本站将立刻删除。

发表评论

热门推荐