sql-server - SQL Server 收缩文件因 tempdb 充满活动事务而失败
问题描述
我在 Mac 上的 Docker/Linux 下运行 SQL Server。我有一个 60Gb 的数据库,其中删除了大约 30Gb 的数据。然后我尝试使用以下方法缩小文件:
dbcc shrinkfile('my_database')
但是,这失败并显示一条消息
由于活动事务,tempdb 已满
我已经检查了 tempdb 事务日志的大小
DBCC SQLPERF('logspace')
它是 8Mb。然后我检查了 tempdb 文件的设置,以防它们被配置为最大大小,使用
select * from sys.database_files
这显示了四个“ROWS”文件和事务日志。所有五个都显示为最大大小 = -1,即无限,增长 8192。
我有大约 35Gb 的可用磁盘空间。
我看不出这里有什么问题。我怎样才能缩小这个数据库?
解决方案
推荐阅读
- node.js - 为需要在我的网站上自动更新数据的每个页面制作许多 https websocket 服务器是否很好?
- azure - Azure DevOps:将项目流程从 Scrum 更改为 Basic
- python - OpenCV - 水平翻转表面法线图像
- php - 在命令行中显示两个不同的 PHP 版本
- html - 如何使用延迟加载为经过身份验证的用户和来宾用户创建多重布局
- hiveql - 如何在 WHERE 子句中使用 SELECT 查询的结果
- python - 为什么 pyinstaller 在脚本执行时会在方法上抛出错误而没有错误?
- python - 在表单向导 Django 和多对多字段中保存多个图像不起作用
- flutter - 我在我的颤振项目中遇到清单错误,如何解决这个问题?
- android - 从 Java 类调用 Kotlin 协程构建器