Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Log 下的文件好大啊,好几个G,能删除吗?

这是一个陷阱,不要相信,不要做。
Executing sp_cycle_errorlog 7 times will only include 7 log files, not all.

Sqlserver数据库日志太大如何快速删除

说实话,你提到的SQL Server日志删除问题是我在帮助一家电商公司搭建系统时遇到的。
当时,他们的一项促销活动日志增加到了 5 00GB。
由于延迟,服务器几乎瘫痪,管理员也汗流浃背。

第一步,我们先来说说简单恢复模式下的操作。
老实说,备份日志[YZGA]与您提到的NO_LOG命令有其一席之地;不过,在使用它之前,您需要了解一些要点。
你写的是清除日志和截断日志两个步骤;这是真实的。
但如果数据库没有处于正常恢复模式。
我在实践中遇到过WITH NO_LOG选项根本无法使用。
例如,我以前遇到一个旧系统,管理员使用此命令强制直接报告“模式不匹配”​​错误。
所以我必须在这里添加一个注释:您必须在简单恢复模式下执行此操作,并且运行此命令后,日志文件大小不会立即减小;日志内容将被清除。
当我有客户使用此命令后;日志文件5 00GB它仍然存在,但内容消失了。
后来它们被完全备份并减少了日志文件。

我们来说说第二招。
拆分数据库。
我经常使用这个技巧,但它有一个隐藏的缺陷。
你卸载数据库是对的;删除日志文件并重新添加日志文件的过程很简单,但在实践中需要特别注意一些细节。
例如,“如果您使用数据库连接,则必须先单击“清除”,然后再选择“确定”。
”我完全同意这一点。
但是按照此过程并清除连接后,我想删除日志文件,但发现系统询问“文件正在使用”。
后来查看系统日志,发现后台有一个SQL Agent作业占用了日志文件。
解决方案是在执行清理操作之前暂停所有依赖于该数据库的作业。
此外,日志文件在附加时会显示红叉或显示“未找到”,因为文件路径通常会更改。
我的经验是,此时不要通过握手删除“未找到”条目。
右键单击并选择“删除”。
重新连接。
系统会提示您设置新路线。
我有一个朋友遵循你提到的过程。
但上传时系统找不到日志文件。
他很担心自己可能会删除临时文件,但他并没有更改系统环境变量,所以SQL Server找不到备份路径。

有趣的是,这两种方法都可以解决大日志的问题,但只是治标不治本。
一个非常好的主意是配置自动日志增长和定期备份。
我曾经帮助一个生产客户构建了一个系统,他们的日志增长到了 5 00GB。
最后,我教他们根据需要设置日志进度并在清晨运行完整备份。
日志文件不超过1 00GB。
坦率地说,记录管理是一个主动的过程,不能依赖于简单的“删除”手段。
您的 Apache 帐户尚未删除;这可能是因为您没有采取预防措施。

我记得区块数据在X左右,但我建议你验证一下。

公司C盘sql server 2005的ERP日志文件太大,有没有办法缩小一点?

上周我和你谈过这个问题。

一旦记录分开,数据就可以了。

它用于检测错误和检查操作。

以前放C盘确实不合适。

单独的附件;你知道该怎么做吗?
先备份数据,没问题。

复制到新磁盘。

启动数据库。

分离驱动器 C 上的旧文件。

重新加载备份文件。

实验数据。

这样出错的机会就会减少。

移动成功后,删除C盘。

如果您仍然害怕,那就做正确的事。

启动U盘,慢慢展开。

扩展C盘并添加记录。

其实,分开是最好的。

允许数据库自行创建新记录。

先移动磁盘并创建新记录。

确认是的。
压缩日志。

删除旧记录。

将新的日志数据移动到新磁盘。

C盘是系统盘,所以速度很慢。

按照你所说的去做。

应该可以。

算了。

SQL server数据库日志满了怎么处理?

说实话,我已经多次遇到充满问题的 SQL 东西了,这很烦人。
这两种方法都有其缺陷。

第一种方法是清除日志。
我经常使用这个技巧。
我们写的步骤大体上是正确的,但我一直使用T-SQL直接执行,这样效率更高。
例如,如果库名为 TestDB,则在查询分析器中直接键入: sql BACKUP LOG TestDB TO DISK = 'C:\temp\TestDB_log.bak' WHEN NO_LOG
进入后日志就会清空,这个操作无所谓,所以是最快的。
此后,手动转到企业管理器并拒绝当然是安全的。
但需要注意的是,提取日志后,如果数据库文件较大,日志文件可能会自动增长,请密切关注。

第二种方式是分离再附着,确实很危险。
上次用这个招数的时候,我忘了把股票拿回来,担心得满头大汗。
SQL Server的日志机制如下。
它不是实时同步的,因此工作时必须小心。
当您删除数据库时,日志文件仍然存在,但其中的数据消失了。
添加后,将创建一个新日志。
默认大小大于5 00K。
你必须知道这一点。
我建议您除非绝对必要,否则不要使用此作弊。

这尤其受到接收模型故障的影响。
以前做开发的时候,数据库模型总是设置为简单模型,我觉得这样比较简单,也不那么麻烦。
结果有一次忘记备份,所有数据都丢失了。
痛苦是真实的。
现在,除非没有冰箱,否则设置成完整型号或大容量型号,这是安全点。

还有Truncatelogoncheckpoint等选项。
这在SQL Server 2 005 中经常使用。
日志在达到7 0%满时会自动清除,因此您不必每天检查它。
自动收缩也不错,但请确保仅收缩 2 5 %,并且不要小于原始尺寸,因此请记住这一点。
我有一个客户,他的数据文件是1 G,自动收缩设置为2 00M。
这就是为什么2 00M的文件总是卡住的原因。
此后,该文件将被手动拒绝。

综上所述,处理全量日志的关键是了解SQL Server的日志机制。
伤口的清理非常直接,但值得注意的是,进行了以下更改;断开连接再重新连接虽然很危险,但可以彻底解决问题。
您要设置的方法特定于您的站点。
我通常使用T-SQL首先清除日志,然后手动检查,最后检查故障恢复模型并确保这些选项没有再次满。