MSsql每天自动备份数据库并每天自动清除log的脚本

1、每日自动备份

  打开企业管理器,进入“管理”-“数据库维护计划”,在右侧窗口点击右键,选择“新建维护计划”,启动“数据库维护计划向导”;点击“下一步”选择需要维护的数据库,维护特性数据库时,选择最后一个单选框并勾选需要维护的数据库名称;“下一步”选择更新数据优化信息、“下一步”检查数据库完整性、“下一步”指定数据库备份计划、“下一步”指定备份存放位置、“下一步”指定事务日志备份计划、“下一步”指定报表,“下一步”指定历史纪录维护,最后设定维护作业名称;通常来说,如果只需要备份数据库文件,则只需要指定备份计划以及存放位置即可,其他项目不做改动。

  在指定备份计划时候,由于需要每日备份,因此要更改调度。点击“更改”编辑调度。发生频率选择每天;每日频率选择作业开始时间,最好选择数据库访问量小时进行,多为半夜时间,可根据流量图确定具体时间;持续时间通常不用做改动,开始日期为编辑日期,无结束日期。

  编辑好上述维护计划后,还要注意下 sql server代理服务是否启动了,因为每日调度维护计划是要启动这个服务才能执行的。如果该服务没有启动,需要手动启动一下,这是可以在其子项“作业”中看到刚刚添加过的数据库维护计划。

  2、定期自动清理数据库日志文件

  数据库日志文件是随着时间增长而增长的,如果长时间不清理,文件会变得特别大,因此需要定期清空,但是日至文件是恢复数据库的重要依据,不用日志文件也是不明智的。手工清除单个数据库的还好说,但数据库多了,或者临时没有来得及清理,可能硬盘空间就会占满了,影响访问。因此设置自动清理数据库日志文件还是比较实用的。

  手动清理方法:右键单击需要清理的数据库,选择“属性”,在“选项”卡上,把故障还原模型设定为简单,确定后关闭;再右键单击该数据库,“所有任务”-“收缩数据库”,确认后即可清除日志文件,最后记得重新选择“属性”,将故障还原模型设置为完全。

  自动清理方法:同样是利用sql server代理服务,执行自动作业。

  打开企业管理器,进入“管理”-“sql server代理服务”-“作业”,在右侧窗口点击右键,选择“新建作业”。“常规”选项卡中,填写作业名称,具体描述,注意所有者最好还是用sa或者默认的管理帐号。

  转到“步骤”选项卡,新建作业步骤,填写步骤名称,类型为脚本,数据库为需要清理日志的数据库,在下边命令中填写以下命令:

  DUMP TRANSACTION 数据库名称 WITH NO_LOG

  DBCC SHRINKFILE(数据库日志文件名,1)

  上边的数据库名称填写需要维护的数据库名称,数据库日志文件名填写其对应的日志文件名,注意,不是资源管理器里看到的带后缀名的那个名字,而是企业管理器里,数据库属性里日志选项卡中日志的名字(通常也只是差一个后缀名……),确定后添加一个作业步骤。 如果需要维护多个数据库,用上述方法重复添加作业步骤,注意每个步骤成功或失败后的动作即可,最后选择一下开始的步骤。

  在“调度”选项卡中,类似备份的维护计划,填写调度周期,即定期清理的周期,不再细述。如果需要,可以在最后的“通知”选项卡上设置作业完成后的通知项,需要设置操作员,以及设置相应的服务,这里也不具体说明了,通常不用……

时间: 2024-11-01 23:14:16

MSsql每天自动备份数据库并每天自动清除log的脚本的相关文章

MSsql每天自动备份数据库并每天自动清除log的脚本_MsSql

1.每日自动备份 打开企业管理器,进入"管理"-"数据库维护计划",在右侧窗口点击右键,选择"新建维护计划",启动"数据库维护计划向导";点击"下一步"选择需要维护的数据库,维护特性数据库时,选择最后一个单选框并勾选需要维护的数据库名称;"下一步"选择更新数据优化信息."下一步"检查数据库完整性."下一步"指定数据库备份计划."下一步&q

Linux定时自动备份数据库并上传至FTP的脚本

适用于使用lnmp环境下定时自动备份网站和mysql数据库并上传至FTP:  代码如下 复制代码 •#!/bin/bash •MYSQL_USER=root •MYSQL_PASS=root •FTP_USER=ftp •FTP_PASS=123456 •FTP_IP=www.is36.com •FTP_backup=/public_html/ •WEB_DATA=/home/wwwroot/ • •DataBakName=Data_$(date +"%Y%m%d").tar.gz •

SQL Server 2008、SQL Server 2008R2 自动备份数据库

让SQL Server 2008自动备份数据库,需要建立一个SQL Server作业,并启动SQL Server代理,使该作业定期运行. 具体来说,可以按以下步骤进行: 一.打开SQL Server Management Studio,在对象资源管理器中,确认SQL Server代理已启动,若没有,右击SQL Server代理节点,点击"启动". 二.展开SQL Server 代理节点,在其下的作业文件夹上右击,选择"新建作业". 三.在弹出的"新建作业&

sql server中一句实现自动备份数据库脚本

由于sqlserver很智能化了我们只需要一句就可以实现sql server自动备份数据库了.  代码如下 复制代码 BACKUP DATABASE [SiteWeaver] TO DISK = N'E:workbackupdatabaseSiteWeaver.bak' WITH NOFORMAT, INIT, NAME = N'SiteWeaver-完整 数据库 备份', SKIP, NOREWIND, NOUNLOAD, STATS = 10 GO

centos下Oracle自动备份数据库步骤

**环境说明** Oracle数据库服务器 操作系统:CentOS IP:192.168.150.214 端口:1521 SID:orcl Oracle数据库版本:Oracle11gR2 用户:ts 密码:ts **详细的操作步骤如下** 1.root用户登录服务器 {{{ mkdir -p /backup/oracledata #新建Oracle数据库备份目录 chown -R oracle:oinstall /backup/oracledata -R #设置目录权限为oinstall用户组的

mysql使用mysqldump定时自动备份数据库

使用mysqldump定时自动备份数据库  代码如下 复制代码 [root@www www]# vi backup-db.sh #!/bin/sh /bin/nice -n 19 /usr/bin/mysqldump -u vpsmysql --password=vpsmysqlpassword mysqlname -c | /bin/nice -n 19 /bin/gzip -9 > /web/www/db-backup/vps-$(date '+%Y%m%d').sql.gz rm -

linux下mysql自动备份数据库与自动删除临时文件_Mysql

一.每日23:00自动删除临时文件 首先查看一下crontab的任务列表:crontab -l然后新建:crontab -e添加一行:00 03 * * * rm -rf /www/cmstest/my120/public/scripts/jpgraph/*保存退出.重启服务:  /etc/rc.d/init.d/crond restart 二.每日24:00自动备份数据库 利用系统crontab来定时执行备份文件,按日期对备份结果进行保存,达到备份的目的. 1.创建保存备份文件的路径/mysq

mysql定时自动备份数据库脚本代码(linux/windows)

操作步骤: 方法一 1.安装p7zip:由于源里面没有此包,直接下载源码安装. 地址:http://p7zip.sourceforge.net/  代码如下 复制代码 wget http://sourceforge.net/projects/p7zip/files/p7zip/9.20.1/p7zip_9.20.1_src_all.tar.bz2 tar xvf p7zip_9.20.1_src_all.tar.bz2 cd p7zip_9.20.1_src_all make && mak

exp自动备份数据库的脚本

自动备份数据库的脚本 最近应开发人员的要求,将以前的自动备份的脚本又做了修改: 简要介绍如下: 功能: 将oracle_backup.bat命令加入windows的任务后,就可以实现用exp自动备份oracle数据库. 说明: 最新备份的数据库在backup目录下,上一次备份存放在Old_backup目录下,每次备份前,都会先删除 Old_backup中的文件,然后将上一次的备份数据拷贝到Old_backup目录中,最后才进行备份. 使用方法: 下载后将其解压到任何一个目录.看'说明手册.txt