SQL Server数据库服务器高性能设置
2010-11-16 11:38 听风吹雨 阅读(11137) 评论(30) 编辑 收藏 举报数据库服务器主要用于存储、查询、检索企业内部的信息,因此需要搭配专用的数据库系统,对服务器的兼容性、可靠性和稳定性等方面都有很高的要求。
下面是进行笼统的技术点说明,为的是让大家有一个整体的概念,如果想深入可以逐个击破;
希望大家能一起补充完善。
一、服务器规划:
1. 使用64位的操作系统,最好是2008的;(Windows Server 2008 64位)
2. 使用64位的数据库程序,最好是2008的;(SQL Server 2008 64位)
3. 使用千兆网卡;
4. 使用硬RAID5;
5. 使用64K的簇大小;
6. LUN0用作系统盘,LUN1用作程序(主要是数据库程序)安装盘,LUN2用作数据库文件盘,动态盘;
二、系统设置:
如果服务器使用的配置是:Windows Server 2003 x86 + SQL Server 2005 x86 + 12G内存
1. 使用Windows Server 2003 Enterprise Edition,如果有可能的话也可以使用Windows 2003 Datacenter Edition;
2. 在boot.ini中启用pae;
3. 使用gpedit.msc设置【内存中锁定页】;
4. 设置虚拟内存到系统盘之外的物理磁盘中,如果是同一块物理磁盘,分到其它逻辑分区也可以;设置大小看情况而定;
5. 去掉【最大化文件共享数据吞吐量】,选择【最大化网络应用程序数据吞吐量】
三、数据库设置:
1. 设置数据库的AWE,如果是16G的内存,一般是分配80%内存给数据库程序使用;
2. 设置数据库实例的增长为10%,具体需要设置多少需要看你的业务需要,其目的就是尽量减少磁盘空间的分配次数还有较少磁盘碎片的产生;
3. 设置数据库实例的恢复模式为简单模式,如果在可以的情况下;
4. 设置TempDB的大小,一般来说可以给到4G以上,看具体需要和环境;
5. 把除了SQL Server和SQL Server Browser 的其它数据库服务都停止掉,除非你有使用到这些服务的需要;
四、数据库设计:
1. 表分区;(单台数据库服务器)
2. 事件复制读写分离;(两台数据库服务器)
3. 对等事务复制;(多台数据库服务器)
五、SQL优化:
1. 创建合适的索引;
2. 减少游标的使用;
3. 可以考虑CLR编程,比如一些频繁查询并且变动很小的表;
4. 使用批量操作,减少频繁而小的操作;
5. 这里的调优细节很多,大家可以慢慢深入了解;
作者:听风吹雨
出处:
http://www.cnblogs.com/gaizai/
邮箱:gaizai@126.com
版权:本文版权归作者和博客园共有
转载:欢迎转载,必须保留原文链接
格言:不喜欢是因为不会 && 因为会所以喜欢