数据安全,配置先行;如何检查,SQL 评估 API

SQL 评估 API 提供了一种机制来评估 SQL Server 的配置,以获得最佳做法。 该 API 附带一个规则集,其中包含 SQL Server 团队建议的最佳做法规则。 随着新版本的发布,此规则集得到了增强,但同时,此 API 旨在提供高度可自定义且可扩展的解决方案。 这样用户便可以优化默认规则并创建自己的规则,并且可以进行自己开发,也就是说利用此API你还还可以开发自己的评估工具。

若要确保 SQL Server 配置符合建议的最佳做法,你就会发现 SQL 评估 API 非常有用。 初步评估后,可以通过定期安排评估来跟踪配置稳定性。

API 可用于访问:

  • Azure 虚拟机上的 SQL Server

  • Azure SQL 数据库托管实例

  • SQL Server 2012 及更高版本

  • 基于 Linux 的系统上的 SQL

  • API 也用于面向 Azure Data Studio (ADS) 的 SQL Server 评估扩展。

1、安装SQL 评估 API

1、安装 ADS ,下载安装ADS(此工具主要是为了Azure上的 应用) , Azure Data Studio

https://docs.microsoft.com/zh-cn/sql/azure-data-studio/download-azure-data-studio?view=sql-server-ver15

2、安装 Server 管理对象(SMO)

SQL Server管理对象 (SMO) 是设计用于的编程管理的对象 Microsoft SQL Server 。 可以使用 SMO 生成自定义 SQL Server 管理应用程序。

例如,可能需要简化控制 SQL Server 管理任务的用户应用程序,以满足新用户的需要并且降低培训成本。 您可能需要创建自定义 SQL Server 数据库,或创建用于创建和监控索引效率的应用程序。 还可以使用 SMO 应用程序将第三方硬件或软件无缝纳入数据库管理应用程序。

3、安装 SQL Server PowerShell 模块,使用管理员身份打开powershell

Install-Module -Name SqlServer -RequiredVersion 21.1.18256

4、参考规则库,SQL 评估 API 使用了相应的规则库,规则库参考:

https://github.com/microsoft/sql-server-samples/blob/567d49a42d4cf10e4942b19290ab80828b451b77/samples/manage/sql-assessment-api/DefaultRuleset.csv

目前有203条规则,规则清晰的给出SQL 的相关的配置要求和最佳实践的建议。

2、使用

使用比较简单,也是powershell打开

获取实例的可用检查列表
PS C:\Windows\system32> Get-Item SQLSERVER:\SQL\localhost\sqlexpress | Get-SqlAssessmentItem
或者
PS C:\Windows\system32> Get-SqlInstance -ServerInstance 'localhost\sqlexpress' | Get-SqlAssessmentItem

获取实例的所有数据库的可用检查列表
Get-SqlDatabase -ServerInstance 'localhost\sqlexpress' | Get-SqlAssessmentItem

获取实例评估结果并写入数据库
Get-SqlInstance -ServerInstance 'localhost\sqlexpress' |
Invoke-SqlAssessment -FlattenOutput |
Write-SqlTableData -ServerInstance 'localhost\sqlexpress' -DatabaseName SQLAssessmentDemo -SchemaName Assessment -TableName Results -Force执行完成后,找到相应生成的数据库:SQLAssessmentDemo,
执行:
select *from [Assessment].[Results]
即可看到结果,如我的结果如下:

3、关于规则集

规则是可自定义和可扩展的。 Microsoft 的规则集旨在适用于大多数环境。 但是,一个规则集不可能适用于所有环境。 用户可以编写自己的 JSON 文件并自定义现有规则或添加新规则。 示例存储库中提供了自定义示例和完整的 Microsoft 发布的规则集。

规则自定义功能提供的选项

启用/禁用某些规则或规则组(使用标签)

当特定规则不适用于环境时,或在完成计划工作以解决问题之后,可以使这些规则处于静默状态。

更改阈值参数

特定规则会将自身阈值与当前的指标值进行比较,以发现问题。 如果默认阈值不合适,可以对其进行更改。

添加更多由所在组织或第三方编写的规则

通过将一个或多个 JSON 文件作为参数添加到 SQL 评估 API 调用中,可以将多个规则集组合在一起。 组织可能会编写这些文件,或从第三方获取这些文件。 例如,可以让你的 JSON 文件禁用 Microsoft 规则集中的特定规则,让行业专家提供的另一个 JSON 文件包含你认为对环境有用的规则,然后再让另一个 JSON 文件更改该 JSON 文件中的某些阈值。

4、总结

使用SQL 评估 API ,可以协助进行基础性评估,并且可以自定义规则,在企业应用中,对数据库的设置需要进行相应的管理,利用最佳实践进行评估是通常较好的做法,使用此工具可以在大规模环境下节约时间和成本,帮助管理员对MS SQL 进行优化管理。

——————————————————————————————————————————————————————————

作者简介: Max Shen(阿特),做MS SQL 是认真的;玩数据库,是认真的! 电话微信18628037379,maxcloud@outlook.com

数据安全,配置先行;如何检查,SQL 评估 API相关推荐

  1. 因为WMI配置,无法执行Sql Server 系统配置检查器的解决办法

    今天重装机器,重新要安装sql 2005,遇到了如下问题: 因为WMI配置,无法执行Sql Server 系统配置检查器的解决办法 随即网上搜索了下,办法不多,还好找到个有用的,贴出来给大家. 先建立 ...

  2. [Mysql] 防御和检查SQL注入攻击的手段

    SQL注入攻击的种类 知彼知己,方可取胜.首先要清楚SQL注入攻击有哪些种类. 1.没有正确过滤转义字符 在用户的输入没有为转义字符过滤时,就会发生这种形式的注入式攻击,它会被传递给一个SQL语句.这 ...

  3. JavaWEB01:MySQL基础——数据库相关概念、MySQL安装和配置、基础的SQL语句

    JavaWEB01:MySQL基础--数据库相关概念.MySQL安装和配置.基本的SQL语句 JavaWEB02:MySQL高级--约束.数据库设计.多表查询.事务 JavaWEB03:JDBC Ja ...

  4. 利用 sys.sysprocesses 检查 Sql Server的阻塞和死锁

    Sys.SysProcesses 系统表是一个很重要的系统视图,主要用来定位与解决Sql Server的阻塞和死锁. MSDN:包含正在 SQL Server 实例上运行的进程的相关信息.这些进程可以 ...

  5. 《Hadoop实战手册》一1.6 配置Sqoop以支持SQL Server

    本节书摘来异步社区<Hadoop实战手册>一书中的第1章,第1.6节,作者: [美]Jonathan R. Owens , Jon Lentz , Brian Femiano 译者: 傅杰 ...

  6. 13.配置 influxDB 鉴权及 HTTP API 写数据的方法

    13.配置 influxDB 鉴权及 HTTP API 写数据的方法 13.1.创建InfluxDB管理账号 13.1.1.创建admin账号密码并赋予所有数据库权限 13.2.打开认证 13.2.1 ...

  7. 13_线性回归分析、线性模型、损失函数、最小二乘法之梯度下降、回归性能评估、sklearn回归评估API、线性回归正规方程,梯度下降API、梯度下降 和 正规方程对比

    1.线性回归 1.1 线性模型 试图学得一个通过属性的线性组合来进行预测的函数: 1.2 定义 定义:线性回归通过一个或者多个自变量与因变量之间进行建模的回归分析.其中特点为一个或多个称为回归系数的模 ...

  8. 02_混淆矩阵、准确率(Accuracy)、精确率(Precision)、召回率(Recall)、F值(F-Measure) +Roc曲线和PR曲线+sklearn中分类模型评估API+ 自己补充整理

    此博文参考: 关于ROC绘制参考博文: https://blog.csdn.net/u011630575/article/details/80250177 Python+ROC相关的博文: https ...

  9. 03_MyBatis基本查询,mapper文件的定义,测试代码的编写,resultMap配置返回值,sql片段配置,select标签标签中的内容介绍,配置使用二级缓存,使用别名的数据类型,条件查询ma

     1 PersonTestMapper.xml中的内容如下: <?xmlversion="1.0"encoding="UTF-8"?> < ...

最新文章

  1. UIPickerView
  2. 题解——洛谷 P2680 NOIP提高组 2015 运输计划
  3. Windows phone应从Android吸取四点教训
  4. python常见错误-python初学者常见的错误
  5. c语言大数位加法,求用C编个大数加减法运算程序
  6. 比double精度更高的数据类型_MATLAB中图像的数据类型
  7. 正确使用计算机网络,如何正确使用计算机网络
  8. c语言实现链表结构6,用c语言实现的链表结构--数据结构实验
  9. EditorMD + handsome 编辑器插件整合
  10. Spring: Spring AOP 方面/切面(Aspect)
  11. 测试人员的系统性思维
  12. 全球最贵红绿灯之谜得解,原来是百度Apollo的B面
  13. 使用nameko框架实现Python项目微服务化
  14. 自然语言处理基础技术工具篇之NLTK
  15. 学校校园无盘教学系统
  16. JAVA 房屋出租系统(韩顺平)
  17. python pandas读取txt文件_Pandas 读取txt
  18. 滞留在服务器的邮件,outlook 2010 发送邮件时莫名滞留在发件箱
  19. 佟丽娅现身活动火力全开 黑色裹身裙时髦大气,未修图也美的惊艳
  20. 是的你没看错,js生成word文档

热门文章

  1. thymeleaf和freemarker比较
  2. 随便讲讲自己了解的ajax在JQ中的应用
  3. php 采集程序 宋正河
  4. php_imagick
  5. 网站布局中遇到的一些问题
  6. MyEclipse 6.5GA 下载 + 汉化方法
  7. 生活是没有什么阳光的
  8. 在'for'循环中获取索引
  9. POI 怎么设置Excel整列的CellStyle啊
  10. django 1.8 官方文档翻译: 2-1-4 Model 类参考