Vac*_*ano 3 sql-server-2008 sql-server sql-server-2008-r2 transaction-log
我在开发服务器上有我的 prod 数据库的副本。我正在使用它来测试部署脚本。
但是当我运行它时,它说日志文件已满。
我查了一下,它是 10 GB(几乎是整个数据库的大小)。
我不需要这个数据库,但需要几个小时(之后它将被删除)。
有没有办法优雅地摆脱日志文件?(直接删除它似乎是错误的。)
注意:
我已经运行了这个:
select log_reuse_wait, log_reuse_wait_desc, name
from sys.databases
where name = 'ProdCopyDatabase'
Run Code Online (Sandbox Code Playgroud)
结果是:
log_reuse_wait log_reuse_wait_desc name
2 LOG_BACKUP ProdCopyDatabase
Run Code Online (Sandbox Code Playgroud)
Mik*_*Fal 14
您有两个选择:
1)运行数据库的LOG备份:
BACKUP LOG foo TO DISK='X:\BackupLocation';
Run Code Online (Sandbox Code Playgroud)
2) 将恢复模式设置为 SIMPLE 并检查点。
ALTER DATABASE foo SET RECOVERY SIMPLE;
CHECKPOINT;
Run Code Online (Sandbox Code Playgroud)
这都是 SQL Server 不同恢复模型的一部分。根据您在 DEV 中的工作,我可能会选择第二个选项,因为听起来您无需担心时间点恢复。
请注意,这只会清除活动事务,不会减少实际文件大小。完成后,您可以缩小日志文件。
| 归档时间: |
|
| 查看次数: |
221 次 |
| 最近记录: |