Sql Server 2008错误945的处理 周一上午刚坐下就有同事说客户那边有台SQL的数据库打不开了。远程连过去一看,确实是的。 版本环境: WIN :2003 server R2 DB: sql server 2008 rtm 10.0.1600.22 症状: 里面挂了两个用户数据库,一个正常,一个异常。 异常的数据库点击右键查看属性时,直接报错 服务器: 消息 945,级别 14,状态 1,行 1 由于文件不可访问,或者内存或磁盘空间不足,所以无法打开数据库 'jijiwaiwai'。有关详细信息,请参阅 SQL Server 错误日志。 www.2cto.com 官网上对945错误的定义: 由于文件不可访问,或者内存或磁盘空间不足,因此无法打开数据库 '%.*ls'。有关详细信息,请参阅 SQL Server 错误日志。 细节情况整理: 1.查看磁盘空间,发现C盘只有2个多G了,系统数据库是建立在C盘上的,用户数据库是建在E盘 2.查看用户数据库备份情况,发现昨天的前天的备份都失败,但具体原因不可知 3.系统的其他情况如内存,CPU都还算正常,压力不大。 4.客户每天对该数据库做全备份,单个数据库已经有3个多G大小 准备用DBCC DBCHECK来检查一下数据库的状态,然后再去rubild一下。 刚要操作,服务器被客户重启了,真是坑爹。过来十几分钟,客户告知数据库正常了...... 再去检查发现C盘的空间回收了一部分,有4个G左右的剩余空间了。 www.2cto.com 此时再去执行DBCC DBCHECK,发现数据库果然是正常了,但是花费了5分多钟时间,感觉有些长。 调整建议: 1.C盘重新整理,清理一些空间出来 2.每周做一次全备份,每天做增量备份和日志备份 3.定期做检查 4.对数据库做shrinkfile收缩 想到的暂时就这些了。 实际的操作也可参考: http://technet.microsoft.com/zh-cn/library/aa258746(v=SQL.80).aspx |