【SQLServer】Microsoft SQL Baseline Checklist

今天调查了Microsoft SQL Baseline Checklist中的下面几个问题。

  1. Hide Instances
  2. Extended Store Procedures
  3. Maximum Number Of Error Log Files
  4. Remote Access

 1.Hide Instances 

  1. “SQL Server 配置管理器”中,展开“SQL Server 网络配置”,右键单击<server instance> 的协议”,然后选择“属性”
  2. “标志”选项卡的“隐藏实例”框中,选择“是”,然后单击“确定”关闭对话框。对于新连接,更改会立即生效。

原文:https://msdn.microsoft.com/en-us/library/ms179327.aspx

注意:隐藏数据库实例后,需要在ConnectionString里追加端口号。

● 如何配置数据库监听特定端口?

  1. 在 SQL Server 配置管理器的控制台窗格中,依次展开“SQL Server 网络配置”“<实例名> 的协议”,然后双击 TCP/IP
  2. “TCP/IP 属性”对话框的“IP 地址”选项卡上,将显示若干个 IP 地址,格式为:IP1IP2…,一直到IPAll。这些 IP 地址中有一个是环回适配器的 IP 地址 (127.0.0.1)。其他 IP 地址是计算机上的各个 IP 地址。右键单击每个地址,再单击“属性”,标识要配置的 IP 地址。
  3. 如果“TCP 动态端口”对话框中包含 0,则表示数据库引擎正在侦听动态端口,请删除 0。
  4. “IPn 属性”区域框的“TCP 端口”框中,键入希望此 IP 地址侦听的端口号,然后单击“确定”
  5. 在控制台窗格中,单击“SQL Server 服务”
  6. 在详细信息窗格中,右键单击“SQL Server (<实例名>)”,再单击“重新启动”以停止并重新启动 SQL Server。

原文:https://msdn.microsoft.com/en-us/library/ms177440.aspx

● ConnectionString中设定端口号方法:

mycomputer.test.xxx.com,1234

参考:http://stackoverflow.com/questions/5294721/how-to-specify-a-port-number-in-sql-server-connection-string

2.Extended Store Procedures

● Disable and Enable Extended Store Procedures

 1 use [master]
 2
 3 EXEC sp_configure ‘show advanced options‘, 1
 4 GO
 5 RECONFIGURE
 6 GO
 7
 8 SELECT * FROM SYS.configurations WHERE name = ‘show advanced options‘
 9
10 -- Disabling xp_cmdshell
11 EXEC sp_configure ‘xp_cmdshell‘,0
12 GO
13 RECONFIGURE
14 GO
15
16 -- Check the Disabled record.
17 SELECT * FROM sys.configurations WHERE name = ‘xp_cmdshell‘
18
19 -- Enabling xp_cmdshell
20 EXEC sp_configure ‘xp_cmdshell‘,1
21 GO
22 RECONFIGURE
23 GO
24
25 -- Check the Enabled record.
26 SELECT * FROM sys.configurations WHERE name = ‘xp_cmdshell‘
27
28 EXEC sp_configure ‘show advanced options‘, 0
29 GO
30
31 SELECT * FROM SYS.configurations WHERE name = ‘show advanced options‘

原文:http://www.c-sharpcorner.com/Blogs/9579/enabling-disabling-xp_cmdshell-in-sql-server.aspx

注意:最好不要修改既存SP的设定。

https://social.msdn.microsoft.com/forums/sqlserver/en-US/17c7569d-85c0-40ca-b921-cd58b31af612/disabling-extended-stored-procedures

 ● revoked from public

use [master]
GO
REVOKE EXECUTE ON [sys].[xp_dirtree] TO [public]
GO

 ● grant to public

use [master]
GO
GRANT EXECUTE ON [sys].[xp_dirtree] TO [public]
GO

3.Maximum Number Of Error Log Files

  1. 在对象资源管理器中,展开 SQL Server 的实例,展开“管理”,右键单击“SQL Server 日志”,再单击“配置”。
  2. 在“配置 SQL Server 错误日志”对话框中,从以下选项中进行选择。
    限制错误日志文件在回收之前的数目

    若选中此选项,将限制在错误日志回收前可以创建的错误日志数。 每次启动 SQL Server 实例时都将创建新的错误日志。 SQL Server 将保留前六个日志的备份,除非选中此选项并在下面指定一个不同的最大错误日志文件数。

    最大错误日志文件数

    指定错误日志文件回收前创建的最大错误日志文件数。 默认值为 6,即 SQL Server 在回收备份日志前保留的以前备份日志的数量。

原文:https://msdn.microsoft.com/en-us/library/ms177285.aspx

4.Remote Access

1.在对象资源管理器中,右键数据库,点击“Properties”。

2.点击“Connections”标签。

3.把“Allow remote connections to this server”的勾去掉。

参考:http://blogs.msdn.com/b/walzenbach/archive/2010/04/14/how-to-enable-remote-connections-in-sql-server-2008.aspx

时间: 2024-08-02 14:50:35

【SQLServer】Microsoft SQL Baseline Checklist的相关文章

【转】Microsoft&#174; SQL Server&#174; 2012 Performance Dashboard Reports

http://www.cnblogs.com/shanyou/archive/2013/02/12/2910232.html SQL Server Performance Dashboard Reports是一组Reporting Services的报表,和SQL Server Management Studio中所介绍的报表一起使用.这些报表允许数据库管理员快速地确定他们的系统中是否存在瓶颈,瓶颈是否正在发生,捕获这些附加的诊断数据可能会对解决问题更有帮助.例如,系统正在等待disk IO,这

【转】数据库SQL优化大总结之 百万级数据库优化方案

原帖地址:http://www.cnblogs.com/yunfeifei/p/3850440.html#undefined 1.对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num is null 最好不要给数据库留NULL,尽可能的使用 NOT NULL填充数据库. 备注.描

【转】MS SQL 十大最佳存储实践

http://blog.itpub.net/618537/viewspace-683547/?bsh_bid=368266306 [转]MS SQL 十大最佳存储实践,布布扣,bubuko.com

【Oracle】ORACLE SQL Developer不支持JAVA版本

ORACLE SQL Developer不支持JAVA版本 今天我打开 ORACLE SQL Developer准备开始练手.没有想到却给出了错误提示. 我 是安装了java JDK的而且是1.6版本的.我可能选择了bin目录下面的java.exe文件,原本觉得这样的操作应该是没有问题的结果还是出现了错误.具体错误信息如 下:不支持的java版本,不支持java 6.0发行版本1.6.0_xxx,请升级到java 6.0发行版本1.6.0_04.或者降级到java 5.0发行版本1.5.0或更高

【SQLServer】“无法对数据库’XXX’ 执行删除,因为它正用于复制”的解决方法

警告: 一个或多个现有列的 ANSI_PADDING 设置为 "off",将以 ANSI_PADDING 为 "on" 的设置重新创建 [SQLServer]"无法对数据库'XXX' 执行删除,因为它正用于复制"的解决方法 USE masterEXEC sp_removedbreplication 'YDBS_MFQJ_HomeWorksBook'GO

【原】新装SQL Server 2014 遇到问题的解决方法。

[尝试读取或写入受保护的内存.这通常指示其他内存已损坏. (System.Data)] 管理员身份运行 cmd -> 输入 netsh winsock reset 提问者评价 曾经让我重装系统的bug,一句话就就解决了,谢谢你~ 评论 | 2 [原]新装SQL Server 2014 遇到问题的解决方法.

【SqlServer】Top 分页高效率写法

SqlServer Top常用场景:分页 具体用法: (1)根据id分页 select top 页面大小 * from table1 where id not in( select top 页面大小*(页数-1) id from table1 order by id) order by id; (2)根据日期分页 select top 页面大小 * from table1 where id not in( select top 页面大小*(页数-1) id from table1 order b

Microsoft Azure Web Sites应用与实践【4】—— Microsoft Azure网站的“后门”

Microsoft Azure Web Sites应用与实践 系列: [1]—— 打造你的第一个Microsoft Azure Website [2]—— 通过本地IIS 远程管理Microsoft Azure Web Site [3]—— 通过Visual Studio Online在线编辑Microsoft Azure 网站 [4]—— Microsoft Azure网站的“后门” Microsoft Azure网站的“后门” 从我们之前的博文可以看到,对Microsoft Azure 网站

【转】用sql语句创建表的时候给列指定说明(描述)

用sql语句创建表的时候,如何给列指定说明.主要用到sp_addextendedproperty这个存储过程. 语法   sp_addextendedproperty     [ @name = ] { 'property_name' }     [ , [ @value = ] { 'value' }         [ , [ @level0type = ] { 'level0_object_type' }                     , [ @level0name = ] {