标签: sql-server

如何防止意外劫持生产数据库?

就在最近,我让一位开发人员意外地尝试将数据库恢复到生产环境,而他本应恢复到临时副本。这很容易做到,因为数据库名称相似,即 CustomerName_Staging 与 CustomerName_Production。

理想情况下,我会将这些放在完全独立的盒子上,但这成本太高,而且,严格来说,如果用户连接到错误的盒子,它不会阻止同样的事情发生。

这本身并不是一个安全问题——它是使用临时数据库的正确用户,如果在生产数据库上有工作要做,那也是他。我很想有一个部署官来解决这些问题,但团队不够大。

我很想听听关于如何防止这种情况的实践、配置和控制方面的一些建议。

sql-server best-practices

31
推荐指数
3
解决办法
4530
查看次数

可以在生产服务器上运行 perfmon 吗?为什么?

还是应该将 perfmon 限制为具有模拟生产活动的负载测试的 Dev/QA 服务器?

我想运行 perfmon 两天(就像 Sql Server master Brent Ozar 建议的那样)来全面了解我的 web 应用程序的数据库性能。

performance perfmon performance-tuning sql-server

30
推荐指数
3
解决办法
2万
查看次数

每个 SQL Server DBA 都应该知道的事情

每个 SQL Server 数据库管理员都应该知道哪些事情?

书籍、博客、工具,应有尽有。

database-administration sql-server

28
推荐指数
3
解决办法
5300
查看次数

如何重命名 SQL Server 2008 实例?

如何在不重新安装的情况下重命名 SQL Server 2008 实例?

例如,如果数据库被引用为“MySQLServer\MSSQL2008”,我该如何重命名为“MySQLServer\SQL2008”?

sql-server sql-server-2008

28
推荐指数
2
解决办法
8万
查看次数

数据库“XXX”正在转换中。稍后尝试语句

我正在尝试连接到 sql server 数据库时出现此错误

Database 'XXX' is in transition. Try the statement later.
Run Code Online (Sandbox Code Playgroud)

我今天早些时候取消了一个长查询,但由于某种原因,我无法恢复数据库。有什么我可以做的吗?

sql-server

28
推荐指数
2
解决办法
6万
查看次数

禁用超线程会提高我们 SQL Server 安装的性能吗

相关:SQL Server 和超线程的当前智慧

最近,我们将 Windows 2008 R2 数据库服务器从X5470 升级X5560。理论上,两个 CPU 的性能非常相似,如果有的话,X5560 稍微快一点。

但是,SQL Server 2008 R2 的性能在过去一天左右的时间里一直很糟糕,CPU 使用率也很高。

页面的预期寿命很长,页面的缓存命中率几乎达到 100%,因此内存不是问题。

当我跑:

SELECT * FROM sys.dm_os_wait_stats 
order by signal_wait_time_ms desc
Run Code Online (Sandbox Code Playgroud)

我有:

wait_type waiting_tasks_count wait_time_ms max_wait_time_ms signal_wait_time_ms
-------------------------------------------------- —————————————————————————— -------------------- --------------------
XE_TIMER_EVENT 115166 2799125790 30165 2799125065
REQUEST_FOR_DEADLOCK_SEARCH 559393 2799053973 5180 2799053973
SOS_SCHEDULER_YIELD 152289883 189948844 960 189756877
CXPACKET 234638389 2383701040 141334 118796827
睡眠任务 170743505 1525669557 1406 76485386
LATCH_EX 97301008 810738519 1107 55093884
LOGMGR_QUEUE 16525384 2798527632 20751319 4083713
写日志 …

hyperthreading sql-server

28
推荐指数
5
解决办法
4万
查看次数

ISCSI SAN 上的 SQL Server 磁盘设计

将日志和数据文件分开以将磁盘与操作系统分开的标准做法(临时数据库、备份和交换文件也是如此) 当您的驱动器都是基于 SAN 并且您的 LUN 不是由特定磁盘或突袭集雕刻时,这种逻辑是否仍然有意义-它们只是 SAN 上 x 个驱动器的一部分,而 LUN 只是空间分配

iscsi lun storage-area-network sql-server dell-equallogic

27
推荐指数
3
解决办法
8699
查看次数

在 Sql 2008 服务器上安装 SQL CLR types & Report Viewer 2012

我正在运行 Sql 2008 的 Windows Server 2003 机器上安装客户端的 ASP.net 站点。

该站点使用 Report Viewer 2012,但是当我尝试在服务器上安装它时,我收到消息“Sql Server 2012 的 CLR 类型”丢失。

有谁知道是否可以在 SQL 2008 和 Sql 2012 的情况下安装 2012 CLR 类型?

非常感谢。

ssrs sql-server sql-server-2008 sqlclr

26
推荐指数
1
解决办法
24万
查看次数

在 SQL Server 中“永久”设置跟踪标志?

我们需要使用SQL Server 跟踪标志 7646来帮助缓解一些全文阻塞,但我很沮丧地发现跟踪标志“未设置”本身,可能是在数据库服务器重新启动时。

我用过

DBCC TRACEON (7646, -1)
Run Code Online (Sandbox Code Playgroud)

设置跟踪标志和

DBCC TRACESTATUS
Run Code Online (Sandbox Code Playgroud)

显示所有跟踪标志,它告诉我它没有设置(重启后,我猜)。要永久设置跟踪标志,我这样做了:

  • 转到 SQL Server 配置管理器
  • 查看 SQL Server 服务的属性
  • 访问了高级选项卡
  • 编辑了启动参数选项

并添加

;-T{跟踪编号}

到最后,就像这样......

-dD:\MSSQL10.MSSQLSERVER\MSSQL\DATA\master.mdf;-eD:\MSSQL10.MSSQLSERVER\MSSQL\Log\ERRORLOG;-lD:\MSSQL10.MSSQLSERVER\MSSQL\DATA\mastlog.ldf ;-T7646

那是对的吗?我在SQL Server Startup Parameters 的语法上发现了相互矛盾的结果。

trace sql-server

25
推荐指数
2
解决办法
2万
查看次数

如何限制 MS SQL Server 内存使用?

我听说 MS SQL Server 会占用尽可能多的 RAM 来缓存结果。好吧,它没有为我们的小服务器的 RAM 留下足够的讨价还价空间。

如何更改设置以限制它可以使用的 RAM 量?

在 Windows Server 2008 上运行的 MS SQL Server。

windows windows-server-2008 sql-server

25
推荐指数
1
解决办法
5万
查看次数