某些操作可以最小日志量进行记录以减少其对事务日志大小的影响。
删除或移动事务日志以前,必须完全了解此操作带来的后果。
|
|
|---|
|
数据库检查点 (SQL Server)。 |
本主题内容:
在日志记录长时间处于活动状态时,事务日志截断将延迟,事务日志可能填满。
|
|
|---|
|
解决事务日志已满的问题(SQL Server 错误 9002)。 |
下表对这些列的值进行了说明。
|
log_reuse_wait 值 |
log_reuse_wait_desc 值 |
说明 |
||
|---|---|---|---|---|
|
0 |
NOTHING |
当前有一个或多个可重复使用的虚拟日志文件。 |
||
|
1 |
CHECKPOINT |
(所有恢复模式) 数据库检查点 (SQL Server)。 |
||
|
2 |
LOG_BACKUP |
(仅限完整恢复模式或大容量日志恢复模式) 完成下一个日志备份后,一些日志空间可能变为可重复使用。 |
||
|
3 |
ACTIVE_BACKUP_OR_RESTORE |
数据备份或还原正在进行(所有恢复模式)。 如果数据备份阻止了日志截断,则取消备份操作可能有助于解决备份直接导致的此问题。 |
||
|
4 |
ACTIVE_TRANSACTION |
事务处于活动状态(所有恢复模式)。
|
||
|
5 |
DATABASE_MIRRORING |
(仅限完整恢复模式) 数据库镜像 (SQL Server)。 |
||
|
6 |
REPLICATION |
(仅限完整恢复模式) SQL Server 复制。 |
||
|
7 |
DATABASE_SNAPSHOT_CREATION |
(所有恢复模式) 这是日志截断延迟的常见原因,通常也是主要原因。 |
||
|
8 |
LOG_SCAN |
(所有恢复模式) 这是日志截断延迟的常见原因,通常也是主要原因。 |
||
|
9 |
AVAILABILITY_REPLICA |
(完整恢复模式) AlwaysOn 可用性组概述 (SQL Server)。 |
||
|
10 |
— |
仅供内部使用 |
||
|
11 |
— |
仅供内部使用 |
||
|
12 |
— |
仅供内部使用 |
||
|
13 |
OLDEST_PAGE |
(所有恢复模式) 数据库检查点 (SQL Server)。 |
||
|
14 |
OTHER_TRANSIENT |
当前未使用此值。 |
[返回页首]
本主题介绍在大容量日志恢复模式下(以及简单恢复模式下)按最小方式记录、但在运行备份时例外的操作。
|
|
|---|
|
不过,如果在最小日志记录生效时数据库损坏或丢失,则无法将数据库恢复到故障点。 |
下列操作在完整恢复模式下执行完整日志记录,而在简单和大容量日志恢复模式下按最小方式记录:
-
在大容量导入中按最小方式记录日志的前提条件。
注意
启用事务复制时,将完全记录 BULK INSERT 操作,即使处于大容量日志恢复模式下。
-
INTO 操作。
注意
启用事务复制时,将完全记录 SELECT INTO 操作,即使处于大容量日志恢复模式下。
-
数据类型 (Transact-SQL)。
-
注意,在更新现有值时没有使用最小日志记录。
注意
不推荐使用 WRITETEXT 语句和 UPDATETEXT 语句,因此应该避免在新的应用程序中使用这些语句。
-
按最小方式记录的索引操作如下:
-
CREATE INDEX 操作(包括索引视图)。
-
ALTER INDEX REBUILD 或 DBCC DBREINDEX 操作。
注意
不推荐使用 DBCC DBREINDEX 语句,因此应该避免在新的应用程序中使用该语句。
-
DROP INDEX 新堆重新生成(如果适用)。
注意
DROP INDEX 操作期间将始终完整记录索引页的释放操作。
-
[返回页首]