Articles of sql server

如何保护黑客从SQL Server

我有一个问题,并不知道如何处理它。 我在Windows 2008 R2服务器上有一个SQL Server。 这个SQL Server 2005被用于从位于Internet上其他地方的另一个SQL Server接收数据库订阅。 我有通过防火墙打开的SQL服务器端口,但在范围内,我已经进入了其他SQL Server的IP。 这样做我希望通过该端口的连接请求不会到达SQL Server,除非这些请求来自其他SQL Server(其IP列在防火墙规则中的范围中)。 但是,当我看到日志时,有数以百计的“login失败的用户sa”条目(他们每过一秒钟都会到来)。 看来有些黑客正在蛮横猜测用户的sa密码。 但问题是,为什么Windows让这些请求到达SQL Server,即使它们不是来自防火墙范围中列出的IP地址? 什么是保护这个SQL Server的正确方法。 除了其他SQL Server的IP需要连接到此SQL Server之外,没有其他IP。 编辑 – 更多信息: 我在不同的机器上运行SQL Server端口上的telnet。 除非从防火墙范围内特别提到的机器运行,否则Telnet将失败。 所以看来,防火墙阻止的SQL Server端口罚款。 但是,那么为什么我看到这些失败的login请求从SQL Server日志中的不同IP地址用户“sa”? 黑客是否有可能通过端口80进入机器,然后以某种方式尝试连接到SQL Server? 80和443港口向所有人开放。 所有其他端口都closures,但sql服务器端口除外(只对一个特定的IP打开)。 Web服务器在端口80上没有任何东西可以导致访问者访问SQL服务器。 实际上,Web服务器中只有一个index.html(纯粹的HTML,没有连接到SQL)文件。 这只是一个testing服务器,可供将来使用。 只在SQL Server中testing数据。 编辑: 我打开了防火墙跟踪,以包括丢弃和成功的连接。 现在正在追查一切。 然后我去SQL Server日志,在那里我看到来自中国不同的IP地址的这些失败的login尝试。 但是在防火墙日志中没有这些IP地址的条目。 这怎么可能? 他们可以完全绕过防火墙到SQL服务器吗? 如果假设某些防火墙端口是可以打开的,则防火墙日志应该显示该IP地址的条目。 我完全失去了。

如何暂时停止与域控制器同步?

我想在我的本地机器上做一些testing,这要求我把这个date提前一年。 所以我可以在SQL Server中testing一些东西(我发现它不可能覆盖SQL Server的时间)。 然而,因为我连接到一个域,我相信这是导致时间重置为正常后,我试图覆盖它的一些时刻。 我知道这对于本地和域名时间来说可能很重要,但是是否可以暂时阻止时钟重置? 断开networking连接不是一种select,因为我需要互联网连接。 如果有一个手动的方法来阻止时间重置,可能的reprocutions是什么? 我不想在networking上搞砸任何事情:-)

SQL Server 2012 Express版本的限制?

我知道SQL Server 2008 R2 Express仅限于1个CPU和10 GB数据库。 现在还不清楚微软是否会把这些数字反弹到2012年。我看了几个地方,但是我还是没有一个清晰的想法。 是的,我知道2012年还没有发布,但我不得不承认它的软件性能要求已经确定。

从备份还原SQL数据库是否重build其索引?

从备份还原SQL数据库是否从头重build其表和索引? 还是保持它在备份时的内部物理顺序? 我们使用SQL 2000与Quest Lightspeed压缩备份,如果这有什么区别的话。

如何自动运行Microsoft SQL Server 2005夜间备份?

我没有看到在SQL Server 2005中安排夜间备份的内置机制。哪些工具可用来执行此任务以及它们的可靠性如何?

修复数据库中不一致的页面

我们有一个SQL 2000数据库。 服务器由于RAIDarrays故障而崩溃。 现在当我们运行DBCC CHECKDB时,我们得到一个错误,在9个页面中有27个一致性错误。 当我们在这些页面上运行DBCC PAGE时,我们得到这个: Msg 8939, Level 16, State 106, Line 1 Table error: Object ID 1397580017, index ID 2, page (1:8404521). Test (m_freeCnt == freeCnt) failed. Values are 2 and 19. Msg 8939, Level 16, State 108, Line 1 Table error: Object ID 1397580017, index ID 2, page (1:8404521). Test (emptySlotCnt […]

如何将SQL Server 2008服务器链接到SQLite服务器?

我想将SQLite服务器与SQL Server 2008服务器“链接”。 例如使用sp_addlinkedserver命令。 我如何做到这一点? 我搜查了很多,但没有find解决这个问题的方法。 我发现的最接近的尝试是: http://www.sqlservercentral.com/Forums/Topic866972-149-1.aspx –################################################################################################# –Linked server Syntax for SQLite –using OLE provider C:\Program Files\Cherry City Software\SQLiteProvider\SQLitePV.dll –from http://cherrycitysoftware.com/ccs/Download/Download.aspx –################################################################################################# DECLARE @server sysname, @srvproduct nvarchar(256), @provider nvarchar(256), @datasrc nvarchar(100), @location nvarchar(100), @provstr nvarchar(100), @catalog sysname, @sql varchar(1000) –add an SQLite Database as a linked server SET @server = N'mySQLite' SET @srvproduct […]

SHOWPLAN权限对SQL Server 2005有什么影响?

用户需要SHOWPLAN权限才能使用“执行计划”调整查询。 这个许可的含义是什么? 授予用户安全吗? 我已经看到了这里的安全说明,这不关心这个用户。 还有其他问题需要注意吗? 从我所看到的,即使在生产数据库上,给用户这个权限似乎也不是问题。 谢谢您的帮助!

MS SQL Server随着时间的推移而变慢?

有没有人遇到以下问题,并find了解决办法: 我们网站后端的很大一部分是MS SQL Server 2005.每周或两周,网站开始运行速度较慢 – 而且我发现在SQL中查询花费的时间越来越长。 我有一个我喜欢使用的查询: USE master select text,wait_time,blocking_session_id AS "Block", percent_complete, * from sys.dm_exec_requests CROSS APPLY sys.dm_exec_sql_text(sql_handle) AS s2 order by start_time asc 这是相当有用的…它提供了在这个时候对你的SQL服务器运行正确的一切的快照。 有什么好处的是,即使你的CPU因为某种原因被挂在100%,活动监视器拒绝加载(我敢肯定你们中的一些人已经在那里),这个查询仍然会返回,你可以看到什么查询正在杀死你的数据库。 当我运行这个或活动监视器在SQL开始放缓的时候,我没有看到任何具体的查询导致这个问题 – 他们都在全线运行速度慢。 如果我重新启动MS SQL服务,那么一切都很好,它加快了速度 – 一两个星期,直到它再次发生。 没有什么我能想到的,但是这只是几个月前才开始的…想法? – 添加 请注意,当数据库减速发生时,如果我们每小时(每天繁忙的时间)获得100K页面浏览量,或者每小时(慢时间)10K页面浏览量,那么查询所需的时间比正常时间更长,这并不重要。 服务器并没有真正承受压力–CPU不高,磁盘使用似乎没有失控…感觉像索引碎片或类似的东西,但似乎并不是案件。 就粘贴上面查询的结果而言,我真的不能这么做。 上面的查询列出了执行任务的用户的login名,整个查询等等。我真的不喜欢在网上发布我的数据库,表格,列和login名:)…我可以告诉你当时正在运行的查询是正常的,我们网站的标准查询一直在运行,没有任何规范。 – 3月24日 自从上次重新启动以来已经过了大概两周了。 我做了一些改变:我发现了一些查询,在这些查询中我们大量使用了完全没有必要的临时表,并让我们的开发人员改变了他们的做法。 我将一些不断(缓慢但确定地)增长的数据库的大小调整为一个智能的增长数据库。 我调整了一切的自动增长设置,以更聪明(他们都被设置为1MB增长)。 最后我清理了一下MSDB。 我们做日志传送,并且确实不需要保存好几年和几年的备份点,我写了一些脚本,只保留了几个月。 我会不断更新这个线程,因为现在还不知道问题是否已经解决了。

多实例服务器上的SQL Server Reporting Services(SSRS)IP处理

TL;博士 我有一个多实例SQL Server上的专用IP地址和端口(162.xxx.xxx.51:1433)的SQL Server实例(SQLSERVER01-i01)(Windows Server上的每个SQL Server实例都有自己的IP地址)全部运行在一台Windows服务器上(SQLSERVER01 / 162.xxx.xxx.50)。 我还有一个专用的具有自己的IP地址和端口(168.xxx.xxx.71:1433)的Reporting Services实例(SQLSERVERRS01-i01),该实例运行在具有自己的IP地址的不同Windows服务器(SQLSERVERRS01)上.xxx.xxx.70)。 专用的Reporting Services服务器具有应用程序APPL1 ,可以通过http://SQLSERVERRS01-i01:80/Reports_APPL1或通过http://SQLSERVERRS01:80/Reports_APPL1 。 由于主机报头的Reporting Servicesconfiguration中的*:80configuration,SSRS将select这两个请求。 我们在每个IP范围之间都有多个防火墙,这意味着我们必须为每个IP到IP或IPrange到IP的连接申请一个特定的规则。 但是,如果涉及两台服务器,则安全性要求防火墙始终必须是IP到IP的规则。 题 (基于屏幕截图进一步下降) 当Reporting Services服务器连接到SQL Server实例(位于162.xxx.xxx.51)以检索数据时,是否始终会与Windows服务器的基础IP地址(168.xxx.xxx.70 / preferred)build立连接)SSRS正在运行,还是将(有时)使用SQL Server Reporting Services实例的IP地址(168.xxx.xxx.71)? 这与使用IP到IP方法的防火墙规则的configuration相关。 我将要么申请一个规则,通过端口1433或168.xxx.xxx.70到162.xxx.xxx.51连接定义一个168.xxx.xxx.71到162.xxx.xxx.51连接港口1433。 目前我会申请两个防火墙规则。 奖金问题 我可以configurationReporting Services服务器与专用IP地址进行通信吗? 在这种情况下与168.xxx.xxx.71地址。 解决scheme我不是在找 我不是在寻求如何优化防火墙configuration或如何为我们的networking实施分区概念的build议。 (它已经在pipe道中)。 另外,我对反馈表示不感兴趣,build议在同一台服务器上安装SQL Server和SSRS可以解决我的问题。 我知道,很乐意这样做,但需要与SSRS组件一起运行的第三方软件。 有用 如果我在SSRS和SQL Server实例之间应用两个防火墙规则,我的configuration工作。 168.xxx.xxx.71 –> 162.xxx.xxx.51 : 1433 168.xxx.xxx.70 –> 162.xxx.xxx.51 : 1433 我想安全地减less一个防火墙规则,并确保一切仍然有效。 […]