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文件;懂了嗎?