A. sql server 2005 如何实现对表数据进行定期删除
//1.你创建一个insert触发器,每当数据插入的时候判断一下是不是有你要删除的数据。
//2.你还可以创建一个存储过程,然后再做一个作业任务,让 sql server 每多长时间删除一次。
下面给出的是第一种办法的insert触发器,不过这样每次insert 他都会执行一次,对数据库有点耗资源
create TRIGGER Trigger1
ON dbo.users
FOR insert
AS
Begin
declare @mintime datetime,@maxtime datetime
select @mintime =min(时间),@maxtime =max(时间) from Alarm
delete from Alarm where DATEDIFF(d,@mintime ,@maxtime )>=7
End
B. 数据库定时备份及删除
首先利用数据库自带的命令行工具将数据库备份下来,例如对MySQL将databasename数据库备份到D:\data.sql(具体查阅数据库说明书)
mysqlmp databasename > "D:\data.sql"
然后将该文件以日期参量重名名。如果指定保留N天的数据可能有一定困难,不过既然要求7天,不妨以星期作为区分。
假设文件名具有格式“data_日期.sql”,则更名语句为(建议先创建后改名,对于很大的数据库可能要备份很长时间并超过0点)
ren "data.sql" "data_%date%.sql"
若系统时间格式为“2009-04-05 星期日”,则产生文件“data_2009-04-05 星期日.txt”。
获取星期几的语句:%date:~11,3%
其中11表示从第11个字符开始(从0开始计算),总共截取3个字符。由此可获得字符串“星期日”。重名名前,删除以data_开头,包含“星期日”的文件
del "data_*%date:~11,3%*.sql"
这样就把上星期的那个文件删除了。
注意:如果系统日期格式与上面的不一致,数字需重新计算,特别是若日期中含有“/”、“:”等字符会导致创建文件失败,此时年月日星期均需手动提取,例如对“04/05/2009 Sun”,应使用“%DATE:~6,4%%DATE:~0,2%%DATE:~3,2%%DATE:~11,3%”得到“20090405Sun”。查看日期格式可使用“echo %date%”。
另外,如果某项(时间格式、文件名、路径等)包含空格则必须使用引号。
脚本源代码
mysqlmp databasename > "D:\data.sql"
del "D:\data_*%date:~11,3%*.sql"
ren "D:\data.sql" "data_%date%.sql"
编为一个bat文件,添加计划任务,每天定时执行即可。
C. 如何实现sql server 2012 express 自动备份及删除指定日期的旧备份文件
1.需要启动服务Sql Server Agent(sql server 代理)
2.新建作业,名称为backupDatabase
3.选择步骤,点击“新建”,输入步骤名称,选择需要备份的数据库,然后再命令中写上:
D. SQL数据库定期备份,数据非常庞大需每天进行备份,然后删除原有数据,该怎么备份啊
sql2000还是2005
2000的http://wenku..com/view/c92f436a1eb91a37f1115c76.html
2005的http://wenku..com/view/66ad28d0360cba1aa811dae7.html
希望对你有帮助
E. 我想把sql实现每天6个小时自动备份一次,自动删除3天以前的备份,请问如何做,最好能截图,这些
用企业管理器中自带的维护计划功能可以设置每天几点备份 建立两个维护计划。也可以隔多长时间备份一次。 但是设置的那台机器必须开机并且SQL Agent 这个服务器开启着自动备份: 打开企业管理器,点击数据库,然后点击上方的工具-数据库维护计划器,如何设置SQL数据库自动备份1、打开企业管理器,在控制台根目录中依次点开Microsoft SQL Server-->SQL Server组-->双击打开你的服务器,选择 所要备份的数据库2、然后点上面菜单中的工具-->选择数据库维护计划器3、下一步选择要进行自动备份的数据-->下一步更新数据优化信息,这里一般不用做选择-->下一步检查数据完整性,也一般不选择4、下一步指定数据库维护计划,默认的是1周备份一次,点击更改选择每天备份后点确定5、 下一步指定备份的磁盘目录,选择指定目录,如您可以在D盘新建一个目录如:d:\databak,然后在这里选择使用此目录,然后选择删除早于多少天前的备份,一般设定4-7天,备份文件扩展名默认的是BAK6、下一步指定事务日志备份计划,默认-->下一步要生成的报表,一般不做选择-->下一步维护计划历史记录,最好用默认的选项-->下一步完成7、完成后系统很可能会提示Sql Server Agent服务未启动,先点确定完成计划设定,然后找到桌面最右边状态栏中的SQL绿色图标,双击点开,在服务中选择Sql Server Agent,然后点击运行箭头,选上下方的当启动OS时自动启动服务F. sql server数据库定期备份,怎么才可以在下一次数据备份后删除前一次的数据备份
大概思路是这样的:
一先在SQL里面做一个定期的自动备份。当然可以做一周对应的DAY01、DAY02~这样的表示星期一的,星期二的。定期备份还设置成相对应的星期
二、做一个文件检测判断;看今天的对应星期几那个文件存在不,如果存在可以删除其它的;否则保留今天的上一天那个最近的文件。
G. Linux下mysql数据库如何定期备份与删除
首先,创建备份文件夹mkdir /mysql/mysqldata_bakeup;创建并编辑文件在路径 /usr/sbin/bakmysql,命令:vi /usr/sbin/bakmysql。此时会在/usr/sbin/路径下创建bakmysql文件,并进入bakmysql编辑状态,接着输入;fn = ` date +%Y%m%d ` tar zcvf /mysql/mysqldata_bakeup/mysql$fn.tar.gz /mysql/data 然后修改文件bakmysql属性,使其可执行chmod +x /usr/sbin/bakmysql 修改/etc/crontab vi /etc/crontab 进入编辑状态,在最下面添加:01 3 * * * root /usr/sbin/bakmysql
01 3 是每天凌晨3:01执行 bakmysql文件;懂了吗?