如何在传统Dell PowerEdge服务器上清除ESM日志
要使用DSET来清除ESM日志
下载并打开DSET实用程序。
单击System(系统)旁边的加号(+),然后单击Logs(日志)旁边的加号(+)。
单击ESM选中它。
单击位于页面右上角的Clear ESM Log(清除ESM日志)。
要使用OpenManage Server Administrator (OMSA)来清除ESM日志
启动OpenManage Server Administrator (OMSA)。
输入您的用户名和密码,然后按Enter,登录OMSA。
依次单击Logs(日志)选项卡和Hardware(硬件)。
单击Options(“选项”)旁边的Clear Log(清除日志)。
要使用Dell IT Assistant来清除ESM日志
启动IT Assistant。
从中间的System Tree(“系统树”)栏,单击选中您的服务器。
单击Logs(日志)选项卡,然后单击位于页面右上角的Clear Log(清除日志)。
可以的
打开 SQL Server Management Studio并连接到数据库引擎数据库。
在“对象资源管理器”窗格中展开“数据库”节点。
右击要修改的数据库,在弹出的快捷菜单中选择“属性”命令,打开“数据库属性”,对话框,选择“文件”选项,显示文件设置界面。
若要添加文件,单击“添加”按钮,在“数据库文件”列表框中将出现一个新的文件,设置该文件的各个参数即可。
若要删除文件,选中要删除的文件后单击“删除”按钮即可。需要注意的是,删除数据文件和日志文件时,必须确保文件里面不能包含数据或日志,即是空文件。
完成相应的操作后,单击“确定”按钮。
参考资料
SQL数据库日志文件,可以删除吗?百度经验[引用时间2018-1-3]
1.打开查询分析器,输入命令
DUMP TRANSACTION 数据库名 WITH NO_LOG
2再打开企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了。
清除Log有两种方法:
1自动清除法
开放数据库选项 Trunc Log on Chkpt,使数据库系统每隔一段时间自动清除Log。此方法的优点是无须人工干预,由SQLServer自动执行,并且一般不会出现Log溢满的情况;缺点是只清除Log而不做备份。
2手动清除法
执行命令“dump transaction”来清除Log。以下两条命令都可以清除日志:
dump transaction with truncate_only
dump transaction with no_log
通常删除事务日志中不活跃的部分可使用“dump transaction with trancate_only”命令,这条命令写进事务日志时,还要做必要的并发性检查。SYBASE提供“dump transaction with no_log”来处理某些非常紧迫的情况,使用这条命令有很大的危险性,SQLServer会弹出一条警告信息。为了尽量确保数据库的一致性,你应将它作为“最后一招”。
以上两种方法只清除日志,而不做日志备份,若想备份日志,应执行“dump transaction database_name to dumpdevice”命令。
PS:附一个更好的方法
先分离数据库后,直接删除日志以后,再在查询分析器里用
exec sp_attach_single_file_db '数据库名', 'mdf文件路径'
命令附加数据库。 OVER在别的地方看到的 不错。
数据库日志操作
先提供一种复杂的方法压缩日志及数据库文件如下:
1清空日志
DUMP TRANSACTION 库名 WITH NO_LOG
2截断事务日志:
BACKUP LOG 数据库名 WITH NO_LOG
3收缩数据库文件(如果不压缩,数据库的文件不会减小
企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件
--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了
--选择数据文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了
也可以用SQL语句来完成
--收缩数据库
DBCC SHRINKDATABASE(客户资料)
--收缩指定数据文件,1是文件号,可以通过这个语句查询到:select from sysfiles
DBCC SHRINKFILE(1)
4为了最大化的缩小日志文件(如果是sql 70,这步只能在查询分析器中进行)
a分离数据库:
企业管理器--服务器--数据库--右键--分离数据库
b在我的电脑中删除LOG文件
c附加数据库:
企业管理器--服务器--数据库--右键--附加数据库
此法将生成新的LOG,大小只有500多K
或用代码:
下面的示例分离 pubs,然后将 pubs 中的一个文件附加到当前服务器。
a分离
E X E C sp_detach_db @dbname = 'pubs'
b删除日志文件
c再附加
E X E C sp_attach_single_file_db @dbname = 'pubs',
@physname = 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubsmdf'
5为了以后能自动收缩,做如下设置:
企业管理器--服务器--右键数据库--属性--选项--选择"自动收缩"
--SQL语句设置方式:
E X E C sp_dboption '数据库名', 'autoshrink', 'TRUE'
6如果想以后不让它日志增长得太大
企业管理器--服务器--右键数据库--属性--事务日志
--将文件增长限制为xM(x是你允许的最大数据文件大小)
--SQL语句的设置方式:
alter database 数据库名 modify file(name=逻辑文件名,maxsize=20)
特别注意:
请按步骤进行,未进行前面的步骤,请不要做后面的步骤
否则可能损坏你的数据库
一般不建议做第4,6两步
第4步不安全,有可能损坏数据库或丢失数据
第6步如果日志达到上限,则以后的数据库处理会失败,在清理日志后才能恢复
另外提供一种更简单的方法,建议使用。
更简单的方法:
1。右建数据库属性窗口--故障还原模型--设为简单
2。右建数据库所有任务--收缩数据库
3。右建数据库属性窗口--故障还原模型--设为大容量日志记录
可能有遇到过这样的问题:
update或delete语句忘带了where子句,或where子句精度不够,执行之后造成了严重的后果,
这种情况的数据恢复只能利用事务日志的备份来进行,所以如果你的SQL没有进行相应的全库备份
或不能备份日志(truncate log on checkpoint选项为1),那么就无法进行数据的恢复了,或者
只能恢复到最近一次的备份的数据了。
日志文件满而造成SQL数据库无法写入文件时,可用两种方法:
一种方法:清空日志。
1.打开查询分析器,输入命令
DUMP TRANSACTION 数据库名 WITH NO_LOG
2再打开企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了。
另一种方法有一定的风险性,因为SQL SERVER的日志文件不是即时写入数据库主文件的,如处理不当,会造成数据的损失。
1: 删除LOG
分离数据库 企业管理器->服务器->数据库->右键->分离数据库
2:删除LOG文件
附加数据库 企业管理器->服务器->数据库->右键->附加数据库
此法生成新的LOG,大小只有500多K。
注意:建议使用第一种方法。
0条评论