oracle 8i数据库服务器是高度可优化的软件产品,经常性的调整可以优化系统的性能,防止出现数据瓶颈。我们通过调整数据库系统,可以使它达到最佳性能以满足用户的需要。
下面,笔者将介绍优化和调整sun sparc solaris系统平台上的oracle 8i数据库服务器的一些相关命令和方法。
solaris性能监控命令
solaris提供了性能监控命令,用于监控数据库性能和决定数据库的需求。除了为oracle进程提供统计外,它们还为cpu提供使用统计,为整个系统提供中断、交换、分页和上下文转换功能。监控命令包括:
1.vmstat
vmstat命令报告solaris上的进程、虚拟内存、磁盘、分页和cpu的活动情况。下面命令将显示系统每5秒钟做的事的概要:
% vmstat 5
2.sar
sar命令用于监控交换、分页、磁盘和cpu活动。下面命令用于每10秒显示10次分页活动的概要:
$ sar -p 10 10
3.iostat
iostat命令报告终端和磁盘的活动。该报告显示哪些磁盘是忙的(该信息在平衡i/o负载时有用)。下面命令用于每5秒显示5次终端和磁盘活动:
$ iostat 5 5
4.swap
swap命令报告关于交换空间使用的信息。交换空间的不足可以导致系统悬挂,减慢响应时间。
5.mpstat
mpstat命令报告每个处理器的统计。
调整内存管理
1.分配足够的交换空间
内存交换(swapping)可以造成很大的内存开销,应该将它最小化。在solaris上使用sar -w或vmstat -s命令来检查交换。若系统在交换,且需要节省内存,则应采用以下措施:
避免运行不必要的系统daemon进程或应用程序进程;
减少数据库缓冲区的数量,以释放一些内存;
减少unix文件缓冲区的数量(特别是在使用原始设备时)。
在solaris上用swap -l命令决定当前正在使用多少交换空间。使用swap -a命令向系统中增加交换区。用系统ram两到四倍的交换空间启动数据库。若准备使用oracle developer、oracle applications或oracle interoffice,则使用更高的值。监控交换空间的使用,在必要时增加它。
2.控制分页
内存分页(paging)可能没有交换那样问题严重,因为为了运行,整个应用程序不必全部放在内存中。少量的分页不可能显著地影响系统的性能。为了检测过多的分页,在快速响应或空闲期间运行测量,并与响应迟缓时的测量进行比较。使用vmstat或sar -p监控分页。
若系统有过多的页面活动,则需考虑以下解决办法:
安装更多的内存;
将一些工作移到另一系统中;
配置系统核心使用更少的内存;
保持sga在单个共享内存段中。
没有足够的共享内存,将不能够启动数据库。这时,我们可以重新配置unix核心,以增加共享内存。
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器