上次写这个标题解决方案的博客,是因为客户极端情况把我的临时自增id的日志表撑爆了,没有更大的id可写入导致
没想到同一个客户,前后间隔仅仅一个多月,又一次提示这个错误,但是找起来原因,却不再是自增int主键增长到极限的问题了
报错提示:
无法为数据库 'GPSJIA_GPS' 中的对象 'dbo.tGpsLog'.'IX_tGPS_SysCreateAt' 分配空间,因为 'PRIMARY' 文件组已满。请删除不需要的文件、删除文件组中的对象、将其他文件添加到文件组或为文件组中的现有文件启用自动增长,以便增加可用磁盘空间。
这次的问题在于:
SQL版本为Express,这个版本要求单个数据库不能超过10G,PRIMARY文件组限制不能超过2G,最大内存不能超过1G
这里我说的SQL版本,并非是指SQL的那年发行的版本,SQL2005,SQL2014,SQL2019这种发行更新版本
而是指SQL Server发布的授权版本:SQL Server企业版、SQL Server商业智能、SQL Server标准、SQL Server Web、SQL Server Express
最终解决方案:
直接在客户服务器上升级即可,从开始菜单,找到点击“SQL Server 2017 安装中心(64 位)”启动,然后点升级,版本选择“Developer”即可。开发版明显要比Express的约束更高,因此在升级完成后,系统立刻恢复了正常。
附录:升级前后的版本查询差异(使用SQL脚本查询版本)
select @@version
--Microsoft SQL Server 2017 (RTM) - 14.0.1000.169 (X64) Aug 22 2017 17:04:49 Copyright (C) 2017 Microsoft Corporation Express Edition (64-bit) on Windows Server 2016 Datacenter 10.0 <X64> (Build 14393: ) (Hypervisor)
--Microsoft SQL Server 2017 (RTM) - 14.0.1000.169 (X64) Aug 22 2017 17:04:49 Copyright (C) 2017 Microsoft Corporation Developer Edition (64-bit) on Windows Server 2016 Datacenter 10.0 <X64> (Build 14393: ) (Hypervisor)
原文地址:
https://www.opengps.cn/Blog/View.aspx?id=782
文章的更新编辑依此链接为准。欢迎关注源站原创文章!