为数百万行的表创建索引需要数小时甚至数天。
当 CREATE INDEX 被中断时,数据库/数据会发生什么?例如当我手动使用 Ctrl-C 或出现断电等事故时。
它会对数据库/数据造成伤害吗?
如果是这样,我们如何从这种中断中恢复过来?
索引创建是在事务中完成的。如果您中断它,SQL Server 将回滚事务。这可能需要一段时间,但它是无害的。当然,在事务处于活动状态时会持有锁,因此这会影响服务器的性能。
如果中途断电,SQL Server 会在服务器启动时自动回滚部分完成的事务。同样,性能会受到影响,但不会对您的数据造成损害。
http://technet.microsoft.com/en-us/library/ms188317(v=sql.105).aspx
http://technet.microsoft.com/en-us/library/ms190925.aspx
http://technet.microsoft.com/en-us/library/aa224747(v=sql.80).aspx