轻松精通数据库管理之道——运维巡检之五(实例级参数)
admin
2023-05-29 11:41:23
0

前言

  做好日常巡检是数据库管理和维护的重要步骤,而且需要对每次巡检日期、结果进行登记,同时可能需要出一份巡检报告。

  本系列旨在解决一些常见的困扰:

  • 不知道巡检哪些东西

  • 不知道怎么样便捷体检

  • 机器太多体检麻烦

  • 生成报告困难,无法直观呈现结果

 

    实例的参数对系统性能和稳定的影响很重要,系统级别的参数可能会根据业务的变化而变化,但防止系统参数设置不合理或被意外修改,系统参数检查也是巡检中的必要项。

系统参数概览

  1.在【检查项】-【全部】页面检查是否有设置不合理的参数,当参数设置未通过检查,会有警告。

  轻松精通数据库管理之道——运维巡检之五(实例级参数)

具体参数设置

  在【参数】页查看具体的参数配置。

  注:合理参数与不合理参数为平台计算公式所得,个人针对系统特点进行的调整可能会被列入不合理范围(此情况可忽略警告)。

轻松精通数据库管理之道——运维巡检之五(实例级参数)

轻松精通数据库管理之道——运维巡检之五(实例级参数)

 

轻松精通数据库管理之道——运维巡检之五(实例级参数)

 

参数说明

参数设置不合理带来的影响:

参数设置不佳可能导致系统硬件无法发挥最大性能,或造成性能问题。例如:最大内存的设置,设置过小会导致系统无法利用内存而使性能出现严重问题,反之不设置或过大会导致在操作系统内存压力时强制释放SQL Server内存导致SQL Server无法工作。

 

1.最大并行度(max degree of parallelism)

一般建议系统如果超过32个CPU 那么设置成8或者4,如果系统中都是特别短小且频繁的语句建议设置成1(取消语句并行,要慎重真的符合你的场景才好)

 注:很多时候并行度设置和你的服务器CPU配置有关,比如有几路、几核、是否超线程,一般来说不要跨物理CPU为好。

并行度的设置是针对实例级别的设置(SQL2016中可以对单独数据库设置)

微软官方建议:https://support.microsoft.com/zh-cn/kb/329204

 

2.并行开销的阀值(cost threshold for parallelism)  仅当运行同一查询的串行计划的估计开销高于在“并行的开销阈值”中设置的值时,SQL Server 才创建和运行该查询的并行计划。 开销指的是在特定硬件配置中运行串行计划估计需要花费的时间(秒)。 “并行的开销阈值”选项可设置为 0 到 32767 之间的任何值。 默认值为 5。

在某些情况下,即使查询的开销计划小于当前“并行的开销阈值”的值,也有可能选择并行计划。 出现这种情况,是因为使用并行还是串行计划是根据完成完全优化之前所提供的开销估计确定的。

注:主要控制SQL优化器何时选用并行计划,建议默认值,此值设置的越小优化器越容易选择并行计划。

 

 

3.服务器内存( min server memory 和 max server memory

max server memory (建议设置): 一般推荐如果内存较小操作系统预留3G-4G ,如果内存大256或512以上在数据库内存无压力时预留5%-10%给操作系统,剩下给SQL SERVER ,如果服务器还有其他应用还要在SQL 中减掉应用所占的内存。

min server memory(服务器存在多个实例建议设置):当计算机上存在其他占用大量内存的进程时,这种方法也十分有用,因为它可确保 SQL Server 至少获得合理的内存量。 这种方法的缺点是:当启动新的实例(或任何其他进程)时,运行的实例可能会花费一些时间来释放内存,如果实例必须将修改后的页写回到数据库中来释放内存,则花费的时间可能会更长。

    带有工作负荷的第一个实例通常分配所有的内存。 空闲实例或稍后启动的实例最终可能会只使用最少的可用内存量运行。 SQL Server 不会尝试均衡分配各个实例的内存使用量。 但是,所有实例均将响应 Windows 内存通知信号以调整它们内存需求量的大小。 Windows 不会使用内存通知 API 来平衡各个应用程序使用的内存。 它只提供有关系统内存可用性的全局反馈。

 

注:最大服务器内存控制 SQL Server 内存分配,包括缓冲池、编译内存、所有缓存、QE 内存授予、锁定管理器内存和 CLR 内存(实际上是 sys.dm_os_memory_clerks 中找到的任何内存分配器)。 线程栈的内存、内存堆、除 SQL Server 之外的链接服务器提供程序以及由非 SQL Server DLL 分配的任何内存都不受最大服务器内存控制。

注:SQL Server 不会在启动时立即分配 min server memory 中指定的内存量。 不过,除非降低 min server memory 的值,否则当内存使用量由于客户端负荷而达到该值后,SQL Server 不能释放内存。

 

 

4. xp_cmdshell 使SQL SERVER可以使用cmdshell功能应用

xp_cmdshell 属于外围应用配置在新安装的 SQL Server的默认配置中,功能并未启用。以最大限度地减少可能受到恶意用户***的功能数。

注:部分客户使用脚本备份数据库时开启xp_cmdshell功能,可以使用master.dbo.xp_delete_file 等系统过程代替。

 

 

总结

  参数设置不佳可能导致系统硬件无法发挥最大性能,或造成性能问题。例如:最大内存的设置,设置过小会导致系统无法利用内存而使性能出现严重问题,反之不设置或过大会导致在操作系统内存压力时强制释放SQL Server内存导致SQL Server无法工作。

  在巡检中及时发现系统参数配置变化与是否合理,这也是重要的巡检项。


相关内容

热门资讯

岛内民众抱怨民进党当局调高电价... 6月10日上午,国台办举行例行新闻发布会。记者:近日,随着夏季来临、高温炎热,岛内民众冷气、冰柜等用...
九旬学者傅克诚:融古今中外建筑... 中新社上海6月9日电 题:九旬学者傅克诚:融古今中外建筑智慧 探都市圈发展新路 作者 范宇斌 “城市...
中国家用电器协会推动测评生态规... 近日,国家网信办、市场监管总局联合印发《网络测评活动规范》(以下简称《规范》),对网络测评活动的主体...
湾区数智潮涌 共创人文新篇 【大湾观察】 人工智能与数智技术的发展,无疑是当下人们最为关切的议题之一。数智技术是如何重塑文化创作...
民进党当局抹黑海峡论坛,国台办... 6月10日,国务院台湾事务办公室举行例行新闻发布会,发言人张晗就近期两岸热点问题回答记者提问。有记者...
民进党当局在小熊猫身上做政治文... 6月10日,国务院台办举行例行新闻发布会。有记者问,根据2024年上海台北城市论坛双方合作备忘录,上...
“214票赞成、212票反对”... 【环球网报道 记者 闫珮云】据美联社等媒体报道,美国国会众议院当地时间9日通过了一项价值约700亿美...
英媒:特朗普正变成卡特,失去对... 虽然美国总统特朗普反复表示,美伊很快将达成协议,但是谈判至今仍处于僵局。英媒刊文称,特朗普现在变得和...
伊朗称摧毁约旦美军基地F-35... 新华社德黑兰6月10日电 伊朗伊斯兰革命卫队公共关系部门10日发表声明称,“打击并摧毁了”位于约旦阿...
“卖流量”到“卖Token” ... (记者 杜峰)当Token取代流量成为AI时代的“硬通货”,一场围绕算力资源的争夺战已在通信巨头之间...