当您达到 SQL Server Express 4GB / 10GB 限制时会发生啥?

Posted

技术标签:

【中文标题】当您达到 SQL Server Express 4GB / 10GB 限制时会发生啥?【英文标题】:What happens when you hit the SQL Server Express 4GB / 10GB limit?当您达到 SQL Server Express 4GB / 10GB 限制时会发生什么? 【发布时间】:2010-07-01 15:14:31 【问题描述】:

会发生什么样的错误?用户体验如何?您可以使用工具访问数据库吗?如果您将其恢复到 4GB / 10GB 限制以下怎么办?

【问题讨论】:

升级到 SQL Server 2008 R2 Express - 限制已扩大到 10 GB! :-) 用户会有很好的体验,不用担心。 【参考方案1】:

据我了解,您将开始在事件日志中看到异常消息,例如:

无法为数据库“[database]”中的对象“dbo.[table]”分配空间,因为 “PRIMARY”文件组已满。通过删除不需要的文件来创建磁盘空间, 删除文件组中的对象。

如果你可以减少数据库的大小,你可以像以前一样继续添加等。无论数据库大小如何,工具都应该继续工作。

希望这会有所帮助!

【讨论】:

【参考方案2】:

为时已晚,但我测试了它。对于每个数据库,SQL express 2008 R2 的最大大小为 10240 MB。在我到达之后,我在插入时遇到了这个错误:

无法为数据库“DBName”中的对象“TableName”.“PK_Nme”分配空间,因为“PRIMARY”文件组已满。通过删除不需要的文件、删除文件组中的对象、向文件组中添加其他文件或为文件组中的现有文件设置自动增长来创建磁盘空间。

在此之后我重新启动 SQL 服务,它停止并启动没有问题。我仍然可以运行 Select, update delete 命令。 (我确实测试了更新命令并且它是成功的,但我认为如果你更新到更大的东西可能会引发错误!)

【讨论】:

【参考方案3】:

您可能会看到如下错误:

创建数据库或更改数据库 失败,因为结果 累积数据库大小将超过 您的许可限制为 4096 MB 数据库。

或者这个:

无法为对象分配空间 'dbo.buyspace'.'PK__buyspace__4B5BD7F83A81B327' 在数据库“WAYTOOBIG”中,因为 “PRIMARY”文件组已满。创造 通过删除不需要的文件来占用磁盘空间, 在文件组中删除对象, 将附加文件添加到 文件组,或设置自动增长 对于文件组中的现有文件。

这是来自我们的错误日志。

【讨论】:

【参考方案4】:

用户体验到应用程序无法运行,通常是从出现的奇怪错误开始。

任何基于 Express 构建的应用都应该将其作为其初始规划的一部分 - 我们如何缩小尺寸。计划——只要合适,我们就会担心它,直到有人不得不支付许可费。这通常是在经历了无数的挫折、停机、调试之后,有人认为问题是完全驱动,其他人认为是新代码发布等,挫折等等,用户花了一些时间寻找另一个供应商谁能提前计划。我敢肯定这正是您正在做的事情。 感谢您首先考虑您的用户!!!!!!!!!

【讨论】:

【参考方案5】:

增加大小的操作将失败,例如插入、更新。您仍然可以访问数据库并对其进行维护以减小大小。

我会设置一些维护作业,以便在数据库达到此大小之前提醒您,这样您就可以防止任何数据丢失。

【讨论】:

【参考方案6】:

您可能无法再插入任何数据,但您可以选择。

【讨论】:

【参考方案7】:

如果我没记错的话,当它发生在我们身上时,数据库刚刚停止。我们必须进行备份以腾出足够的空间进入并解决问题。

您可能想知道 SQL Server 2008 Express R2 现在有 10GB 的限制,因此可能值得升级。

【讨论】:

以上是关于当您达到 SQL Server Express 4GB / 10GB 限制时会发生啥?的主要内容,如果未能解决你的问题,请参考以下文章

从 SQL Server Compact 4.0 迁移到 SQL Server Express 后提供程序错误

将 SQL Server CE 4 数据库转换为没有 Visual Studio Pro 版本的 SQL Server 2008 Express

ASP.NET MVC 4 EF6 无法连接到 SQL Server Express 数据库

win10 下安装SQL server 2008R2 express

SQL Server 2005 Express 安装在 SQL Server 2008 Express 之后

已安装 SQL Server 2005,安装 SQL Server 2008 时提示需要删除 SQL Server 2005 Express 工具