TA的每日心情 | 开心 2012-3-7 10:15 |
---|
签到天数: 11 天 [LV.3]偶尔看看II
|
随着各大公司基于数据库软件的不断运用,其运行环境要求不断提高,但在日常用户运行中硬件性能不见效的情况下,本站结合有关网上的资料做了如下优化:
1.数据库服务器内存优化:
在Windows平台中,4GB虚拟地址空间被分为两个部分:内核空间和用户空间。内核空间由操作系统自身使用,用户空间由应用程序使用。缺省配置下,这两个部分分别占用2GB虚拟地址空间。也就是说在缺省配置下每个应用程序最多只能使用2GB的内存。SQL Server数据库也是一个常规的应用程序,所以缺省情况下也最多只能用2GB的物理内存。
为了加大可用于数据缓存的内存,减少磁盘读写,提高系统性能,可以通过配置使SQL Server使用大于2GB内存。
下面为系统拥有的物理内存及相应的推荐配置:
4 GB or less 4 GB to 8 GB More than 8 GB
/3GB switch /3GB enabled /3GB disabled
/AWE enabled /AWE enabled
/PAE enabled /PAE enabled
选项的具体配置方式如下:
/3GB
修改系统的Boot.ini文件。Boot.ini文件在系统根目录下,缺省是隐藏的,需要打开响应的浏览选项才能看见。按如下方式修改系统启动配置:
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows Server 2003, Enterprise -3GB" /3GB
/PAE
PAE模式也是通过Boot.ini文件来配置,例如:
multi(0)disk(0)rdisk(0)partition(1)\WINNT="Windows Server 2003, Enterprise -PAE" /PAE
AWE
AWE 通过SQL Server Query Analyzer来配置,在查询分析器中运行以下语句:
EXEC sp_configure 'awe enabled', 1
RECONFIGURE
或通过SQL Server2005 管理器来配置,在数据库实例配置中开启AWE即可。
注意:
为防止新设置的boot.ini文件有问题,而导致系统无法启动,可以在boot.ini里面做两条启动选项,如下:
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows Server 2003, Enterprise -3GB" /fastdetect /3GB /PAE
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows Server 2003, Enterprise" /fastdetect
在异常启动的时候可以选择第二条进行正常启动。
建议内存容量配置数为2的n次方G。
2.数据库tempdb库优化:
存放位置
大型数据库运行中tempdb数据的增长量是惊人的,在起初阶段应做好存放位置的规划,建议存放在Raid的大容量的磁盘阵列上,具体转移数据库存放位置的方法如下:
--移动主数据文件
Alter DATABASE tempdb MODIFY FILE
( NAME='tempdev',FILENAME ='d:\tempdb.mdf')
--移动主日志文件
Alter DATABASE tempdb MODIFY FILE
( NAME='templog',FILENAME ='d:\templog.ldf')
数据文件数扩展
具体方法:企业管理器-tempdb属性-数据文件,新增一个tempdev_1的数据文件
数据文件占用空间
具体方法:企业管理器-tempdb属性-数据文件和日志文件,设置分配空间5000MB左右,文件增长按100MB字节增长,以方便数据库快速检索数据。
收缩数据库日志文件
运用查询分析器执行以下语句
use tempdb
select * from tempdb.dbo.sysfiles
dump transaction tempdb with no_log
dbcc shrinkfile ('templog',1)
select * from tempdb.dbo.sysfiles
不建议系统自动收缩,可以在数据库属性选项中将‘自动收缩’关闭,故障还原模式为‘简单’
3.数据库处理器设置
SQL Server2005 服务器属性-处理器 线程——最大工作线程数为'0'(即不做限制);勾选提升SQL Server 的优先级
|
|