sqlserver日志很大,sqlserver数据库日志文件过大

sqlserver2008和sqlserver2012日志文件过大,有什么方法清理吗

清理sql server 2008日志步骤如下: 1.将数据库设置成 简单 模式选择要收缩的数据库,点右键 属性-选项,选择 简单模式 2.选择任务-收缩-文件 3.选择日志 或者用如下语句 代码 USE [master] GO ALTER DATABASE DNName SET RECOVERY SIMPLE WITH NO_WAIT GO ALTER DATABASE DNName SET RECOVERY SIMPLE GO USE DNName GO DBCC SHRINKFILE (N'LogFileName' , 0,TRUNCATEONLY) GO USE [master] GO ALTER DATABASE DNName SET RECOVERY FULL WITH NO_WAIT GO ALTER DATABASE DNName SET RECOVERY FULL GO SQL Server 2000要清理日志使用的是dump语句,但是在SQL Server2008里,这个语句不管用了,如果日志文件很大,比如超过1G,就需要截断一下日志文件以加快sqlserver的运行速度,在SQL Server2008里,方法改为: 有数据库 xxdb 在 SQL Server 2008 下,日志文件已经超过1G。 以往使用BACKUP语句-BACKUP LOG xxdb WITH NO_LOG 已经失效,在查阅 MSDN 之后发现 MS 提供的标准截断日志语句已经变为了 “BACKUP LOG 语句不指定 WITH COPY_ONLY” 使用语句 BACKUP LOG xxdb to disk='x:\work\1.bak' 成功将日志文件备份,并截断日志文件。这里x:代表你想要备份文件的盘符。 然后使用 DBCC SHRINKFILE (xxdb_log,10) 收缩日志文件到 10M 总结: 完整的收缩日志文件的 T-SQL 语句: BACKUP LOG xxdb to disk='x:\work\1.bak' DBCC SHRINKFILE (xxdb_log,10) GO -- BACKUP LOG db_name to disk='backupfilename' DBCC SHRINKFILE (log_filename,10) GO 里面的x:\work是随意设置的。当然也可以收缩到比如5M或1M。 在用的: USE[master] GO ALTERDATABASEYHDBSETRECOVERYSIMPLEWITHNO_WAIT GO ALTERDATABASEYHDBSETRECOVERYSIMPLE--简单模式 GO USEYHDB GO DBCCSHRINKFILE(N'YHDB_log', 11,TRUNCATEONLY) GO USE[master] GO ALTERDATABASEYHDBSETRECOVERYFULLWITHNO_WAIT GO ALTERDATABASEYHDBSETRECOVERYFULL--还原为完全模式 GO

创新互联是一家专业提供巨鹿企业网站建设,专注与成都网站设计、成都网站建设、H5开发、小程序制作等业务。10年已为巨鹿众多企业、政府机构等服务。创新互联专业网络公司优惠进行中。

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

2.截断事务日志: BACKUP LOG 数据库名WITH NO_LOG 3.收缩数据库文件(如果不压缩,数据库的文件不会减小 企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件 --选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了 --选择数据文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了 也可以用SQL语句来完成 --收缩数据库 DBCC SHRINKDATABASE(客户资料) --收缩指定数据文件,1是文件号,可以通过这个语句查询到:select * from sysfiles DBCC SHRINKFILE(1) 代码如下复制代码backup, log, 模式 -- 第一步:清空日志 DUMP TRANSACTION [YZGA] WITH NO_LOG -- 第二步:截断事务日志 BACKUP LOG [YZGA] WITH NO_LOG -- 第三步:收缩数据库 尽管可用该选项手动截断事务日志,但是我们极力建议您不要这样做,因为这会将日志链断开。在下一次完整备份或完整差异备份之前,将无法为数据库提供媒体故障保护。只在非常特殊的情况下才手动截断日志,并立即创建数据备份。 删除日志方法二1、进入企业管理器,选中数据库,比如it,所有任务-分离数据库。2、如果数据库正在连接使用,要先点清除,才可以选确定。3、到数据库文件的存放目录,将it_log.LDF文件删除,不放心可以先拷到别的地方。4、进入企业管理器,数据库-所有任务-附加数据库。5、选择it_Data.MDF,这个时候你会看见日志文件这项是一个红叉,不要紧点确定。6、此时数据库就会提示你该数据库无日志是否创建一个新的,确定就是了。

SQLServer日志文件太大如何解决

USE[master]

GO

ALTER DATABASE 数据库名称 SET RECOVERY SIMPLE WITH NO_WAIT

GO

ALTER DATABASE 数据库名称 SET RECOVERY SIMPLE

GO

USE 数据库名称

GO

DBCC SHRINKFILE (N'数据库名称_log' , 2, TRUNCATEONLY)

GO

USE[master]

GO

ALTER DATABASE 数据库名称 SET RECOVERY FULL WITH NO_WAIT

GO

ALTER DATABASE 数据库名称 SET RECOVERY FULL

ogg for sqlserver 日志暴涨怎么办

使用简单恢复模式,可能造成日志暴涨的原因主要是:

1.当前存在活动日志,这个可以使用DBCC OPENTRAN命令查看是否有当前活动日志导致日志无法截断。

2.当前库用于复制,因为日志需要被复制的Log Reader进程读取,在读取之前日志是无法被清理掉的,原因可以通过sys.databases的log_resue_wait列查看到原因。

3.日志之前曾经因为大的操作暴涨,忘记收缩,尝试直接收缩一下日志。


当前文章:sqlserver日志很大,sqlserver数据库日志文件过大
本文URL:http://cdiso.cn/article/hdppjs.html

其他资讯