男人插曲女人身体视频,中文字幕日韩一区二区三区不卡,中国gay男男gaygay视频,一本色道婷婷久久欧美,中文字幕永久视频在线看

如何在文件名中備份帶有日期的 SQL 數(shù)據(jù)庫?

 

我正在創(chuàng)建一個 SQL 查詢腳本來備份數(shù)據(jù)庫,我做得很好。但現(xiàn)在我被要求在 .bak 文件的末尾添加日期和時間戳。關(guān)于如何完成的任何想法?

通常您可以在使用 SSMS GUI 或 T-SQL 備份數(shù)據(jù)庫時自己指定文件名。但是如果有大量的數(shù)據(jù)庫,或者你想定期執(zhí)行備份任務(wù)并保留不同版本的bak文件(例如,在SQL Server中創(chuàng)建具有唯一名稱的每日數(shù)據(jù)庫備份。),您可能需要一種更自動化和更智能的方式實現(xiàn)文件名中備份帶有日期的 SQL 數(shù)據(jù)庫。

為此,最常用的方法是使用有效的 T-SQL 腳本?;蛘撸梢允褂眉泄芾砉ぞ邅韺崿F(xiàn)SQL Server中創(chuàng)建具有唯一名稱的每日數(shù)據(jù)庫備份。

繼續(xù)閱讀并選擇您喜歡的方式:

文件名中帶有日期的 SQL 備份命令(一個數(shù)據(jù)庫)

要備份一個帶有日期的特定 SQL數(shù)據(jù)庫,您可以使用文件名中帶有日期的 SQL 備份命令,例如:

DECLARE @FileName varchar(1000)
SELECT @FileName = (SELECT 'filepath\databasename' + convert(varchar(500), GetDate(),112) + '.bak')
BACKUP DATABASE databasename TO DISK=@FileName

填寫您自己的備份路徑和數(shù)據(jù)庫名稱,并將腳本復(fù)制到新的查詢窗口。執(zhí)行后,您將獲得一個名稱由數(shù)據(jù)庫和備份日期組成的 bak 文件。

帶日期的備份數(shù)據(jù)庫

用于備份所有 SQL數(shù)據(jù)庫并將日期添加到文件名的腳本

在很多情況下,您可能希望備份的不僅僅是一兩個數(shù)據(jù)庫,而是一個實例的所有數(shù)據(jù)庫,那么以下腳本可以為您節(jié)省大量時間:

DECLARE @name VARCHAR(50) -- database name 
DECLARE @path VARCHAR(256) -- path for backup files 
DECLARE @fileName VARCHAR(256) -- filename for backup 
DECLARE @fileDate VARCHAR(20) -- used for file name
 
-- specify database backup directory e.g. 'D:\backup\'
SET @path = 'backuppath'
 
-- specify filename format
SELECT @fileDate = CONVERT(VARCHAR(20),GETDATE(),112) + '_' + REPLACE(CONVERT(VARCHAR(20),GETDATE(),108),':','')
 
DECLARE db_cursor CURSOR READ_ONLY FOR 
SELECT name
FROM master.sys.databases
WHERE name NOT IN ('master','model','msdb','tempdb')  -- exclude these databases
AND state = 0 -- database is online
AND is_in_standby = 0 -- database is not read only for log shipping
 
OPEN db_cursor
FETCH NEXT FROM db_cursor INTO @name
 
WHILE @@FETCH_STATUS = 0
BEGIN
   SET @fileName = @path + @name + '_' + @fileDate + '.BAK'
   BACKUP DATABASE @name TO DISK = @fileName
 
   FETCH NEXT FROM db_cursor INTO @name
END
 
CLOSE db_cursor
DEALLOCATE db_cursor

執(zhí)行該命令,它將在SQL備份文件名中添加日期。您還可以排除您不想備份的其他數(shù)據(jù)庫。

用日期備份所有數(shù)據(jù)庫

如何使用文件名中的日期安排 SQL 備份?

現(xiàn)在您已經(jīng)知道如何執(zhí)行 SQL 備份并將日期添加到文件名。這是另一種可能的情況:您希望自動化操作,例如在SQL Server中創(chuàng)建具有唯一名稱的每日數(shù)據(jù)庫備份,但僅使用腳本很難實現(xiàn)這一點。因此,您可以使用SQL Server代理。

使用此工具,您可以為某些 T-SQL 命令添加計劃,但請注意,它僅在SQL Server的非 Express 版本中可用。

1. 確保啟用了SQL Server代理,否則,您需要右鍵單擊它并“啟動”它。然后選擇New > 作業(yè)...開始。

sql server 代理

2. 在“步驟”選項卡中,單擊新建...并輸入“步驟名稱”。然后您可以將您想要自動化的腳本復(fù)制到“命令”部分,然后單擊“確定”進(jìn)行確認(rèn)。

3. 現(xiàn)在移動到“定時任務(wù)”s選項卡,單擊“新建”為您剛剛輸入的備份腳本設(shè)置新的計劃。

添加時間表

4. 單擊“確定”創(chuàng)建作業(yè)。然后您可以在SQL Server 代理 > “作業(yè)”下找到新作業(yè),然后選擇“作業(yè)開始步驟”立即對其進(jìn)行測試。

如前所述,SQL Server 代理不適用于 Express 版本。如果這是你的情況,也許你可以嘗試批處理文件和 Windows 任務(wù)計劃程序的組合。

打開您的文本編輯器,將備份命令復(fù)制到其中。注意用于備份 SQL數(shù)據(jù)庫的批處理腳本這里與 SSMS 中使用的 T-SQL 腳本不同,你可以試試這個:

@ECHO OFF
SETLOCAL
REM 獲取格式為 YYYY-MM-DD
FOR /F "tokens=1,2,3,4 delims=/ " %%A IN ('Date /T') DO SET NowDate=%%D- 的日期%%B-%%C
 
REM 建立要備份的數(shù)據(jù)庫列表
SET DBList=D:\DBList.txt
SqlCmd -E -S DESKTOP-AC51C0M\MSSQLSERVER_01 -h-1 -W -Q "SET NoCount ON; SELECT Name FROM master.dbo.sysDatabases WHERE [Name] NOT IN ('master','model','msdb','tempdb')" > "%DBList%"
 
REM 備份每個數(shù)據(jù)庫,將日期添加到文件名
FOR /F " tokens=*" %%I IN (%DBList%) DO (
ECHO 備份數(shù)據(jù)庫:%%I
SqlCmd -E -S DESKTOP-AC51C0M\MSSQLSERVER_01 -Q "BACKUP DATABASE [%%I] TO Disk='D:\備份\%%I-%NowDate%.bak'"
ECHO。)
 
REM 清理臨時文件
IF EXIST "%DBList%" DEL /F /Q "%DBList%"
 
ENDLOCAL

將文本另存為批處理文件(擴(kuò)展名為 .bat)。因此,每次雙擊它時,該腳本都會備份所有帶有文件名日期的 SQL數(shù)據(jù)庫。

要自動執(zhí)行任務(wù),您需要通過 Windows 搜索欄或通過以下路徑訪問任務(wù)計劃程序:控制窗格(小圖標(biāo)/大圖標(biāo))> 管理員工具 > 任務(wù)計劃程序。

通過使用此工具,您可以創(chuàng)建基本任務(wù),設(shè)置觸發(fā)器(計劃),并將操作設(shè)置為啟動程序(即您創(chuàng)建的批處理文件)。之后,任務(wù)將按計劃自動執(zhí)行。

更輕松地安排 SQL 備份和還原到任何精確日期的方法

在文件名中備份帶有日期的 SQL 數(shù)據(jù)庫主要好處是“保留和識別不同版本的備份”,以便 SQL數(shù)據(jù)庫可以在需要時恢復(fù)到準(zhǔn)確的日期。為此,您還可以使用更簡單的 SQL 備份管理工具,例如傲梅企業(yè)備份網(wǎng)絡(luò)版.

它允許您按計劃自動備份 SQL Server,并準(zhǔn)確地將數(shù)據(jù)庫恢復(fù)到任何日期的先前版本(完整或差異)。有了它,您無需使用復(fù)雜的 T-SQL 命令或費心區(qū)分備份文件。所有的操作都可以通過簡單的點擊來完成。

作為一個集中備份工具,它不僅適用于您的計算機(jī),還支持局域網(wǎng)內(nèi)的所有 Windows PC 和服務(wù)器。下載180天免費試用版進(jìn)行嘗試:

正確安裝軟件后,您可以在您要管理的所有客戶端計算機(jī)上安裝代理程序包。在創(chuàng)建集中備份任務(wù)之前“請求控制它們”。

請求控制

步驟 1。在傲梅企業(yè)備份網(wǎng)絡(luò)版中,導(dǎo)航到"任務(wù)" > "新任務(wù)""SQL Server備份"。

sql服務(wù)器備份

步驟 2.單擊+ 添加計算機(jī)以檢測具有SQL Server數(shù)據(jù)庫的計算機(jī),然后從列表中選擇一臺計算機(jī)進(jìn)行備份。

添加計算機(jī)

步驟 3。單擊+ 添加以檢測所選計算機(jī)上的實例。您可以選擇任何您想要的數(shù)據(jù)庫,甚至可以一次選擇所有數(shù)據(jù)庫。

選擇數(shù)據(jù)庫

第 4 步。單擊“添加存儲”以指定目標(biāo)路徑。添加的網(wǎng)絡(luò)共享或 NAS 將被保存以供您將來直接使用。然后單擊“開始備份”以執(zhí)行任務(wù)。

選擇存儲

? 您還可以設(shè)置“計劃以自動執(zhí)行任務(wù),并在”“高級”選項卡中選擇完整備份或差異備份。創(chuàng)建的備份文件將保存在具有相應(yīng)日期的文件夾中。

日程設(shè)置

? 當(dāng)您想從備份中恢復(fù)時,只需在““任務(wù)””選項卡中找到任務(wù),然后從右上角的菜單中選擇“恢復(fù)”即可。

恢復(fù)sql備份

? 您可以選擇要還原的備份日期,或者具體要還原備份中的哪些數(shù)據(jù)庫。

為便于管理和準(zhǔn)確恢復(fù),您可能希望在文件名中備份帶有日期的 SQL 數(shù)據(jù)庫,這通??梢酝ㄟ^ T-SQL 命令來完成。

但是,如果您不想使用腳本,或者發(fā)現(xiàn)自動化任務(wù)很復(fù)雜,傲梅企業(yè)備份網(wǎng)絡(luò)版版是一個值得嘗試的替代方案。它使備份多個數(shù)據(jù)庫、計劃備份、將數(shù)據(jù)庫恢復(fù)到某個日期變得更容易,甚至允許您將 SQL數(shù)據(jù)庫恢復(fù)到另一臺服務(wù)器直接地。