SQL Server数据库服务器高性能设置
2010-11-16 11:38 听风吹雨 阅读(11154) 评论(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
版权:本文版权归作者和博客园共有
转载:欢迎转载,必须保留原文链接
格言:不喜欢是因为不会 && 因为会所以喜欢
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· [AI/GPT/综述] AI Agent的设计模式综述