Sql Server Express数据库大小限制

时间:2014-06-02 15:44:24

标签: sql sql-server sql-server-2008

在查看我们的某个数据库之后,如果我达到了sql express db的限制,我发现它会让人感到困惑。该数据库是使用sql server express 2005创建的,但后来迁移到了表达2008 r2。据我所知,截至2008年,数据库有10GB的限制,但这意味着数据库必须在2008年创建,或者当我迁移数据库时,它获得了5GB的额外空间。

有问题的db的属性窗口。 http://i58.tinypic.com/24476zq.jpg

sp_spaceused查询 http://i59.tinypic.com/25s1sm8.jpg

我能做些什么来腾出空间。我在SSMS向导中运行了缩减数据库,但它似乎没有释放任何空间。

2 个答案:

答案 0 :(得分:3)

您有一个4750 MB的数据库,其中4580 MB用于事务日志,其使用率超过98%。您有一个巨大的未提交查询,或者您具有完全备份恢复模型,并且您不备份日志。

右键单击Management Studio中的数据库,然后打开属性。选择“文件” - 我想事务日志的大小远远大于数据库文件的大小。

选择“选项”。查看恢复模型的存在。将其切换为简单,过了一会儿,另一个DBCC SHRINKDATABASE应该释放日志空间。

答案 1 :(得分:1)

您始终可以使用SHRINKFILE截断日志文件,相信它会释放足够的空间,因此您不必担心。

示例:

USE [dbname]
BACKUP LOG [dbname] WITH TRUNCATE_ONLY

DECLARE @InternalLogName VARCHAR(64)
SELECT TOP 1 @InternalLogName = RTRIM(LTRIM(name)) FROM sysfiles WHERE groupid = 0
DBCC SHRINKFILE (@InternalLogName)