如何清理SQL Server中的事务日志

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

内部技术资料
如何清理SQL Server中的
事务日志
第1页
目录
第一章如何手动清理数据库的事务日志 (3)
1.1 运行SQL Server 2000中的工具“查询分析器” (3)
1.2 加载SQL语句 (4)
1.3 执行SQL语句 (6)
第二章如何自动清理数据库的事务日志 (8)
2.1 运行SQL Server 2000 “企业管理器”中的“SQL Server 代理” (8)
2.2 新建一个“作业” (9)
2.3 设定“作业”的执行内容 (10)
2.4 设定“作业”的执行周期 (13)
注:
⏹SQL Server数据库在使用过程中,日志文件会不断增大,日志文件一旦过大会造
成系统性能的明显下降,故,在使用过程中,按照下列方法可以清理日志文件。

⏹本文中的SQL Server数据库以某项目上正在使用的数据库为例。

该数据库进行大
量的数据交换,事务日志文件平均每天增加5~10Mb。

⏹本文中所有的操作均在服务器端进行,操作系统为Microsoft Windows 2000
Server,SQL Server的版本为Microsoft SQL Server 2000 Enterprise Edition。


据库有两个,名称为JDDW3800和JDDW3800Para。

⏹本文中针对数据库的清理操作仅针对数据库JDDW3800,而不包括
JDDW3800Para。

如果需要清理数据库JDDW3800Para,请仿照本文进行操作。

⏹在本文中,清理数据库JDDW3800的SQL文件名称为
“LogShrink_JDDW3800.sql”,清理数据库JDDW3800Para的SQL文件名称为
“LogShrink_JDDW3800Para.sql”。

⏹在本文中SQL Server实例的名称为“SPRINY”。

第一章如何手动清理数据库的事务日志
手动清理事务日志的总体步骤如下:
1)运行SQL Server 2000中的工具“查询分析器”。

2)加载SQL语句
3)执行SQL语句
手动清理事务日志的详细步骤如下:
1.1 运行SQL Server 2000中的工具“查询分析器”
步骤一:运行“开始”->“程序”->“Microsoft SQL Server”->“查询分析器”。

步骤二:弹出窗口如下。

在上侧的“SQL Server”下拉框中选择要连接的SQL Server(本例中为“SPRINY”),在下侧输入用户名密码(本例中用户密码均为“JDDW_manager”)。

点击“确定”按钮。

步骤三:登陆成功后,弹出如下窗口,在窗口上方工具栏中的下拉框中确认已经连接到数据库“JDDW3800”。

(注:如需要连接到数据库JDDW3800Para,请在下拉框中选择JDDW3800Para一项)
1.2 加载SQL语句
步骤一:在窗口的菜单中,选择“文件”->“打开”,打开“打开查询文件”对话框。

步骤二:选择SQL文件“LogShrink_JDDW3800.sql”,该文件所在的文件夹路径为“E:\Program Files\Microsoft SQL Server\MSSQL\Data”。

点击“打开”按钮。

(注:如需要对数据库JDDW3800Para的事务日志进行清理,请打开SQL文件“LogShrink_JDDW3800.sql”,执行里面的SQL语句。

该文件所在的文件夹路径为“E:\Program Files\Microsoft SQL Server\MSSQL\Data”。


步骤三:执行收缩事务日志的SQL语句会显示在打开的子窗口中。

其中橘红色方框选中的内容,是需要收缩的事务日志文件,该文件名称必需和数据库的事务日志文件名称保持一致。

方框后面紧跟的参数为收缩后日志文件的大小。

1.3 执行SQL语句
步骤一:确认语句无误后,点击工具栏上绿色的三角形按钮,执行该SQL语句。

步骤二:SQL语句成功之行后,在下图的橘红色方框内会看到相关执行结果
至此,数据库JDDW3800的事务日志文件已被手动清除。

建议每一个月,手动清理一次事务日志。

第二章如何自动清理数据库的事务日志
自动清理事务日志的总体步骤如下:
1)运行SQL Server 2000 “企业管理器”中的“SQL Server 代理”
2)新建一个“作业”
3)设定“作业”的执行内容
4)设定“作业”的执行周期
自动清理事务日志的功能是依靠SQL Server 2000自身的“SQL Server代理”来完成的,“SQL Server代理”会根据要求,定期自动对数据库进行维护操作,执行SQL语句。

所以,为了实现自动清理事务日志的功能,我们可以在“SQL Server代理”中建议一个“作业”,设定该“作业”每一个月自动清理一次事务日志,从而实现数据库维护的简化。

自动清理事务日志的详细步骤如下:
2.1 运行SQL Server 2000 “企业管理器”中的“SQL Server 代理”
步骤一:运行“开始”->“程序”->“Microsoft SQL Server”->“企业管理器”。

步骤二:在“企业管理器”的主窗口左侧的“控制台根目录”视图中依次选择“Microsoft SQL Servers”->“SQL Server 组”->“SPRINY”->“管理”->“SQL Server 代理”->“作业”。

2.2 新建一个“作业”
步骤一:使用鼠标右键点击右侧窗口,弹出快捷菜单。

步骤二:在上图中弹出的快捷菜单中选择“新建作业”。

弹出“创建作业属性”对话框,输入作业的名称“自动清理JDDW3800的事务日志”。

2.3 设定“作业”的执行内容
步骤一:在“创建作业属性”对话框中选择“步骤”标签页,如下图。

步骤二:点击“新建”按钮,弹出“创建作业步骤”对话框。

在“步骤名”一栏中给该步骤命名为“清理事务日志”
步骤三:在“数据库”一栏中选择数据库为“JDDW3800”。

(注:如需要连接到数据库JDDW3800Para,请在下拉框中选择JDDW3800Para一项)
步骤四:点击“打开”按钮,弹出“打开TSQL 文件”对话框。

选择SQL文件“LogShrink_JDDW3800.sql”,该文件所在的文件夹路径为“E:\Program Files\Microsoft SQL Server\MSSQL\Data”。

点击“打开”按钮,回到“创建作业步骤”对话框。

(注:如需要对数据库JDDW3800Para的事务日志进行清理,请打开SQL文件“LogShrink_JDDW3800.sql”,执行里面的SQL语句。

该文件所在的文件夹路径为“E:\Program Files\Microsoft SQL Server\MSSQL\Data”。


步骤五:如同1.2章节中的步骤三,执行收缩事务日志的SQL语句会显示在“命令”文本框中。

其中橘红色方框选中的内容,是需要收缩的事务日志文件,该文件名称必需和数据库的事务日志文件名称保持一致。

方框后面紧跟的参数为收缩后日志文件的大小。

步骤六:确认无误后,点击上图中的“确定”按钮,回到“创建作业属性”对话框。

2.4 设定“作业”的执行周期
步骤一:在“创建作业属性”对话框中选择“调度”标签页,如下图。

步骤二:点击“新建调度”按钮,弹出“新建作业调度”对话框。

在“名称”框中输入作业名称“定期清理事务日志”。

步骤三:选择上图中的“反复出现”单选钮,然后点击“更改”按钮,弹出“编辑反复出现的作业调度”对话框。

设定作业调度的执行周期为每月一次发生在1号的2点05分,开始日期起当前日期,并设定为“无结束日期”。

点击“确定”按钮,回到“创建作业调度”对话框。

步骤四:在“创建作业调度”对话框中点击“确定”按钮,回到“创建作业属性”对话框。

在列表中可以看到已经建立好的调度。

点击“确定”按钮完成作业属性的设置。

步骤五:此时,在右侧的窗口中可以看到刚刚创建好的作业。

双击改作业可以对上述设定进行更改。

(按照同样的操作过程,可以定义针对数据库JDDW3800Para的清理的作业)
至此,自动清理事务日志的功能设置完成。

相关文档
最新文档