当我尝试用以下命令删除索引时:
DROP INDEX [ClusteredColumnStoreIndex-20180619-104559] ON [dbo].[Transactions]我知道这个错误:
Msg 9002,17级,状态4,第4行 由于“ACTIVE_ transaction”,数据库“Metrics”的事务日志已满。
此时,数据库所在的磁盘也没有空间。
有人能帮我删除这个索引吗?
发布于 2018-07-06 06:10:29
使用以下技术
1)在联机运行大型索引操作之前,确保事务日志已被备份和截断,并且日志有足够的空间存储预计索引和用户事务。
2)考虑将索引操作的SORT_IN_TEMPDB选项设置为ON。这将索引事务与并发用户事务分开。索引事务将存储在tempdb事务日志中,并发用户事务将存储在用户数据库的事务日志中。这允许在需要时在索引操作期间截断用户数据库的事务日志。此外,如果tempdb日志与用户数据库日志不在同一磁盘上,则这两条日志并不争用相同的磁盘空间。
备注
验证tempdb数据库和事务日志是否有足够的磁盘空间来处理索引操作。在完成索引操作之前,不能截断tempdb事务日志。
3)使用允许索引操作最小日志记录的数据库恢复模型。这可能会减少日志的大小,并阻止日志填充日志空间。
4)不要在显式事务中运行联机索引操作。在显式事务结束之前,日志不会被截断。
https://stackoverflow.com/questions/51201554
复制相似问题