sql server 软件安装完成需要调整的地方

1、最大服务器内存,缺省值很大,正常服务器内存达不到那么大,调整为服务器内存的80%左右,余下20%留作os 使用,如果服务器上还有其他应用在跑,也要考虑应用内存使用量根据实际情况限制值进一步下调。此值如果不加限制,容易导致服务器剩余内存不足,引发故障。

 

 

 2、最大并行度,缺省无限制,容易导致服务器cpu使用率到100%,建议调整为不超过服务器cpu核心数一半。并行的开销阈值,缺省5,建议调整值50到100之间,数值越高,查询越不容易使用并行。

 

 

 

合理的限制并行在oltp系统中至关重要,查询并行不加合理限制容易引发CXPACKET 等待事件超高,服务器资源消耗光引发业务故障。

 

 

3、调整数据库默认事务隔离级别读提交到基于行版本的读提交隔离级别,减少锁定等待时间,降低死锁概率。

      sql server 默认事务隔离级别查询执行select 会加共享锁,读写互相阻塞。在基于行版本的读提交隔离级别下,查询执行select 不加锁,读写不会相互阻塞。

---启用指定数据库的基于行版本的读提交隔离级别:
ALTER DATABASE [dbName] SET SINGLE_USER WITH ROLLBACK IMMEDIATE
GO
ALTER DATABASE [dbName] SET READ_COMMITTED_SNAPSHOT ON
GO
ALTER DATABASE [dbName] SET MULTI_USER
GO

4、如果sql server 软件安装到操作系统盘,系统数据库tempdb需迁移到数据盘,以避免tempdb过大导致系统盘剩余空间不足,引发故障。

  --move tempdb 
   ALTER DATABASE tempdb MODIFY
FILE(NAME='temp',FILENAME='D:\Database\tempdb.mdf'); 
   ALTER DATABASE tempdb MODIFY
FILE(NAME='templog',FILENAME='D:\Database\templog.ldf'); 
posted @   踏雪无痕2017  阅读(134)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
点击右上角即可分享
微信分享提示