我有一个包含四年数据的表,每个月我都有一个基于包含两个文件的文件组的分区。没想到又收到了八年的数据,准备了这些年的数据库文件和文件组。
当前的方案涵盖 200901 - 201512,我现在需要添加 200001 - 200812。使分区表联机的最佳方法是什么?
我问是因为当前表有 180 亿行,我想以有效的方式做到这一点:)
我对术语有点困惑,因为包括BOL在内的官方 Microsoft SQL Server 文档指的是您使用 sp_create_plan_guide proc 创建的计划指南。计划冻结是相同的还是略有不同?在这里阅读 Erland 的精彩文章
有两种设置计划指南的方法,一种是通用方法,另一种是快捷方式,也称为计划冻结。SQL 2005 中引入了一般计划指南,而 SQL 2008 中添加了计划冻结。
我正在阅读计划冻结是当您使用sp_create_plan_guide_from_handle创建指南时
寻求对所用术语的澄清,计划指南和计划冻结是一回事还是指将执行计划粘贴在缓存中的方式略有不同?
似乎Sql server 2012 的SSMS 不能再打印带有语法颜色的SQL 语句了。这是一个错误吗?它有任何解决方法吗?

我在 SQL Server 2012 中创建了维护计划。每天,维护计划应该备份数据库。当我查看必须存储备份的文件夹时,没有数据库备份文件。但是有关此维护计划的 SQL Server 日志历史记录是成功的。
问题是什么?
我使用的是 SQL Server 2012。操作系统是 Windows Server 2008 R2。
感谢您的关注。

我删除了一个高可用性组,禁用了 sql 配置管理器中的选项并重新启动,我还从 Windows 中删除了故障转移群集组件并重新启动。
不幸的是,数据库在两台服务器上都被标记为恢复挂起。
我试图放弃它们,但得到了这个:
消息 3752,级别 16,状态 1,第 1 行
数据库“GEO”当前已加入可用性组。在删除数据库之前,您需要将其从可用性组中删除。
我也尝试恢复数据库但没有成功,并将其设置为紧急模式,但不能:
无法对数据库“GEO”执行该操作,因为它涉及数据库镜像会话或可用性组。不允许对参与数据库镜像会话或可用性组的数据库执行某些操作。
我什至试图通过停止引擎并重命名文件以尝试使其成为可疑文件来暴力破解服务器,但它仍在等待恢复中......我无法重新启用 HADR 设置,因为 Windows 集群已被破坏。
除了 sys.availability_replicas 之外,所有系统目录都是空的,它引用了另一台服务器(几年来我第一次希望回到过去可以访问系统表的美好时光)。
任何想法如何摆脱这些数据库?
我在 TFS 2012 中有一个 SQL Server 数据库项目 (.NET 4.5)。作为 DBA,我正在寻找一种机制,开发人员可以通过该机制创建“CREATE USER”sql 脚本并在数据库中分配他们的权限以匹配应用程序,而无需需要知道它最终映射到什么登录名。这是因为我想隐藏实时和测试环境中的登录名,并让 DBA 根据需要在每个环境中创建这些登录名。
如果我进入项目并创建一个新用户,即 [MyApplication],则默认脚本建议使用以下模板:
CREATE USER [MyApplication]
WITHOUT LOGIN
WITH DEFAULT_SCHEMA = dbo
GO
Run Code Online (Sandbox Code Playgroud)
这很棒,因为我可以创建一个映射到无登录的用户,然后在部署时我可以运行:
ALTER USER [MyApplication] WITH LOGIN=[MyApplicationLogin], Name=[MyApplication]
Run Code Online (Sandbox Code Playgroud)
只要将用户映射到 SQL 登录名就可以了。如果登录要映射到 Windows 登录,当我们尝试重新映射时,SQL 会抛出错误:
Msg 33016, Level 16, State 1, Line 1
The user cannot be remapped to a login. Remapping can only be done for users that were
mapped to Windows or SQL logins.Run Code Online (Sandbox Code Playgroud)
所以问题是,在项目中设置它的最佳方法是什么,以便开发人员可以创建一个用户,该用户可以在数据库用户中任意命名,然后我们将如何将其重新映射到 Windows 身份验证登录?
提前致谢!
在集成服务目录中,我可以看到可用的包/项目版本,并在必要时恢复到旧版本。在此对话框中,我看到一个字段“描述”,但是我发现还没有办法将描述放入该字段中。如何编辑/填充?
我有多个服务器,其中 4 个安装了ReportServer&ReportServerTempDB数据库的报告服务。
几天前,我正在为新登录设置安全性,我发现RSExecRole我的开发服务器(在reportserver数据库中)中缺少该角色。它存在于ReportServerTempDB, master&msdb数据库中。
我找到了一种在msdn上的master&msdb数据库上创建它的方法,
但它并没有帮助我使用与我运行的其他环境类似的所有安全和属性来创建它。reportserver
有没有人遇到过这个问题?任何人都可以帮我写一个脚本并解释一下这个角色吗?
我有一个业务要求在TableA引用上有一个 FK 字段TableB。如果 中有一个值TableBID,它应该是唯一的,但它不是强制性的,因此可能会有多个值为空的记录。
是否可以使用索引或约束以某种方式在数据库级别强制执行这种类型的唯一性?
我有一个 AG,在同步模式下的站点中有 2 个节点,异步模式下有 1 个异地节点。我无法理解在这种情况下如何维护日志空间。例如,我每 15 分钟在同步调制解调器的主服务器和辅助服务器上进行日志备份。如果我将日志备份移到辅助节点(在同步模式下),这是否意味着它也会释放主节点上的空间,还是我仍然需要在主节点上运行 tran 备份,这反过来又会释放空间辅助节点也是?
sql-server backup sql-server-2012 transaction-log availability-groups
sql-server-2012 ×10
sql-server ×7
backup ×2
security ×2
hadr ×1
maintenance ×1
partitioning ×1
ssis ×1
ssms ×1
ssrs ×1