是否有每个 SQL Server 版本的完整在线操作列表?

Tho*_*ser 20 sql-server high-availability

当我们即将更改 5TB 数据库中的一些大表时,我发现自己需要一份可以在线执行的操作列表,这些操作需要在运行时保持全锁。理想情况下,该列表还包含有关哪些语句需要 SCH-M 锁在最后提交的信息。

虽然我在 Microsoft 的时候就认识了其中的大部分,但我很惊讶我找不到公开可用的在线操作列表,因为它们从 SQL Server 2005 一直发展到 2014 CTP。

有人有这样的清单吗?如果没有,我可能会决定创建它。

小智 5

听起来像是一项事业。并非每个版本的 Microsoft SQL Server 都提供在线索引操作,希望这可以帮助您入门(以表格形式):

SQL Server 2012:http : //msdn.microsoft.com/en-us/library/ms190981.aspx

SQL Server 2008R2:http : //msdn.microsoft.com/en-us/library/ms190981( v=sql.105) .aspx

SQL Server 2008:http : //msdn.microsoft.com/en-us/library/ms190981(v=sql.100).aspx

SQL Server 2005:http : //msdn.microsoft.com/en-us/library/ms190981(v=sql.90).aspx


小智 5

SQL Server 2014 本身并未引入新的联机操作,但确实改进了许多操作以提高可用性。从什么是新的部分

分区切换和索引

现在可以重建分区表的各个分区。有关详细信息,请参阅 ALTER INDEX (Transact-SQL)。

管理在线操作的锁优先级

ONLINE = ON 选项现在包含一个 WAIT_AT_LOW_PRIORITY 选项,该选项允许您指定重建过程应等待必要锁定的时间。WAIT_AT_LOW_PRIORITY 选项还允许您配置与该重建语句相关的阻塞进程的终止。有关详细信息,请参阅 ALTER TABLE (Transact-SQL) 和 ALTER INDEX (Transact-SQL)。sys.dm_tran_locks (Transact-SQL) 和 sys.dm_os_wait_stats (Transact-SQL) 中提供了有关新型锁状态的故障排除信息。