我的一个朋友今天问我(试图让他的一位激动的客户平静下来)如何才能在 SQL Server 2005 中找出在任何给定时间哪个数据库使用了多少内存(在服务器的 RAM 中)。
这可能吗?如果是这样 - 如何?您可以使用内置的 SQL Server 工具执行此操作,还是需要额外的第三方选项?
他的客户很慌张,因为他的专用 SQL Server 机器突然使用了 4 GB RAM 中的 200KB 以外的所有内容。我不认为这是一个问题,真的 - 但是因为这个家伙声称它或多或少是在一夜之间发生的,他想知道是什么导致了内存使用量的增加......
马克
我在 600G 数据文件上运行 SHRINK 文件。
目前,状态报告为“暂停”,并sys.dm_exec_requests.percent_complete为DbccFilesCompact命令会报告它正在运行(但很慢)
有没有办法检查它为什么被暂停以及如何使它运行更顺畅?
仅供参考- 检查状态的 SQL 查询
select T.text, R.Status, R.Command, DatabaseName = db_name(R.database_id)
, R.cpu_time, R.total_elapsed_time, R.percent_complete
from sys.dm_exec_requests R
cross apply sys.dm_exec_sql_text(R.sql_handle) T
order by Command
Run Code Online (Sandbox Code Playgroud) 计数器 ,Process(sqlservr)\% Processor Time在我的一台数据库服务器上徘徊在 300% 左右。此计数器反映 SQL Server 在 CPU 上运行所花费的总时间百分比(用户模式 + 特权模式)。Sql Server 2008 Internals and Troubleshooting这本书说,超过 80% 的任何事情都是一个问题。
那个计数器怎么可能超过 100%?
我有一个 SQL Server 数据库,它每 10 分钟备份一次事务日志,并在夜间进行完整备份。
使用 SQL 2008 Management studio 我们似乎必须逐个选择每个事务日志。有没有办法把它指向一个目录?
我正在考虑每天运行几次差异备份,这可能会抵消其中的一些,但是一个接一个地处理数十个/数百个文件似乎非常耗时。编写代码来尝试编写脚本似乎与我们的核心能力相去甚远。
如果 SQL Server Management Studio 没有更快的方法,也许有第三方工具可用?
假设您有一个成功的 Web 应用程序,它使用 ASP.NET 和 IIS 7。它会生成对 SQL Server 2008 数据库的许多调用,并且预计将以 99.9% 的正常运行时间(停机时间为 8 小时,每次 45 分钟)向公众开放。年)。
我们的目标是:
与负载平衡 ASP.NET 应用程序不同,负载平衡 SQL 似乎要困难得多。为使用 Microsoft 堆栈的 Micro-ISV 设置简单负载平衡 SQL Server 2008 R2 群集的最佳做法是什么?
我正在处理受电子保护的健康信息(ePHI 或 PHI),并且 HIPAA 法规要求只有授权用户才能访问 ePHI。列级加密可能对某些数据有价值,但我需要能够对某些 PHI 字段(如名称)进行类似搜索。
透明数据加密 (TDE) 是 SQL Server 2008 的一项功能,用于加密数据库和日志文件。据我了解,这会阻止访问 MDF、LDF 或备份文件的人对这些文件进行任何操作,因为它们是加密的。TDE 仅适用于 SQL Server 的企业和开发人员版本,并且对于我的特定场景,企业成本过高。如何在 SQL Server Standard 上获得类似的保护?有没有办法加密数据库和备份文件(是否有第三方工具)?或者同样好,如果磁盘连接到另一台机器(linux 或 windows),有没有办法防止文件被使用?
管理员可以从同一台机器访问文件,但我只想防止磁盘被移除并连接到另一台机器时出现任何问题。对此有哪些解决方案?
我们的网络管理员坚持认为,托管在 DMZ 中的 Web 服务器访问防火墙后面的数据库服务器是不安全的。为了解决这个问题,我们通过 Web 服务或 WCF 访问数据。我觉得这是一个不必要的性能负担,如果 Web 服务器可以直接访问数据库,则可以消除它。
我得到的原因是黑客能够登录到 Web 服务器,然后他们可以访问数据库。是否可以只为 IIS 打开端口,或者不可能那么具体?如果我们可以将其锁定在 IIS 上,这是否容易被黑客入侵?
我在互联网上阅读了各种帖子,但似乎找不到明确的答案。
铝
我的意思是将 SQL Server 登录名分配给
db_datareaderdb_datawriter数据库角色。但是,如果有一阵子肚子痛和疲倦,我会不小心将它们的用户架构所有权改为:
暂时忽略用户“拥有”这两个内置模式在概念上的含义。并且暂时忽略如果用户拥有这两个模式是否有问题(例如,如果我想删除用户,内置模式是否会随之而来)。
我的问题是:我如何撤消它?
将 SCHEMA::[db_datareader] 上的授权更改为 [db_datareader]F5
但这没有任何作用。所以现在是时候咨询专家了。
Microsoft SQL Server 2005 - 9.00.5057.00 (Intel X86) Mar 25 2011 13:50:04 版权所有 (c) 1988-2005 Microsoft Corporation Standard Edition
我在现有的 Azure SQL 服务器上创建了第二个数据库。第一个数据库工作正常,我可以使用 SSMS 看到它。
我在对象资源管理器中看不到第二个数据库。然而,自动完成检测它存在。
有什么建议?
我们的数据库目前只有一个 FileGroup,PRIMARY,它包含大约 8GB 的数据(表行、索引、全文目录)。
什么时候是将其拆分为辅助数据文件的好时机?我应该注意哪些标准?