相信大家在做软件开发的过程中有遇到过“关于数据库日志已满的问题”。基于数据库日志已满的问题,首先说明你的数据库软件(DBMS)装在电脑的磁盘空间可能很小,导致无法放置已有的日志容量;或者是你在建立该数据库的时候没有限制数据库的日志文件的增长量而导致日志文件的无限增长。那么这些都是你已经在使用了数据库以后,所以这两种途径已经无法挽回了。那么怎么具体解决这个问题了,今天我就碰到了这个问题,我就把解决方法记录下来,以便和大家交流一下。具体解决办法如下:(提醒大家注意的是,我做的是基于SQL Server的,其他的数据库可能不同)
1.右键点击数据库,选择任务—》分离
2.在分离页面中选中所有选项,点击确定
3.关闭数据库服务器(注意此时一定要先关闭数据库,不然下面的操作将无法进行),删除数据库的日志文件(如果有必要将该日志文件剪切到其他位置)
4.重新打开数据库服务器,点击新建查询,在窗口中输入以下命令:
Exec sp_attach_single_file_db @dbname='你的数据库名称',
@physname='C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\你的数据库名.mdf'
(其中@dbname='你的数据库名称' 是数据库的名字,@physname是主数据文件的路径)
5.点击执行即可
6.友情提示,做完所有步骤后,重新登陆系统,检查数据是否完整!
经过这六个步骤,关于“数据库日志已满的问题”便得到解决!
-----------------------------------------------------------------------------
评论
#1楼 2012-02-24 22:32 toEverybody
直接收缩日志文件不行吗? 回复 引用 查看
#2楼 2012-02-25 16:33 NerverLee
备份事务日志进行截断不好吗? 回复 引用 查看
#3楼 2012-02-26 23:28 魔君六道
呵呵,史上最荒谬的“数据库日志已满”处理方式,这种处理方式造成数据库数据不一致性的可能几乎是100% 回复 引用 查看
#4楼 2012-02-27 11:09 CareySon
通过魔君大哥的评论看到的这篇日志..
看完日志再看评论,我忍不住笑出来了,o(∩_∩)o 回复 引用 查看
#5楼[楼主] 2012-02-27 19:21 Steven-Love-Arlene
@魔君六道
哎呀,魔君大哥,你说的是真的吗,那我这样做了两次,检查数据还没发现什么问题了,小弟只是把自己平时解决过的问题的方法记录下来而已。如果这种方法真的是错误的话,那还请魔君大哥不吝赐教呀,小弟一定虚心学习! 回复 引用 查看
#6楼[楼主] 2012-02-27 19:24 Steven-Love-Arlene
@CareySon
呵呵,既然是学习,就不怕笑话,能得到提高才是真正的意义 回复 引用 查看
#7楼 2012-02-27 19:48 魔君六道
@Steven-Love-Arlene
关于日志方面,多看看你CareySon大哥的文章,呵呵
http://www.cnblogs.com/CareySon/archive/2012/02/13/2349751.html 回复 引用 查看
#8楼[楼主] 2012-02-27 20:05 Steven-Love-Arlene
@CareySon
啊,CareySon大哥,认真学习了你的日志,高手啊!佩服佩服! 回复 引用 查看
#9楼 2012-02-28 09:11 CareySon
@Steven-Love-Arlene
-.-我笑是感觉这个方法简单暴力,看到魔君大哥略抓狂的评论,忍不住....没有恶意的...
高手都是像魔君大哥这样隐藏在民间,不写日志的-.- 回复 引用 查看