Informix高级培训教材.pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《Informix高级培训教材.pdf》由会员分享,可在线阅读,更多相关《Informix高级培训教材.pdf(37页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 中国人寿福建省公司 I N F O R M I X 高级培训教材(内部)中科软件股份有限公司 2 0 0 2年 6月 Informix高级培训教材(内部)2目 录 1.ONLINE5 与 ONLINE7 的比较.4 1.1.系统体系结构的差别.4 1.2.系统性能的差别.4 1.3.系统可靠性的差别.4 1.4.命令的差别.5 2.ONLINE7 的配置及性能调整.5 2.1.确定系统性能的目标.5 2.2.系统性能监测和调整的基本方法.6 2.3.影响性能的配置参数.6 2.3.1.影响性能的 CPU 参数.6 2.3.2.影响性能的内存参数.8 2.3.3.影响性能的 I/O 的参数.1
2、0 2.4.操作系统上的性能监控.12 2.4.1.Sar.12 2.4.2.iostat.13 2.4.3.vmstat.14 3.程序及数据的性能调整.16 3.1.索引.16 3.2.关于 with hold.16 3.3.关于事物.17 3.4.关于语句写法.18 3.5.关于使用 put,execute 来代替 insert 提高效率.20 3.6.使用隔离级别(isolation).20 3.7.使用优化器(update statistics).21 3.8.使用复合索引.22 4.INFORMIX 数据库数据复制(CDR).23 4.1.基本概念.23 4.1.1.数据复制类型:
3、同步、异步.23 4.1.2.复制机制:基于触发器和基于日志.23 4.1.3.CDR 的局限性.24 4.1.4.CDR 如何实现.24 4.2.CDR 配置实例.25 4.2.1.系统环境准备.25 4.2.2.确定复制环境.26 4.2.3.建立 picc21 和 ibm500 的数据库之间的互访.26 4.2.4.定义 replicate server.26 4.2.5.确定复制服务器已建立.27 4.2.6.增加连接成员:.27 4.2.7.确定成员已连接.27 4.2.8.定义 replicate.28 4.2.9.确定 replicate 建立.28 4.2.10.启动 repl
4、icate.28 Informix高级培训教材(内部)34.2.11.确定 replicate 已启动.29 4.2.12.关闭 replicate.29 4.2.13.维护 CDR.29 4.2.14.监控 CDR 工作情况.30 4.2.15.CDR 出错处理.30 4.3.CDR 的时间同步.30 Informix高级培训教材(内部)4 1.ONLINE5 与 ONLINE7 的比较 1.1.系统体系结构的差别 O N L I N E 5的内部处理结构是一对一的单线索的结构,每个用户对应一个数据库服务器进程,数据库服务器进程负责响应客户的数据请求,而数据库内部的协调处理由 O N L I
5、 N E 守护进程负责,数据库服务器进程和 O N L I N E 守护进程间相互独立。O N L I N E 7采用的是先进的多线索的体系结构,多线索结构是核核心层的,客户应用进程和数据库服务器进程(V P)之间是多对多的关系,即一个客户应用进程可以有多个数据库服务器进程服务,反之,一个数据库服务器进程也可以为多个客户应用进程服务。O N L I N E 7的优点是:充分利用 C P U的并发处理能力,而且数据库服务器进程的数目不是随着用户进程的增加而增加,减轻了系统的负荷。O N L I N E 5 中,客户应用进程和数据库服务器进程之间的通信是通过 U N I X 管道实现的,数据库服务
6、器进程间通讯是通过共享内存完成的。如果通过网络连接必须使用 I N F O R M I X-S T A R这个产品。而 O N L I N E 7集成了 I N F O R M I X-S T A R,客户应用和服务器之间的通讯即可以是共享内存方式也可以通过 T C P/I P的S O C K E T 或 T L I 实现,同时还支持了 I P X/S P X 协议。1.2.系统性能的差别 O N L I N E 5不能在联机方式下改变共享内存的大小和数据库服务器的个数,而 O N L I N E 7 可以在联机的方式增加共享内存和增加虚拟处理器的个数,这样就达到了系统的动态可伸缩的特性。O
7、N L I N E 7因使用了多线索体系结构,一个查询可以使用多个线索,因此很好的支持了并行查询的功能(P D Q)。O N L I N E 7 还增加了对数据分割的支持。1.3.系统可靠性的差别 O N L I N E 7 增加了数据复制的功能(C D R)。O N L I N E 7 在数据备份和恢复功能都有所增强,备份可以并行创建。只要 r o o t d b s没有损坏,任何一个 c h u n k的损坏不影响整个 O N L I N E的运行。O N L I N E启动时的快速恢复功能也使用多线索并行处理。Informix高级培训教材(内部)51.4.命令的差别 O N L I N
8、E 5 的命令都以 t b 开头如:t b i n i t,t b m o d e,t b s t a t,t b t a p e O N L I N E 7 的命令都以 o n 开头如:o n i n i t,o n m o d e,o n s t a t,o n t a p e 另外,在 O N L I N E 配置方面 O N L I N E 7 多了许多参数,这部分在 O N L I N E 配置部分介绍。2.ONLINE7 的配置及性能调整 这部分讨论的是 I N F O R M I X O N L I N E 数据库服务器的性能监测和调整。性能监测和调整的研究和实践是很广泛的。这里
9、只讨论 O N L I N E 数据库管理的日常维护的问题和方法。人们一直在讨论如何提高数据库的性能,数据如何存储、如何读取、如何配置参数才使你的应用得到更好的性能。例如:当要优化一个系统时,为一个有 1 0 0 0 用户并都执行短小简单的事物的系统,和为一个只有很少用户但执行很长且复杂的事物的系统的参数配置是完全不一样的。我们从以下几个方面阐述:?监控系统资源并评价系统的性能?数据库活动对系统性能评价的影响?用 o n l i n e 提供的工具来监控和调整系统性能?从以下几方面消除系统性能的瓶颈:1 平衡系统资源的负载 2 调整 o n l i n e 的参数 3 调整数据的布局 4 为关
10、键查询分配资源 适当平衡系统负载往往可以改善系统性能。有时性能改善是变化的,且往往使用单一的负载均衡的方法不能完全满足要求,下面从更广的范围对此进行讨论:1 修改应用程序,以便其能更好的利用操作系统和数据库的资源 2 系统性能没有被充分利用 3 网络的性能影响了 C/S 结构的应用性能 2.1.确定系统性能的目标 确定系统性能目标时考虑的问题:1 要获得最大的交易吞吐量,还是最快的响应时间,或者是两者的混合。2 网络对性能的影响 3 希望的最大用户数 4 你的配置是否受内存、磁盘和 C P U 资源的限制 Informix高级培训教材(内部)62.2.系统性能监测和调整的基本方法 系统的性能是
11、否好是个模糊的概念,不太容易说清楚,比如用户会说有时系统很慢,有时一个交易不知道为什么不能完成等等,这就需要透过表面现象分析系统性能问题的真正瓶颈。我们建议通过反复多次的评价、调整的方法来接近您所要求的性能目标。如果反复的经过下面提供的步骤的调整都无法满足您对性能的要求,则很可能是您的硬件资源受到限制,或应用程序编码不当引起的问题。O N L I N E 性能优化步骤 1.确定您的性能目标.2.获得资源利用率和数据库活动的数据 3.确定性能问题的症状:不均衡的C P U、内存和磁盘的利用率。4.调整操作系统的参数。5.调整O N L I N E 的参数。6.优化c h u n k 和 d b
12、s p a c e 的配置,包括日志、排序空间、临时表和排序文件的存放位置。7.优化表的存放位置、e x t e n t 大小和分段处理。8.改善索引.9.优化后台I/O 活动,包括 l o g g i n g,c h e c k-p o i n t s,和 p a g e c l e a n i n g.1 0.规划备份和批处理业务的时间 1 1.优化数据库应用的执行。1 2.重复 2-1 1 部。2.3.影响性能的配置参数 影响性能的参数包括操作系统的参数和 O N L I N E 的参数。在进行参数调整前应该对当前参数的性能进行评估。一般改变操作系统参数需要重新启动机器,改变 O N L
13、 I N E 的参数需要重新启动 O N L I N E。2.3.1.影响性能的 CPU 参数 1 操作系统的参数:1 信号量(S E M M N S )S E M M N S =i n i t _ v p s +a d d e d _ v p s +(2 *s h m e m _ u s e r s)+c o n c u r r e n t _ u t i l s 2 同时打开文件数(N F I L E S)N F I L E S =(c h u n k s *N U M A I O V P S)+N U M C P U V P S +n e t _ c o n n e c t i o n
14、s 2 O N L I N E 的相关参数:N U M C P U V P S:初始分配的C P U V P s 的个数,在单处理器的主机中此值建议用1,再多处理器的主机中此值不应大于物理C P U 的个数,建议使用比物理处理器少1。此值可以通过o n m o d e p 命令动态增加。Informix高级培训教材(内部)7C P U V P s 的个数将决定在一个查询中扫描线索(S c a n T h r e a d s)的个数。当扫描线索数的整数倍时查询会获得最好的性能。o n s t a t -g a t h 命令监控每个C P U V P 的扫描线索数,o n s t a t -g s
15、 e s 命令监控某个具体会话。S I N G L E _ C P U _ V P:当C P U V P s 值等于1 时,此值也设置为1,否则为1。当此值为1 时,N U M C P U V P S 必须设置为1,否则O N L I N E 会报错。M U L T I P R O C E S S O R:当C P U V P s 值大于1 时,此值也设置为1,否则为0。N O A G E:为O N L I N E C P U V P 设置关闭处理器优先级老化的开关(需要O S 支持),1 为关闭。A F F _ N P R O C S:C P U 绑定功能,就是可以通过C P U 绑定来为处
16、理器分配不同的任务。绑定几个C P U。A F F _ S P R O C:从第几个C P U 开始绑。N U M A I O V P S:说明使用几个A I O V P s。如果O S 不支持核心异步I O (K A I O)的话,O N L I N E使用A I O 管理所有数据库I/O 请求。A I O V p s 的个数依赖于你配置了多少磁盘。如果系统不支持K A I O 的话,建议为每个c h u n k 分配一个A I O V P S。还有一个分配A I O V P s 的标准是看I/O 请求队列的长度是否足够短。o n s t a t -g i o q 命令可以监控待A I O
17、V P s 处理的I/O 请求队列的长度。尽量多的分配A I O V P s 是不会对系统有何副作用,可以通过o n m d e p 动态增加A I O V P s的个数,但不能动态的减少。O P T C O M P I N D:该参数帮助优化器为应用选择一个最适合的存取方式。如果该值为 0,优化器首先选择已存在的索引既是顺序扫描速度更快。当该值为 0,并且隔离级别设置为重复读模式,优化器适用嵌套循环连接的方式。当该值为 2(缺省),优化器选择基于消耗评估的连接方法,即使表扫描引起整个表被临时锁住。用户可以通过设置环境变量改变该值。M A X _ P D Q P R I O R I T Y:该
18、值限制一个查询可以占用的P D Q 资源的百分比。D S _ M A X _ Q U E R I E S:描述同事的最大决策支持查询的个数。O N L I N E 通过该值和D S _ T O T A L _ M E M O R Y:决定为一个查询分配多少内存。D S _ M A X _ S C A N S:该值限制了P D Q 的扫描线索的个数。该值避免P D Q 引起的扫描线索被过度使用。分配给一个查询的扫描线索数是通过下面的公式计算的:s c a n _ t h r e a d s =m i n (n f r a g s,(D S _ M A X _ S C A N S *p d q p
19、 r i o r i t y /1 0 0*M A X _ P D Q P R I O R I T Y /1 0 0)减少扫描线索数可以提高几个大查询同时运行时的响应。N E T T Y P E:为每个连接类型配置轮训线索。一般情况每个 D B S E R V E R 对应一个连接类型。轮训线索可以定义两种类型 V P:C P U 和 N E T。建议只使用一个 C P U 类型的轮训线索,其它的给 N E T 类型的轮训线索,总的轮训线索数不能大于努 N U M C P U V P S。尽管 1 个轮训线索理论上可以支持 1 0 2 4 个连接,但单 C P U 主机每个轮训线索支持 3 0
20、 0 个连接比较好,而多 C P U 主机每个轮训线索支持 3 5 0 个连接比较好。该值为定义缺省是一个 C P U 轮训线索,每个轮训线索支持 5 0 个连接。适当的增加轮训线索可以提高性能。注:i p c s h m方式的连接是需要占用信号量资源的。o n s t a t g g l o 当前运行的各个虚拟处理器(V P)已占用的 C P U 资源。可以通过间隔 1 分钟时间两次执行该命令,将两次结果 9 相减,如果结果接近 6 0 秒说明 C P U 很忙。Informix高级培训教材(内部)8 o n s t a t g r e a 监控等待运行的线索,如果列出线索较多说明 C P
21、U 处理能力不足。可以考虑增加C P U V P 的个数。2.3.2.影响性能的内存参数 这部分讨论影响性能的内存参数,包括 O S 和 O N L I N E的参数配置,你必须考虑如何均衡的使用有限的内存资源。当 O S分配一块共享内存是我们把它叫做段(s e g m e n t),O N L I N E在用这块共享内存段时我们又把它叫做区(p o r t i o n)。O N L I N E根据需要把共享内存分成了 3个区分别是:?驻留内存区:这部分时静态的,在 O N L I N E 初始化时分配。它是由以下几个参数组成的:B U F F E R S:通过下面的公式可以计算出b u f
22、f e r 所占内存 b u f f e r _ v a l u e =(B U F F E R S *p a g e s i z e)+(B U F F E R S *2 5 4)L O C K S:通过下面的公式可以计算出L O C K 所占内存 l o c k s _ v a l u e =L O C K S *4 4 L O G B U F F:通过下面的公式可以计算出逻辑日志b u f f e r 所占内存 l o g b u f f _ v a l u e =L O G B U F F *1 0 2 4 *3 P H Y S B U F F:通过下面的公式可以计算出物理日志 b u
23、 f f e r 所占内存 p h y s b u f f _ v a l u e =P H Y S B U F F *1 0 2 4 *2 驻留内存区的大小是按下面的公式计算的:r s e g s i z e =(b u f f e r _ v a l u e +l o c k s _ v a l u e +l o g b u f f _ v a l u e+p h y s b u f f _ v a l u e +5 1,2 0 0)/1 0 2 4 另外,R E S I D E N T 设为 1 时这部分被强制驻留物理内存而不会被换出(O S 要支持)。?虚拟内存区:这部分时动态增长的,
24、但在初始化是也应分配个适当的值。它是由以下几部分组成的:用于大的读写操作的大缓冲区 排序池 活动线程控制块、栈、堆 用户对话数据 数据字典高速缓存和存储过程 用于网络接口信息的全局池 初始的区大小由 S H M V I R T S I Z E 参数决定,增加的区大小由 S H M A D D 参数决定。根据一般经验,每个用户要占 1 0 0 K 5 0 0 K 的虚拟内存区的空间,如果用了数据分割应该再加 4 M。可以用 o n s t a t -g m e m 命令共享内存区的大小?消息内存区:这部分是静态的,在 O N L I N E 初始化时分配。它包括共享内存通讯接口的消息缓冲区。它的
25、大小依赖与你允许的连接用户数。它的大小可由下面的公式计算出:Informix高级培训教材(内部)9m s e g s i z e =(1 0,5 3 1 *i p c s h m _ c o n n +5 0,0 0 0)/1 0 2 4 与内存有关的 O N L I N E参数 S H M V I R T S I Z E:决定虚拟内存区的初始区大小。当虚拟内存区不够用时O N L I N E会自动增加一个新的区,但这会消耗O N L I N E 的处理资源。因此,该值应该尽可能的,一般先下面两种情况中大的一种:8,0 0 0 或 c o n n e c t i o n*3 5 0 S H M
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Informix 高级 培训教材
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内