以为趁国庆陪家人出去游玩一番领略祖国河山,谁知刚上高速就被同事的微信和电话轰炸。说客户反馈出现问题,一开始以为可能是前任挖的通信协议坑(每隔一段时间要重启一下通信协议)。于是在高速服务站通过后台登陆进行重启解决。过一段时间又继续轰炸说问题没解决。。咋回事呢?后台能登陆,证明服务器、程序、数据库三方都稳定的啊。。那真是百思不得其解,但由于当时又身处外地,找电脑远程登陆服务器看情况也不容易。。
后来千辛万苦,凭个人口(颜)才(值)和金钱;找了台电脑登陆上去;一看好家伙竟然提示因为 'PRIMARY' 文件组已满和数据库满的提示。明明服务器空间还有的,为啥呢?先解决问题吧,
1、重新建多一个'PRIMARY' 文件暂时缓解一下问题。
alter database 库名 add file(NAME = 逻辑文件名,FILENAME = 'c:实际文件名.ndf')
2、检查看看那个数据表要的空间最多,删除无需要的数据
SELECT OBJECT_NAME(id) 库名 ,
CASE WHEN reserved * 8 > 1024 THEN RTRIM(8 * reserved / 1024) + 'MB'
ELSE RTRIM(reserved * 8) + 'KB'
END DataReserve ,
CASE WHEN dpages * 8 > 1024 THEN RTRIM(8 * dpages / 1024) + 'MB'
ELSE RTRIM(dpages * 8) + 'KB'
END Used ,
CASE WHEN 8 * ( reserved - dpages ) > 1024
THEN RTRIM(8 * ( reserved - dpages ) / 1024) + 'MB'
ELSE RTRIM(8 * ( reserved - dpages )) + 'KB'
END unused ,
CASE WHEN ( 8 * dpages / 1024 - rows / 1024 * minlen / 1024 ) > 1024
THEN RTRIM(( 8 * dpages / 1024 - rows / 1024 * minlen / 1024 )
/ 1024) + 'MB'
ELSE RTRIM(( 8 * dpages / 1024 - rows / 1024 * minlen / 1024 ))
+ 'KB'
END FREE ,
rows AS Rows_Count
FROM sys.sysindexes
WHERE indid = 1
AND status = 2066 -- status='18'
ORDER BY reserved DESC
暂时解决问题吧,其实最好的办法是升级数据库的版本,因为SQL 2008 Express 也4G大小限制这个问题。。
哎。前人挖坑后人埋,后人死在埋坑上。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。