当前位置:文档之家› K3上机日志清除使用

K3上机日志清除使用

K3上机日志清除使用
K3上机日志清除使用

上机日志清除

本期概述

●本文档适用于 K/3所有版本上机日志模块

●本文档针对上机日志清除功能进行讲解,通过本文档的学习可以了解机日志清除使

用功能和具体操作步骤

版本信息

●2014年03月23日 V1.0 编写人:刘震

●2014年03月31日 V2.0 修改人:曹磊

●2014年04月28日 V3.0 修改人:袁媛

版权信息

●本文件使用须知

著作权人保留本文件的内容的解释权,并且仅将本文件内容提供给阁下个人使用。对于内容中所含的版权和其他所有权声明,您应予以尊重并在其副本中予以保留。您不得以任何方式修改、复制、公开展示、公布或分发这些内容或者以其他方式把它们用于任何公开或商业目的。任何未经授权的使用都可能构成对版权、商标和其他法律权利的侵犯。如果您不接受或违反上述约定,您使用本文件的授权将自动终止,同时您应立即销毁任何已下载或打印好的本文件内容。

著作权人对本文件内容可用性不附加任何形式的保证,也不保证本文件内容的绝对准确性和绝对完整性。本文件中介绍的产品、技术、方案和配置等仅供您参考,且它们可能会随时变更,恕不另行通知。本文件中的内容也可能已经过期,著作权人不承诺更新它们。如需得到最新的技术信息和服务,您可向当地的金蝶业务联系人和合作伙伴进行咨询。

著作权声明著作权所有 2014 金蝶软件(中国)有限公司。

所有权利均予保留。

目录

1. 功能简介 (3)

2. 应用背景 (3)

3. 日志删除 (5)

3.1 K/3主控台操作 (5)

3.2 账套管理操作 (7)

3.3 后台手工删除 (8)

1. 功能简介

K/3系统记录用户日常操作信息的日志称之为上机日志。通过上机日志功能,管理人员可以查看到详细的用户登录和业务操作情况,包括用户名称,详细的操作内容,执行操作的系统时间和客户端机器等信息,便于对系统的运行情况进行监控,确保数据的安全性。

2. 应用背景

系统记录用户对账套数据执行的增、删、改等关键性操作,以及日常登录等信息,随着账套使用时间的推移,对应日志记录信息也会逐渐增加,如果不对其进行清理,庞大的数据量必将直接影响到系统的操作性能,但如果系统自动删除日志记录,系统维护人员将无法进行有效的监管。结合以上两个方面,当日志信息达到一定的数量时,系统应当给予适当控制。

K/3系统提供上机日志预警值设置,当系统日志超过预设的条数时,系统登录或执行业务操作时就会弹出预警提示消息,如图-1所示。

图-1 上机日志超出系统预警提示

系统参数预警值设置需要先登录【账套管理】功能,打开【系统】菜单下的【系统参数设置】,在【日志管理】参数列表中勾选参数“上机日志记录数超过预设值时,客户端登录给予提示”,并在“上机日志记录提示数(万):”字段中输入预警值,分别如图-2、图-3所示。

图-2 系统参数设置

图-3 上机日志记录提示数

3. 日志删除

参数设置完成后,当在系统登录或执行业务操作时弹出“该账套的日志记录已经达到XXX条”的金蝶系统提示时,可以分别通过金蝶K3主控台,账套管理功能进行上机日志删除操作,也可以直接从数据库后台执行清理操作,下面将根据这三种情况进行分别介绍。

3.1 K/3主控台操作

登录金蝶K/3主控台,依次展开【系统设置】→【日志信息】→【上机日志】,双击打开明细功能下的【上机日志】,在弹出的过滤窗口中设置条件,可以是操作模块、用户名或时间等条件内容,确定后即可进入【上机日志序时簿】窗口,显示过滤条件相关的日志信息,分别如图-4、图-5所示。

图-4 设置过滤方案

图-5 过滤结果

通过过滤条件查询到需要删除的上机日志后,单击工具栏上的【引出】按钮可将上机日志先引出进行备份存档,方便后续查询核对,如图-6所示。如果不需要进行日志备份,可忽略此步骤。

图-6 引出内部数据

注意:V12.1以前的历史版本在执行引出内部数据功能的同时,会提供删除上机日志的功能,如图-7所示,因此如果不想在引出时直接删除,需注意提示信息的选择。

图-7 引出并删除

上机日志引出备份完成后,可直接删除系统中的这些日志信息。单击工具栏上的【删除】按钮,系统提示“确定要删除当前过滤出的所有日志记录吗?”,如图-8所示,单击【是】按钮即可将删除当前过滤出的所有日志,而不仅是当前所选中的日志记录。

图-8 删除过滤出的所有日志记录

注意:V12.1以前的历史版本,执行删除操作时只针对当前已选中的记录,如图-9所示,需要注意执行时弹出的提示信息帮助进行判断。如果当前版本的删除操作只针对所选记录生效,就需要使用Shift键帮助批量选中多条记录或所有记录行,选中后的记录显示为蓝色底纹。

图-9 删除当前日志数据

3.2 账套管理操作

在中间层服务器上登录【账套管理】功能,选择需清理上机日志的账套,然后依次单击菜单栏上【账套】→【上机日志】,如图-10所示,通过过滤条件设置过滤出需要处理的日志记录,后续操作与在K/3主控台上的操作一致,在此不再赘述。

图-10 账套管理上机日志功能

3.3 后台手工删除

通过前台业务操作功能删除所有上机日志记录后,登录K/3系统仍出现上机日志超过设定的预警值;或者系统提示上机日志已经超过5万条,而实际查询到处得到的日志条数才3万多条。此类情况是由于有一部分的日志是非关键日志,未在前台操作功能界面中进行显示,此时可以通过SQL语句直接从后台数据库中进行日志的彻底清除。

注意:数据库直接操作存在较大风险,需要专业人员进行操作,并且在执行操作前需要对账套数据库做好备份,避免误操作引起数据丢失或损坏。

以在SQL Server 2005版本为例进行操作说明,首先进入【账套管理】功能,对需要进行操作的账套进行备份,如图-11所示。

图-11 备份账套

账套备份完成后,选中该账套然后单击工具栏中的【属性】按钮,在打开的账套属性窗

口中查看“数据库实体”字段,如“AIS20101126160333”,如图-12所示。

图-12 查看数据库实体名称

打开并登录【SQL Server Management Studio】工具,分别如图-13和图-14所示。

图-13 打开SQL Server Management Studio

图-14 登录SQL Server Management Studio

登录后单击工具栏上的【新建查询】按钮,在工具栏“可用数据库”的下拉列表中选择到K/3账套对应的数据库实体名称,如“AIS20101126160333”,然后在查询窗口中输入SQL 语句,单击工具栏上的【执行】按钮即可执行语句相应的操作。

通过执行以下语句,可以分别查询系统中的日志记录和删除系统中所有的日志记录,如图-15所示。

SELECT*FROM t_log --查询日志记录

DELETE FROM t_Log --删除所有日志记录

图-15 查询及删除语句

日志删除恢复数据库

删除数据库日志文件 设置数据库为紧急模式 ?停掉SQL Server服务; ?把应用数据库的数据文件XXX_Data.mdf移走; ?重新建立一个同名的数据库XXX; ?停掉SQL服务; ?把原来的数据文件再覆盖回来; ?运行以下语句,把该数据库设置为紧急模式; 运行“Use Master Go sp_configure 'allow updates', 1 reconfigure with override Go” 执行结果: DBCC 执行完毕。如果DBCC 输出了错误信息,请与系统管理员联系。 已将配置选项'allow updates' 从0 改为1。请运行RECONFIGURE 语句以安装。 接着运行“update sysdatabases set status = 32768 where name = 'XXX'” 执行结果: (所影响的行数为1 行) ?重启SQL Server服务; ?运行以下语句,把应用数据库设置为Single User模式; 运行“sp_dboption 'XXX', 'single user', 'true'” 执行结果: 命令已成功完成。 ?做DBCC CHECKDB;

运行“DBCC CHECKDB('XXX')” 执行结果: 'XXX' 的DBCC 结果。 'sysobjects' 的DBCC 结果。 对象'sysobjects' 有273 行,这些行位于5 页中。 'sysindexes' 的DBCC 结果。 对象'sysindexes' 有202 行,这些行位于7 页中。 'syscolumns' 的DBCC 结果。 ……… ?运行以下语句把系统表的修改选项关掉; 运行“sp_resetstatus "XXX" go sp_configure 'allow updates', 0 reconfigure with override Go” 执行结果: 在sysdatabases 中更新数据库'XXX' 的条目之前,模式= 0,状态= 28(状态suspect_bit = 0), 没有更新sysdatabases 中的任何行,因为已正确地重置了模式和状态。没有错误,未进行任何更改。 DBCC 执行完毕。如果DBCC 输出了错误信息,请与系统管理员联系。 已将配置选项'allow updates' 从1 改为0。请运行RECONFIGURE 语句以安装。 ?重新建立另外一个数据库XXX.Lost; DTS导出向导 ?运行DTS导出向导; ?复制源选择EmergencyMode的数据库XXX,导入到XXX.Lost;

解决SQL数据库日志已满的问题

解决SQL数据库日志已满的问题 1、右键数据库→属性→选项→故障还原模型→设为简单→确定; 2、右键数据库→所有任务→收缩数据库→确定; 3、右键数据库→属性→选项→故障还原模型→设为大容量日志记录→确定。 二、复杂方法 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 7.0,这步只能在查询分析器中进行) a.分离数据库 企业管理器--服务器--数据库--右键--分离数据库 b.在我的电脑中删除LOG文件 c.附加数据库 企业管理器--服务器--数据库--右键--附加数据库 此法将生成新的LOG,大小只有500多K 或用代码: 下面的示例分离pubs,然后将pubs 中的一个文件附加到当前服务器。 a.分离 EXEC sp_detach_db @dbname = 'pubs' b.删除日志文件 c.再附加 EXEC sp_attach_single_file_db @dbname = 'pubs',@physname = 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs.mdf' 5、为了以后能自动收缩,做如下设置 企业管理器--服务器--右键数据库--属性--选项--选择"自动收缩" --SQL语句设置方式: EXEC sp_dboption '数据库名', 'autoshrink', 'TRUE' 6、如果想以后不让它日志增长得太大 企业管理器--服务器--右键数据库--属性--事务日志 --将文件增长限制为xM(x是你允许的最大数据文件大小) --SQL语句的设置方式: alter database 数据库名modify file(name=逻辑文件名,maxsize=20)

SQL Server 数据库清除日志的方法

SQL Server 数据库清除日志的方法 方法一: 1、打开查询分析器,输入命令 BACKUP LOG database_name WITH NO_LOG 2、再打开企业管理器--右键要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择收缩至xxm,这里会给出一个允许收缩到的最小m数,直接输入这个数,确定就可以了。 方法二: 设置检查点,自动截断日志 一般情况下,SQL数据库的收缩并不能很大程度上减小数据库大小,其主要作用是收缩日志大小,应当定期进行此操作以免数据库日志过大 1、设置数据库模式为简单模式:打开SQL企业管理器,在控制台根目录中依次点开Microsoft SQL Server-->SQL Server组-->双击打开你的服务器-->双击打开数据库目录-->选择你的数据库名称(如用户数据库cwbase1)-->然后点击右键选择属性-->选择选项-->在故障还原的模式中选择“简单”,然后按确定保存 2、在当前数据库上点右键,看所有任务中的收缩数据库,一般里面的默认设置不用调整,直接点确定 3、收缩数据库完成后,建议将您的数据库属性重新设置为标准模式,操作方法同第一点,因为日志在一些异常情况下往往是恢复数据库的重要依据 方法三:通过SQL收缩日志 把代码复制到查询分析器里,然后修改其中的3个参数(数据库名,日志文件名,和目标日志文件的大小),运行即可 SET NOCOUNT ON DECLARE @LogicalFileNamesysname, @MaxMinutes INT, @NewSize INT USE tablename -- 要操作的数据库名 SELECT @LogicalFileName = 'tablename_log', -- 日志文件名 @MaxMinutes = 10, -- Limit on time allowed to wrap log. @NewSize = 1 -- 你想设定的日志文件的大小(M) -- Setup / initialize DECLARE @OriginalSizeint SELECT @OriginalSize = size FROM sysfiles WHERE name = @LogicalFileName SELECT 'Original Size of ' + db_name() + ' LOG is ' + CONVERT(VARCHAR(30),@OriginalSize) + ' 8K pages or ' + CONVERT(VARCHAR(30),(@OriginalSize*8/1024)) + 'MB' FROM sysfiles WHERE name = @LogicalFileName CREATE TABLE DummyTrans (DummyColumn char (8000) not null) DECLARE @Counter INT,

最新数据库日志清除语句

数据库日志清除语句 当数据库的日志文件太大,磁盘没有空间不能做单据时,我们可以用下面的方法直接清除日志: 2008版本以下的数据库执行以下整个语句: --标准 use数据库名称 go backup log数据库名称with no_log dbcc shrinkfile(2) --实例 use DSCSYS go backup log DSCSYS with no_log dbcc shrinkfile(2) 说明: 不论是公司数据库还是公用数据库,只要把数据库名称全部替换了即可。 2008版本以上的数据库执行以下整个语句: --标准 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'FILEName_Log', 11,TRUNCATEONLY) GO USE[master] GO ALTER DATABASE DNName SET RECOVERY FULL WITH NO_WAIT GO ALTER DATABASE DNName SET RECOVERY FULL GO

--实例 USE[master] GO ALTER DATABASE DEMO90SET RECOVERY SIMPLE WITH NO_WAIT GO ALTER DATABASE DEMO90SET RECOVERY SIMPLE GO USE DEMO90 GO DBCC SHRINKFILE(N'outside_Log', 11,TRUNCATEONLY) GO USE[master] GO ALTER DATABASE DEMO90SET RECOVERY FULL WITH NO_WAIT GO ALTER DATABASE DEMO90SET RECOVERY FULL GO 说明: 1.标准示例中的DNName及实例中的DEMO90表示的是数据库名称,就是下图看到的名字

数据库日志满的删除方法

解决SQL数据库日志已满的问题 2009年03月21日星期六上午 11:53 一、简单方法 1、右键数据库→属性→选项→故障还原模型→设为简单→确定; 2、右键数据库→所有任务→收缩数据库→确定; 3、右键数据库→属性→选项→故障还原模型→设为大容量日志记录→确定。 二、复杂方法 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 7.0,这步只能在查询分析器中进行) a.分离数据库 企业管理器--服务器--数据库--右键--分离数据库 b.在我的电脑中删除LOG文件 c.附加数据库 企业管理器--服务器--数据库--右键--附加数据库 此法将生成新的LOG,大小只有500多K 或用代码: 下面的示例分离 pubs,然后将 pubs 中的一个文件附加到当前服务器。 a.分离 EXEC sp_detach_db @dbname = 'pubs' b.删除日志文件 c.再附加 EXEC sp_attach_single_file_db @dbname = 'pubs',@physname = 'c:\Program Files\Microsoft SQL

清除数据和清除日志

清除数据和清除日志 一.清除出去的数据 本功能支持工作流运行数据(工作流运行过程中产生的实例、日志信息)的清除,清除出去的数据,以后如果需要还可以通过还原工作流数据功能恢复到系统中。 操作说明 1.系统管理员Admin登录后,在"系统管理"主界面,选择【系统】菜单中的【数据清除】-【清除工作流数据】,点击进入清除工作流功能界面。 2.在数据清除界面, 根据'起止年度'确定 需要操作的账套库 后,可以选择按日期 范围或按单据类型进 行清除:

3.清除方式选择'按日期范围',可以进一步在'时间条件'中选择具体的日期范围。选择后将清除该账套库中终审时间在指定日期范围内的所有单据类型的工作流数据。 4.清除方式选择'按单据',可以进一步在'单据条件'中选择具体单据及其过滤条件。设置后将清除该账套库中指定单据类型的满足条件的工作流数据。 5.'选择单据类型'左侧显示本账套库中存在工作流数据的单据类型,从左侧选中需要清除工作流数据的单据类型,点击选择到右侧; 6.选定各个单据类型还可以在'设置单据条件'中设置更加明细的过滤条件。 7.点击〖下一步〗按钮,还会显示将要清除的工作流数据的信息列表以再次确认。 8.确认无误后,点击〖清除〗,在弹出框中选择备份文件存放路径,〖确定〗后将把所选的工作流数据备份到指定路径,并删除账套库内相应数据。 注意: 只有系统管理员Admin可执行工作流数据的清除。 选择好需要清除的工作流数据范围以后,在确认列表底部将显示出将清除数据的数据量大小。

二.清除日志 本功能支持各种日志类数据的清除,包括业务功能操作日志、数据操作日志、系统管理操作日志。清除出去的数据,以后如果需要还可以通过还原日志功能恢复到系统中。 操作说明 1.管理员登录后,在"系统管理"主界面,选择【系统】菜单中的【数据清除】-【清除日志】,点击进入清除日志功能界面。如图 2.在数据清除界面,左侧选 择不同的历史数据类型,右侧选择需要卸出数据的账套、年度,以及数据的日期范围,录入或选择备份文件存放路径后,点击〖清除〗按钮,将把所选的账套历史数据备份到指定路径,并删除账套内相应数据,同时提示用户保管好备份文件。 3.历史数据类型说明 4.数据操作日志:各类业务数据的操作日志,包括单据、档案的操作日志、业务参数变更日志等; 5.业务系统上机日志:各类业务功能操作的日志,包括登录门户、

几种清除MSSQL日志方法

方法一、 1 / 4

2 / 4 方法二、

MS SQL清除日志的命令 如何清除sql server 日志? 设置数据库为简单模式,自动收缩 1.打开查询分析器,输入命令 backup log databasename with no_log 2.再打开企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M 数,直接输入这个数,确定就可以了。 dbcc shrinkfile (databasename_log,truncateonly) 方法三、 1: 删除LOG 第1步:分离数据库企业管理器->服务器->数据库->右键->分离数据库 第2步:删除LOG文件 第3布:附加数据库企业管理器->服务器->数据库->右键->附加数据库 此法生成新的LOG,大小只有500多K 再将此数据库设置自动收缩 方法四、 EXEC sp_detach_db @dbname = 'pubs' EXEC sp_attach_single_file_db @dbname = 'pubs', @physname = 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs.mdf' 方法五、 Use Database_Name Backup Log Database_Name With No_log dbcc shrinkfile (Database_Name_Log,truncateonly) Go 方法六、 直接在查询分析那里执行backup log databasename with no_log 然后回到企业管理器把数据库收缩一下(可能需另外设置属性) 3 / 4

清除sql2000日志文件

sql 2000 事务日志的介绍及收缩 1、事务日志简介 作为大型的关系型数据库,最重要的事情之一就是数据库完整性,也就是说数据必须是正确的,不能因为一些不可知的突发事件(如突然掉电)损坏数据。为了避免这种情况,SQL数据库采用了两步写入磁盘的办法,第一步先写我做了什么,比如开了一个进货单,这一步完成后,再执行第二步,把这个进货单的内容写入数据库,这两步都成功了,才算完成,有一步有问题,这个单据都不会记到数据库中。这样,您的事务操作(对数据库的修改操作,查询不记事务)的每一步都要记录进日志文件,如果您不注意经常截断事务日志的话,随着时间的增长,事务日志会很快的增长,最后要比您的数据量大的多。可以经常看到,数据库文件只有几十兆,而日志文件却几千兆的情况。 2、截断事务日志 事务日志分成两部分,一部分是不活动的,也就是说这部分的操作都已经成功的写入数据库了,而另一部分是活动的,也就是说,这部分日志,只是确认执行了上述第一步,还没有确信已经写入数据库的部分。我们需要截断的就是不活动的部分。这部分可以如下方法截断:Backup Log ‘数据库名’with truncate_only 警告:在运行上述截断日志之后,强烈建议进行数据库完全备份。 3、缩小文件大小 使用上述第2步就把不活动的日志删除了,但是文件并没有变小,只是把原先旧日志占用的空间释放了,又可以向里面记入新的日志了。要想把物理文件也变小(比如已经几千兆了),请使用如下命令:DBCC Shrinkdatabase (数据库名) 运行上述命令后就可以把日志文件缩小了(一般都缩为1M左右) 4、把数据文件或日志文件的增长不受限制 如果您做不到经常维护数据库,不能经常的截断日志,日志文件就会逐渐变大,一旦大到您设置的大小限制,日志就再也不能写入了,您对数据库的所有改变操作也就无法进行了,这时候您就需要用上面的方法把日志文件截断。不过,您可以把文件的大小设置大一些或不受限制,请在企业管理器中设置数据库属性即可。也可以运行下述命令:alter database 数据库名modify file (name = 逻辑文件名,Maxsize =

清除SQLServer数据库日志(SqlServer2005)

今天把服务器上的论坛数据库附加到本地,附加过程中就觉得不对劲,速度奇慢,附加完一看,日志文件整整占了23G。必须清除掉,不然太占空间了。上网找了个清除日志的方法。我在清除过程中用了第1,2,3,5步骤,顺利将日志文件BBS_log.ldf从23G变为了1M。 我执行如下: 1.清空日志 DUMP TRANSACTION 库名 WITH NO_LOG 2.截断事务日志: BACKUP LOG 数据库名 WITH NO_LOG 3.收缩数据库文件(如果不压缩,数据库的文件不会减小) 右键数据库->任务->收缩->数据库->确定 4.将数据库设为自动收缩 右键数据库->属性->选项->自动->自动收缩设为True 原文如下: --压缩日志及数据库文件大小 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 7.0,这步只能在查询分析器中进行) a.分离数据库:

数据库事务日志清除操作指南

SQL Server事务日志备份的清除操作指南 事务日志清除目的:SQL Server数据库由一个.mdf文件与.ldf文件组成,mdf 是主数据存储的文件,ldf是数据库日志存储的文件。对于日志文件,因每次SQL 发生的操作(插入、更新、删除)都会把操作日志记录到日志文件中(以备可通过日志还原),因此日志文件每天都会增长(增长速度会明显比mdf文件快,有时一个月没清除就会达到几个G的大小),因此需要对事务日志中已有的历史不活动的日志做清除,以防止数据库ldf文件的无限彭胀。(目前还未用过ldf文件来做恢复的,况且用他恢复也不安全,因此ldf文件中数据可以清除).SQL通过对事务日志备份动作来对不活动的日志进行清除截断。 在定义数据库的事务日志清除前,请先确保Sql server服务器端 Sql Server agent服务是否开启,只有服务器端的Sql Server agent服务开启才能进行如下述的服务库端的自动备份。 第一步:找到需设置事务日志备份的数据库:如lm_hr

点击鼠标右 键先选择”所 第二步:在备份四个选项中,请选择“事务日志”项目 在备份 四个选项中,第三步:选择好“事务日志”之后,点击“添加”按钮

选择好 “事务日 如’备份到’下 方已有指定文 件的路径,请第四步:设置文件名以及选择文件名的存储路径

点击“” 按钮,选择 注意:存储路径最 好不要指向C盘(系 统文件盘),防止系 统重新安装时,文 件被格式化!存放 第五步:设置好文件的存储路径和名称后,点击“确定”

设置好文 件的存储第六步:选择“重写”中的“重写现有媒体”选项 选择“重写现 有媒体”,这种第七步:选择“调度”对日志备份进行时间调度设置

清除数据库日志

清除数据库日志方法 方法一、(注意,此方法必须数据库文件所在的磁盘分区剩余空间足够,不少于1.5G,,如没有达到此项要求,请使用第二种方法) 1.断开后台服务器的网络连接(最好是晚上歇业后)退出系统 2.打开SQL的企业管理器(开始程序Microsoft SQL Server 企业管理器) 3.选中当前所使用的数据库(假设数据库名为kmjxc_pro)右键所有任务,分离数据库,将 数据库分离如下图 步骤一: 步骤二

1.进入SQL数据库安装目录(假设安装在D盘)D:\Program Files\Microsoft SQL Server\MSSQL\Data,找到两个文件kmjxc_pro_Data.MDF和kmjxc_pro_Log.LDF,将kmjxc_pro_Log.LDF改为1kmjxc_pro_Log.LDF,kmjxc_pro_Data.MDF不动 2.附加数据如图示,选中D:\Program Files\Microsoft SQL Server\MSSQL\Data中的kmjxc_pro_Data.MDF 步骤三:

步骤五: 点确定后,系统将提示数据附加成功附加数据成功后,日志文件将被缩减有问题打电话

1. 打开SQL 的查询分析器,选择一个带机器名的服务名 2. 输入安装时的超级管理员密码,点“确定”进入查询分析器主界面 3. 在编辑窗口中输入如下语句 use master dump tran kmjxc with no_log DBCC SHRINKDATABASE (kmjxc, 10) go use kmjxc dump tran master with no_log go 选择带机器名的服务名

SQL 2008清理数据库日志文件

SQL 2008清理数据库日志文件 首先,清理数据库日志文件的脚本是这样的。 Use 数据库名 Select NAME,size From sys.database_files ALTER DATABASE 数据库名SET RECOVERY SIMPLE WITH NO_WAIT ALTER DATABASE 数据库名SET RECOVERY SIMPLE USE 数据库名 DBCC SHRINKFILE(N’日志文件名’,0,TRUNCATEONLY) ALTER DATABASE 数据库名SET RECOVERY FULL WITH NO_WAIT ALTER DATABASE 数据库名SET RECOVERY FULL 其次,需要清理的数据库日志文件有多大,可以在SQL Server Management Studio看到:鼠标右键点击对应的数据库,选择属性,在“文件”这个标签下就能看到日志文件大小。

现在开始清理: 打开SQL Server Management Studio。 连接上数据库服务器后,新建查询。新建查询的方式有两种,结果都是一样的。 第一步:新建查询。 1:右击需要进行清理的数据库,选择“新建查询”。 或者, 2:点击“新建查询”,然后在下方选择需要处理的数据库。

第二步:录入查询脚本。 以打开或者手工录入的形式,将脚本文件内容输入进去。 最后是这样一个情况,请注意左上的数据库名。 第三步:开始清理。 接下来将脚本中的“数据库名”更换为需要清理的数据库的名字。因为我的数据库名字中有特殊字符“-”,所以需要用到“[”“]”。如果您的数据库名称第一位是数字,也需要这么处理。

金蝶K3-每天自动备份数据库和清除LOG方法

MS-SQL每天自动备份数据库每天自动清除log 1、每日自动备份 打开企业管理器,进入“管理”-“数据库维护计划”,在右侧窗口点击右键,选择“新建维护计划”,启动“数据库维护计划向导”;点击“下一步”选择需要维护的数据库,维护特性数据库时,选择最后一个单选框并勾选需要维护的数据库名称;“下一步”选择更新数据优化信息、“下一步”检查数据库完整性、“下一步”指定数据库备份计划、“下一步”指定备份存放位置、“下一步”指定事务日志备份计划、“下一步”指定报表,“下一步”指定历史纪录维护,最后设定维护作业名称;通常来说,如果只需要备份数据库文件,则只需要指定备份计划以及存放位置即可,其他项目不做改动。 在指定备份计划时候,由于需要每日备份,因此要更改调度。点击“更改”编辑调度。发生频率选择每天;每日频率选择作业开始时间,最好选择数据库访问量小时进行,多为半夜时间,可根据流量图确定具体时间;持续时间通常不用做改动,开始日期为编辑日期,无结束日期。 编辑好上述维护计划后,还要注意下 sql server代理服务是否启动了,因为每日调度维护计划是要启动这个服务才能执行的。如果该服务没有启动,需要手动启动一下,这是可以在其子项“作业”中看到刚刚添加过的数据库维护计划。 2、定期自动清理数据库日志文件 数据库日志文件是随着时间增长而增长的,如果长时间不清理,文件会变得特别大,因此需要定期清空,但是日至文件是恢复数据库的重要依据,不用日志文件也是不明智的。手工清除单个数据库的还好说,但数据库多了,或者临时没有来得及清理,可能硬盘空间就会占满了,影响访问。因此设置自动清理数据库日志文件还是比较实用的。 手动清理方法:右键单击需要清理的数据库,选择“属性”,在“选项”卡上,把故障还原模型设定为简单,确定后关闭;再右键单击该数据库,“所有任务”-“收缩数据库”,确认后即可清除日志文件,最后记得重新选择“属性”,将故障还原模型设置为完全。 自动清理方法:同样是利用sql server代理服务,执行自动作业。 打开企业管理器,进入“管理”-“sql server代理服务”-“作业”,在右侧窗口点击右键,选择“新建作业”。“常规”选项卡中,填写作业名称,具体描述,注意所有者最好还是用sa或者默认的管理帐号。 转到“步骤”选项卡,新建作业步骤,填写步骤名称,类型为脚本,数据库为需要清理日志的数据库,在下边命令中填写以下命令:

删除SQL数据库日志文件

SQL数据库日志文件已满,怎么删除 https://www.doczj.com/doc/b18622738.html,/jclking/blog/item/c4f51a030f569b8dd43f7c45.html https://www.doczj.com/doc/b18622738.html,/yx_xie2007/blog/static/102464253201032985419507/ 1.清空日志 DUMP TRANSACTION 库名WITH NO_LOG 2.收缩数据库文件(如果不压缩,数据库的文件不会减小 企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件 --选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了 删除MSSQL中的_log.ldf日志文件 现在网站运行了一段时间,特别是人比较多的网站,相信大家的数据库日志log文件已经相当大了吧。其实这些log文件对于我们普通用户来说是没什么用,上面只是详细的记录了所有对该数据库的每一步操作,实际的数据已经保存到数据库文件中了,所以是不可能有什么回档之类的问题的。以前我们也问过微软的人,据说是如果你的数据库文件坏掉了,有这个他们有办法帮助你恢复数据库,但是由于方法并不公开,所以对于我们来说,这只是占空间的东西。因为原先没觉得这个是问题,所以也没站出来介绍一下,现在看越来越多的朋友问这个问题,就提供一下方法。(这是牺牲以后的服务换来的,但这种服务一般用不上,只要经常备份数据就可以了) 下面是主题了: 1、进入企业管理器,选中数据库,比如it,所有任务->分离数据库。 2、如果数据库正在连接使用,要先点清除,才可以选确定。

db2数据库日志清理(日志归档)

统计并轨二期部署完成后,数据下行数据量较大,数据库日志增长较快,因此近期需要经常对数据库做日志归档操作,以省局数据库为例步骤如下: 1. 以root用户登录数据库服务器(DB2Server) 2. 日志归档操作,此操作只能在备份数据库成功之后执行。如备份不成功,则此部分不能执行。 stma数据库 su – db2admin db2 connect to stma user db2admin using db2admin db2 get db cfg | grep -E 'First active log file' 记录下首活动日志名S00*****.LOG,之后 db2 prune logfile prior to S00*****.LOG db2 connect reset rone数据库 db2 connect to rone user db2admin using db2admin db2 get db cfg | grep -E 'First active log file' 记录下首活动日志名S00*****.LOG,之后 db2 prune logfile prior to S00*****.LOG db2 connect reset roeee数据库 db2 connect to roeee user db2admin using db2admin db2 get db cfg | grep -E 'First active log file' 记录下首活动日志名S00*****.LOG,之后 db2 prune logfile prior to S00*****.LOG db2 connect reset datacdb数据库 db2 connect to datacdb user db2admin using db2admin db2 get db cfg | grep -E 'First active log file' 记录下首活动日志名S00*****.LOG,之后 db2 prune logfile prior to S00*****.LOG db2 connect reset stmadc数据库

SQL Server2000数据库日志文件安全清除方法

SQL Server2000数据库日志文件安全清除方法! 2013-05-05 11:01:17 标签:数据库安全 原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处、作者信息和本声明。否则将追究法律责任。 https://www.doczj.com/doc/b18622738.html,/950271/1193300 方法如下: 1.首先请一定要备份数据库(要减小或清除日志文件的数据库) 2.在数据库上点鼠标右键,选择并打开"属性"窗口,找到"选项"一栏,将故障还原里的"完全"改为"简单"。如下图: 选择“简单”后,直接“确定”关闭窗口。 3.在数据库上点右键,选择"所有任务"中的"收缩数据库",如下图:

4.上图中,点右下角的"文件"按钮,打开窗口后在右上角选择数据库文件为"xxxxxx_log",如下图: 5.选择好xxxxx_log文件后,其他选项保持默认,点“确定”,等待收缩结束。

结束后会有提示消息,此时可以关闭相关窗口。回到存放数据库的目录中,可以看到该数据库日志文件已经明显变小了,如下图: <收缩前大小>: <收缩后大小>: 经过查看日志文件大小,说明该数据库日志文件内容已经安全的清除了!!!~~ 6、收缩操作完成后,务必参照“第二步”,将“故障还原”模型重新改为"完全"! 其他的一些可选操作: 1、新建一个数据库时(也可以是已建立的数据库),最好事先限制日志文件的增长大小及增长方式,如下图: 这里的相关设置根据数据库的应用情况有很大区别,一般将日志文件的“最大文件大小”设为 1G(1024MB)比较合适。当然,这个没有固定的标准,随便了。 另外,建议定期查看日志文件的大小,有需要时就进行一次数据库收缩操作!这真的是一个很好的习惯和操作方法!~

SQL SERVER 自动清除日志文件方法

SQL Server自动备份清除日志文件 一、自动备份数据库日志 打开企业管理器,进入“管理”-“数据库维护计划”,在右侧窗口点击右键,选择“新建维护计划”,启动“数据库维护计划向导”;点击“下一步”选择需要维护的数据库,维护特性数据库时,选择最后一个单选框并勾选需要维护的数据库名称;“下一步”选择更新数据优化信息、“下一步”检查数据库完整性、“下一步”指定数据库备份计划、“下一步”指定备份存放位置、“下一步”指定事务日志备份计划、“下一步”指定报表,“下一步”指定历史纪录维护,最后设定维护作业名称;通常来说,如果只需要备份数据库文件,则只需要指定备份计划以及存放位置即可,其他项目不做改动。 在指定备份计划时候,由于需要每日备份,因此要更改调度。点击“更改”编辑调度。发生频率选择每天;每日频率选择作业开始时间,最好选择数据库访问量小时进行,多为半夜时间,可根据流量图确定具体时间;持续时间通常不用做改动,开始日期为编辑日期,无结束日期。 编辑好上述维护计划后,还要注意下sql server代理服务是否启动了,因为每日调度维护计划是要启动这个服务才能执行的。如果该服务没有启动,需要手动启动一下,这是可以在其子项“作业”中看到刚刚添加过的数据库维护计划。 二、定期自动清理数据库日志文件 数据库日志文件是随着时间增长而增长的,如果长时间不清理,文件会变得特别大,因此需要定期清空,但是日至文件是恢复数据库的重要依据,不用日志文件也是不明智的。手工清除单个数据库的还好说,但数据库多了,或者临时没有来得及清理,可能硬盘空间就会占满了,影响访问。因此设置自动清理数据库日志文件还是比较实用的。 手动清理方法:右键单击需要清理的数据库,选择“属性”,在“选项”卡上,把故障还原模型设定为简单,确定后关闭;再右键单击该数据库,“所有任务”

K3上机日志清除使用

上机日志清除 本期概述 ●本文档适用于 K/3所有版本上机日志模块 ●本文档针对上机日志清除功能进行讲解,通过本文档的学习可以了解机日志清除使 用功能和具体操作步骤 版本信息 ●2014年03月23日 V1.0 编写人:刘震 ●2014年03月31日 V2.0 修改人:曹磊 ●2014年04月28日 V3.0 修改人:袁媛 版权信息 ●本文件使用须知 著作权人保留本文件的内容的解释权,并且仅将本文件内容提供给阁下个人使用。对于内容中所含的版权和其他所有权声明,您应予以尊重并在其副本中予以保留。您不得以任何方式修改、复制、公开展示、公布或分发这些内容或者以其他方式把它们用于任何公开或商业目的。任何未经授权的使用都可能构成对版权、商标和其他法律权利的侵犯。如果您不接受或违反上述约定,您使用本文件的授权将自动终止,同时您应立即销毁任何已下载或打印好的本文件内容。 著作权人对本文件内容可用性不附加任何形式的保证,也不保证本文件内容的绝对准确性和绝对完整性。本文件中介绍的产品、技术、方案和配置等仅供您参考,且它们可能会随时变更,恕不另行通知。本文件中的内容也可能已经过期,著作权人不承诺更新它们。如需得到最新的技术信息和服务,您可向当地的金蝶业务联系人和合作伙伴进行咨询。 著作权声明著作权所有 2014 金蝶软件(中国)有限公司。 所有权利均予保留。

目录 1. 功能简介 (3) 2. 应用背景 (3) 3. 日志删除 (5) 3.1 K/3主控台操作 (5) 3.2 账套管理操作 (7) 3.3 后台手工删除 (8)

1. 功能简介 K/3系统记录用户日常操作信息的日志称之为上机日志。通过上机日志功能,管理人员可以查看到详细的用户登录和业务操作情况,包括用户名称,详细的操作内容,执行操作的系统时间和客户端机器等信息,便于对系统的运行情况进行监控,确保数据的安全性。 2. 应用背景 系统记录用户对账套数据执行的增、删、改等关键性操作,以及日常登录等信息,随着账套使用时间的推移,对应日志记录信息也会逐渐增加,如果不对其进行清理,庞大的数据量必将直接影响到系统的操作性能,但如果系统自动删除日志记录,系统维护人员将无法进行有效的监管。结合以上两个方面,当日志信息达到一定的数量时,系统应当给予适当控制。 K/3系统提供上机日志预警值设置,当系统日志超过预设的条数时,系统登录或执行业务操作时就会弹出预警提示消息,如图-1所示。 图-1 上机日志超出系统预警提示 系统参数预警值设置需要先登录【账套管理】功能,打开【系统】菜单下的【系统参数设置】,在【日志管理】参数列表中勾选参数“上机日志记录数超过预设值时,客户端登录给予提示”,并在“上机日志记录提示数(万):”字段中输入预警值,分别如图-2、图-3所示。

SQL Server 2008 日志文件清除操作步骤

SQL Server 2008 日志文件清除操作步骤: 一、登录SQLServere企业管理器 二、选中需要日志清除的数据库,打开清除日志的SQL脚本文件,执行选中的蓝色阴影部分代码,数据库将在“简单模式”下进行清除日志动作。 (圈内改成相应的数据库名、日志文件名)

三、如不清楚日志文件名可执行涂色选中部分这段代码查询 四、执行完清除日志后将数据库还原为“完全模式” 五、SQL代码 -- 在SQL2008中清除日志就必须在简单模式下进行,等清除动作完毕再调回到完全模式。USE[master]

GO ALTERDATABASE ChinaLZY SETRECOVERYSIMPLEWITH NO_WAIT GO ALTERDATABASE ChinaLZY SETRECOVERYSIMPLE--简单模式 GO USE ChinaLZY GO DBCC SHRINKFILE(N'Amodel_log', 11,TRUNCATEONLY) GO -- '这里的Amodel_Log 如果不知道在sys.database_files里是什么名字的话,可以用以下注释的语句进行查 USE ChinaLZY GO SELECT file_id,name FROM sys.database_files; GO --还原为完全模式 USE[master] GO ALTERDATABASE ChinaLZY SETRECOVERYFULLWITH NO_WAIT GO ALTERDATABASE ChinaLZY SETRECOVERYFULL--还原为完全模式 GO

清除数据库日志

1. 打开SQL 的查询分析器,选择一个带机器名的服务名 2. 输入安装时的超级管理员密码,点“确定”进入查询分析器主界面 3. 在编辑窗口中输入如下语句 use master dump tran 数据库名 with no_log DBCC SHRINKDATABASE (数据库名, 10) go use 数据库名 dump tran master with no_log go 选择带机器名的服务名

4.点击“执行”按钮,提示完成后关闭查询分析器 5.打开SQL的企业管理器,展开至数据库列表,在需要减小的数据库图标上点右键,在 弹出菜单中选择“所有任务-收缩数据库”(如下图所示); 6.在弹出窗口中直接点确定按钮,系统提示收缩成功(如上图所示)。 以上操作用来清除数据库本身的日志,对使用本软件的操作日志不会有影响,系统每使用一段时间后都可以做一次这样的操作,可以减小数据库所占空间,也可加快其响应速度 点击执行

网上收集的其它方法 SQL SERVER日志清除的两种方法 日期:2004年8月3日作者:动网收集整理人气:1302 今日:1 [大中小] 方法一 一般情况下,SQL数据库的收缩并不能很大程度上减小数据库大小,其主要作用是收缩日志大小,应当定期进行此操作以免数据库日志过大 1、设置数据库模式为简单模式:打开SQL企业管理器,在控制台根目录中依次点开Microsoft SQL Server-->SQL Server组-->双击打开你的服务器-->双击打开数据库目录-->选择你的数据库名称(如论坛数据库Forum)-->然后点击右键选择属性-->选择选项-->在故障还原的模式中选择“简单”,然后按确定保存 2、在当前数据库上点右键,看所有任务中的收缩数据库,一般里面的默认设置不用调整,直接点确定 3、收缩数据库完成后,建议将您的数据库属性重新设置为标准模式,操作方法同第一点,因为日志在 一些异常情况下往往是恢复数据库的重要依据 方法二 SET NOCOUNT ON DECLARE @LogicalFileName sysname, @MaxMinutes INT, @NewSize INT USE tablename -- 要操作的数据库名 SELECT @LogicalFileName = 'tablename_log', -- 日志文件名 @MaxMinutes = 10, -- Limit on time allowed to wrap log. @NewSize = 1 -- 你想设定的日志文件的大小(M) -- Setup / initialize DECLARE @OriginalSize int SELECT @OriginalSize = size FROM sysfiles WHERE name = @LogicalFileName SELECT 'Original Size of ' + db_name() + ' LOG is ' + CONVERT(VARCHAR(30),@OriginalSize) + ' 8K pages or ' + CONVERT(VARCHAR(30),(@OriginalSize*8/1024)) + 'MB' FROM sysfiles WHERE name = @LogicalFileName CREATE TABLE DummyTrans (DummyColumn char (8000) not null)

相关主题
文本预览
相关文档 最新文档