SQL SERVER 的master数据库日志已满怎么处理呢? sqlserver日志清理
SQL server数据库日志满了怎么处理?
一、删除日志文件。
二、手动收缩。操作如下:
1、在数据库页面中选择“选项”;
2、在打开的选项页面中,将恢复模式更改为“简单”;
3、然后点击下方的“确定”;
4、然后在数据库文件和文件组汇总,将文件类型更改为“日志”;
5、在下方的收缩操作中,选择“将文件收缩到1MB”即可,也可以根据需求自行设置文件收缩大小。
SQL server数据库日志满了怎么处理?
解决方法
日志文件满而造成SQL数据库无法写入文件时,可用两种方法:
一种方法:清空日志。
1.打开查询分析器,输入命令
DUMP TRANSACTION 数据库名 WITH NO_LOG
2.再打开企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了。
另一种方法有一定的风险性,因为SQL SERVER的日志文件不是即时写入数据库主文件的,如处理不当,会造成数据的损失。
1: 删除LOG
分离数据库 企业管理器->服务器->数据库->右键->分离数据库
2:删除LOG文件
附加数据库 企业管理器->服务器->数据库->右键->附加数据库
此法生成新的LOG,大小只有500多K。
注意:建议使用第一种方法。
如果以后,不想要它变大。
SQL2000下使用:
在数据库上点右键->属性->选项->故障恢复-模型-选择-简单模型。
或用SQL语句:
alter database 数据库名 set recovery simple
另外,如上图中数据库属性有两个选项,与事务日志的增长有关:
Truncate log on checkpoint
(此选项用于SQL7.0,SQL 2000中即故障恢复模型选择为简单模型)
当执行CHECKPOINT 命令时如果事务日志文件超过其大小的70% 则将其内容清除在开发数据库时时常将此选项设置为True
Auto shrink
定期对数据库进行检查当数据库文件或日志文件的未用空间超过其大小的25%时,系统将会自动缩减文件使其未用空间等于25% 当文件大小没有超过其建立时的初始大小时不会缩减文件缩减后的文件也必须大于或等于其初始大小对事务日志文件的缩减只有在对其作备份时或将Truncate log on checkpoint 选项设为True 时才能进行。
注意:一般立成建立的数据库默认属性已设好,但碰到意外情况使数据库属性被更改,请用户清空日志后,检查数据库的以上属性,以防事务日志再次充满。
如何清理sql server 已满的数据库日志
1. Detach数据库(Detach之前一定要屏蔽所有对这个数据库的写入操作)
2. 删除或重命名日志文件
3. Attach数据库,这时会提示找不到日志文件
4. 移除(Remove)这个找不到的日志文件,然后点击Ok进行Attach,SQL Server会在数据文件所在的文件夹自动创建一个新的日志文件完成Attach。
5. 如果日志文件需要存放在另外的路径,要再通过Detach/Attach进行日志文件的移动操作。
Detach数据库
将日志文件移动至新的位置
Attach数据库,修改日志文件的路径并完成Attach
该方法的弊端是在操作期间,被操作的数据库不能被正常访问。
安装SQL时,提示sql日志已满,请问怎么解决?
不清楚你说的安装SQL是什么产品,如果是微软的SQL Server,那请先做完整数据库备份。日志已满时一般需要备份数据库,已截断日志,释放空间。