當前位置:首頁 » 編程語言 » sqlserver備份設備

sqlserver備份設備

發布時間: 2022-07-08 11:36:47

sqlServer的備份文件和備份設備有什麼區別

文件備份指的是將資料庫以文件形式備份在本機磁碟上或是磁帶,光碟,一旦資料庫掛了,需從備份的文件恢復
設備備份是將整套資料庫體系以及server主機都建立備份。如果當前server掛了,可以直接切換到備份機繼續工作。
設備備份更安全即時有效

備份後綴名是不限定的。默認是bak。
mdf這個後綴名只是微軟推薦的,你可以也可以將主文件命名為mof,ttf等等,什麼都可以。
你可以去試試

Ⅱ sqlserver資料庫幾種備份方法

資料庫備份可以分為4個備份類型。

l 全備份:創建備份完成時資料庫內存在的數據的副本。

l 差異備份:只記錄自上次資料庫備份後發生更改的數據。差異資料庫備份比資料庫備份小,而且備份速度快,因此可以更經常地備份,經常備份將減少丟失數據的危險。

l 日誌備份:是自上次備份事務日誌後對資料庫執行的所有事務的一系列記錄。可以使用事務日誌備份將資料庫恢復到特定的即時點(如輸入多餘數據前的那一點)或恢復到故障點。

l 文件組備份:可以備份和還原資料庫中的個別文件。可以只還原已損壞的文件,而不用還原資料庫的其餘部分,從而加快了恢復速度。

不同的備份類型適用的范圍也不同。全備份,可以只用一步操作完成數據的全部備份,但執行時間比較長。差異備份和日誌備份,都不能獨立作為一個備份集來使用,需要進行一次全備份。文件備份必須與事務日誌備份一起使用,所以文件備份只適用於完全恢復模型和大容量日誌記錄恢復模型。

每一種備份類型都有不足之處,要針對需要選擇備份類型,或者使用幾種備份方式的配合來完成資料庫的備份。

經常使用備份方式組合有以下幾種:

l 全備份+差異備份:以一周為周期,星期日進行全備份,星期一到星期六每天進行差異備份。

l 全備份+日誌備份:以一周為周期,星期日進行全備份,星期一到星期六每天進行日誌備份。

l 文件組備份+日誌備份:備份周期取決於資料庫的大小和能力,每周期分別進行一部分數據文件備份,每天進行日誌備份。

Ⅲ sqlserver怎麼備份到網路

最近在看聯機從書,在看到sp_admpdevice時無意間看到如下內容:
"
[@physicalname =] 'physical_name'
備份設備的物理名稱。物理名稱必須遵照操作系統文件名稱的規則或者網路設備的通用命名規則,並且必須包括完整的路徑。physical_name 的數據類型為 nvarchar(260),沒有默認值,並且不能為 NULL。
當創建遠程網路位置上的備份設備時,請確保在其下啟動 SQL Server 的名稱對遠程的計算機有適當的寫入能力。
B. 添加網路磁碟備份設備
下面的示例顯示一個遠程磁碟備份設備。在其下啟動 SQL Server 的名稱必須對該遠程文件擁有許可權。
USE master
EXEC sp_admpdevice 'disk', 'networkdevice', '\\servername\sharename\path\filename.ext'
以前曾看到過有人問,怎麼樣才能將數據備份到網路上,一直沒有答案,然後我就試驗了一把.
在伺服器上建了一個目錄,然後確保共享並有許可權,如果需要建在共享目錄下的目錄下,那還得保證用戶有許可權
當然,SQLSERVER系統啟動早於登錄,一般用戶會在登錄中使用本地系統賬戶,我想在登錄到系統之前一直是
administrator用戶模擬,因此,我將登錄的賬戶改為了網路用戶,因為我公司有域,因此我將域用戶設置為本機
的系統管理員,以確保該服務能啟動.
接下來更簡單了:
sp_admpdevice 'DISK','NetWork','\\server\d$\databak\xuzh.bak'
go
backup database xuzh to network
得到的結果如下:
已處理 96 頁,這些頁屬於資料庫 'xuzh' 的文件 'xuzhP01'(位於文件 2 上)。
已處理 16 頁,這些頁屬於資料庫 'xuzh' 的文件 'xuzhP02'(位於文件 2 上)。
已處理 16 頁,這些頁屬於資料庫 'xuzh' 的文件 'xuzhS01'(位於文件 2 上)。
已處理 8 頁,這些頁屬於資料庫 'xuzh' 的文件 'xuzhS02'(位於文件 2 上)。
已處理 1 頁,這些頁屬於資料庫 'xuzh' 的文件 'xuzh_Log'(位於文件 2 上)。
BACKUP DATABASE 操作成功地處理了 137 頁,花費了 0.516 秒(2.161 MB/秒)。
成功完成網路備份

另外,----------------------
實例說明:
環境:win2k+sqlserver 2K+查詢分析器
SQLSERVER服務實例名稱:mainserver
需要備份的資料庫名稱: msdb
本地機器名稱(Client端):david
本地用戶:zf 密碼:123
本地域名:domain
本地提供備份需求的文件夾:e:\test

第一步: 建立共享文件夾
在程序代碼中調用(或者CMD窗口) net share test=e:\test
或者用NetShareAdd這個API
簡要說明:
net share : 是WINDOWS內部的網路命令。
作用:建立本地的共享資源,顯示當前計算機的共享資源信息。
語法:參見 net share /?
第二步: 建立共享信用關系
master..xp_cmdshell 'net use \\david\test 123 /user:domain\zf'
簡要說明:
1:xp_cmdshell :是SQLSERVER的擴展存儲過程。
作用,以操作系統命令行解釋器的方式執行給定的命令字元串,
並以文本行方式返回任何輸出。
語法:參見SQLSERVER聯機幫助
2:net use : 是WINDOWS內部的網路命令。
作用,將計算機與共享資源連接或斷開,或者顯示關於計算機
連接的信息。該命令還控制持久網路連接。
語法:參見 net use /?

第三步:備份資料庫
backup database msdb to disk='\\david\test\msdb.bak'
這個不需要說明吧,語法參見SQLSERVER聯機幫助

第四步: 刪除共享文件夾
在程序代碼中調用(或者CMD窗口) net share test /delete
或者用NetShareDel這個API
結果:
已處理 1376 頁,這些頁屬於資料庫 'msdb' 的文件 'MSDBData'(位於文件 1 上)。
已處理 1 頁,這些頁屬於資料庫 'msdb' 的文件 'MSDBLog'(位於文件 1 上)。
BACKUP DATABASE 操作成功地處理了 1377 頁,花費了 3.653 秒(3.086 MB/秒)。

這樣mainserver伺服器上的msdb就備份到了david機器的E:\test\msdb.bak文件了,使用起來很簡單吧?恢復資料庫操作也是一樣,只要將第三個步驟的語句改為'restore database msdb from disk='\\david\test\msdb.bak'就可以啦。。你看完了也可以試試呀?!(最簡單的測試工具查詢分析器+CMD窗口)

備註:xp_cmdshell 這個擴展存儲過程只能SA級別的用戶調用,而且是SQLSERVER的安全隱患之一,許多DBA都喜歡將其刪除或者禁用,所以開發人員使用時要倍加小心哦。
文章中的例子只是簡要的說明了應如何利用擴展存儲過程實現遠程備份與恢復,沒有涉及安全以及其他方面的考慮,希望讀者在代碼中自行完善。

Ⅳ sqlserver資料庫怎麼備份

在要備份的資料庫上滑鼠右鍵單擊,選擇備份
在下圖中刪除默認的備份設備(一定要做這一步,否則SQL將創建媒體集,還原資料庫會失敗的。)
單擊添加按鈕,選擇備份路徑,和備份文件名後單擊確定即可

Ⅳ 如何備份sqlserver資料庫

工具:

安裝好SQL server

步驟:

  1. 點擊開始菜單,打開sql企業管理器。

  2. 刪除記錄再點添加;

  3. 選擇備份目的,就是要讓選擇備份地點和備份文件命名。前面是路徑後面是文件名,這個文件名是自定義的,可以根據時間或者其他來命名,如果想另存的話也可以點擊另存為,然後確定。

  4. 添加保存路徑後繼續確定,然後會有備份進度提示,直到完成ok。

  5. 根據路徑來檢查是否有備份文件。

Ⅵ 如何解決sqlserver還原資料庫出現提示無法打開備份設備的問題

解決辦法:
在備份的硬碟上右擊->屬性->安全,找到Users,單擊它,然後在下面的許可權上全部打勾即可。

Ⅶ sqlserver怎麼備份資料庫

  • 第一步打開sql server資料庫,選擇要備份的資料庫,滑鼠右鍵選擇任務->備份,如下圖所示:

Ⅷ 什麼是SQL Server的備份設備

肯定沒設置好啦 不然怎麼可能不執行自動備份

企業管理器中的Tools,Database Maintenance Planner,可以設置資料庫的定期自動備份計劃。並通過啟動Sql server Agent來自動運行備份計劃。具體步驟如下:
1、打開企業管理器,在控制台根目錄中依次點開Microsoft SQL Server-->SQL Server組-->雙擊打開你的伺服器
2、然後點上面菜單中的工具-->選擇資料庫維護計劃器
3、下一步選擇要進行自動備份的數據-->下一步更新數據優化信息,這里一般不用做選擇-->下一步檢查數據完整性,也一般不選擇
4、下一步指定資料庫維護計劃,默認的是1周備份一次,點擊更改選擇每天備份後點確定
5、下一步指定備份的磁碟目錄,選擇指定目錄,如您可以在D盤新建一個目錄如:d:\databak,然後在這里選擇使用此目錄,如果您的資料庫比較多最好選擇為每個資料庫建立子目錄,然後選擇刪除早於多少天前的備份,一般設定4-7天,這看您的具體備份要求,備份文件擴展名默認的是BAK
6、下一步指定事務日誌備份計劃,看您的需要做選擇-->下一步要生成的報表,一般不做選擇-->下一步維護計劃歷史記錄,最好用默認的選項-->下一步完成
7、完成後系統很可能會提示Sql Server Agent服務未啟動,先點確定完成計劃設定,然後找到桌面最右邊狀態欄中的SQL綠色圖標,雙擊點開,在服務中選擇Sql Server Agent,然後點擊運行箭頭,選上下方的當啟動OS時自動啟動服務
8、可以設置啟動啟動sql server Agent:運行Services.msc,設置sqlserverAgent為自動啟動。 修改計劃:打開企業管理器,在控制台根目錄中依次點開Microsoft SQL Server-->SQL Server組-->雙擊打開你的伺服器-->管理-->資料庫維護計劃

Ⅸ sqlserver2000個人版怎麼備份資料庫

BACKUP
備份整個資料庫、事務日誌,或者備份一個或多個文件或文件組。有關資料庫備份和恢復操作的更多信息,請參見備份和還原資料庫。

語法
備份整個資料庫:

BACKUP DATABASE { database_name | @database_name_var }
TO < backup_device > [ ,...n ]
[ WITH
[ BLOCKSIZE = { blocksize | @blocksize_variable } ]
[ [ , ] DESCRIPTION = { 'text' | @text_variable } ]
[ [ , ] DIFFERENTIAL ]
[ [ , ] EXPIREDATE = { date | @date_var }
| RETAINDAYS = { days | @days_var } ]
[ [ , ] PASSWORD = { password | @password_variable } ]
[ [ , ] FORMAT | NOFORMAT ]
[ [ , ] { INIT | NOINIT } ]
[ [ , ] MEDIADESCRIPTION = { 'text' | @text_variable } ]
[ [ , ] MEDIANAME = { media_name | @media_name_variable } ]
[ [ , ] MEDIAPASSWORD = { mediapassword | @mediapassword_variable } ]
[ [ , ] NAME = { backup_set_name | @backup_set_name_var } ]
[ [ , ] { NOSKIP | SKIP } ]
[ [ , ] { NOREWIND | REWIND } ]
[ [ , ] { NOUNLOAD | UNLOAD } ]
[ [ , ] RESTART ]
[ [ , ] STATS [ = percentage ] ]
]

備份特定的文件或文件組:

BACKUP DATABASE { database_name | @database_name_var }
< file_or_filegroup > [ ,...n ]
TO < backup_device > [ ,...n ]
[ WITH
[ BLOCKSIZE = { blocksize | @blocksize_variable } ]
[ [ , ] DESCRIPTION = { 'text' | @text_variable } ]
[ [ , ] DIFFERENTIAL ]
[ [ , ] EXPIREDATE = { date | @date_var }
| RETAINDAYS = { days | @days_var } ]
[ [ , ] PASSWORD = { password | @password_variable } ]
[ [ , ] FORMAT | NOFORMAT ]
[ [ , ] { INIT | NOINIT } ]
[ [ , ] MEDIADESCRIPTION = { 'text' | @text_variable } ]
[ [ , ] MEDIANAME = { media_name | @media_name_variable } ]
[ [ , ] MEDIAPASSWORD = { mediapassword | @mediapassword_variable } ]
[ [ , ] NAME = { backup_set_name | @backup_set_name_var } ]
[ [ , ] { NOSKIP | SKIP } ]
[ [ , ] { NOREWIND | REWIND } ]
[ [ , ] { NOUNLOAD | UNLOAD } ]
[ [ , ] RESTART ]
[ [ , ] STATS [ = percentage ] ]
]

備份一個事務日誌:

BACKUP LOG { database_name | @database_name_var }
{
TO < backup_device > [ ,...n ]
[ WITH
[ BLOCKSIZE = { blocksize | @blocksize_variable } ]
[ [ , ] DESCRIPTION = { 'text' | @text_variable } ]
[ [ ,] EXPIREDATE = { date | @date_var }
| RETAINDAYS = { days | @days_var } ]
[ [ , ] PASSWORD = { password | @password_variable } ]
[ [ , ] FORMAT | NOFORMAT ]
[ [ , ] { INIT | NOINIT } ]
[ [ , ] MEDIADESCRIPTION = { 'text' | @text_variable } ]
[ [ , ] MEDIANAME = { media_name | @media_name_variable } ]
[ [ , ] MEDIAPASSWORD = { mediapassword | @mediapassword_variable } ]
[ [ , ] NAME = { backup_set_name | @backup_set_name_var } ]
[ [ , ] NO_TRUNCATE ]
[ [ , ] { NORECOVERY | STANDBY = undo_file_name } ]
[ [ , ] { NOREWIND | REWIND } ]
[ [ , ] { NOSKIP | SKIP } ]
[ [ , ] { NOUNLOAD | UNLOAD } ]
[ [ , ] RESTART ]
[ [ , ] STATS [ = percentage ] ]
]
}

< backup_device > ::=
{
{ logical_backup_device_name | @logical_backup_device_name_var }
|
{ DISK | TAPE } =
{ 'physical_backup_device_name' | @physical_backup_device_name_var }
}

< file_or_filegroup > ::=
{
FILE = { logical_file_name | @logical_file_name_var }
|
FILEGROUP = { logical_filegroup_name | @logical_filegroup_name_var }
}

截斷事務日誌:

BACKUP LOG { database_name | @database_name_var }
{
[ WITH
{ NO_LOG | TRUNCATE_ONLY } ]
}

參數
DATABASE

指定一個完整的資料庫備份。假如指定了一個文件和文件組的列表,那麼僅有這些被指定的文件和文件組被備份。

說明 在進行完整資料庫備份或差異資料庫備份時,Microsoft® SQL Server™ 備份足夠的事務日誌,以生成一個將在還原資料庫時使用的一致的資料庫。在 master 資料庫上只能採用完整資料庫備份。

{ database_name | @database_name_var }

指定了一個資料庫,從該資料庫中對事務日誌、部分資料庫或完整的資料庫進行備份。如果作為變數 (@database_name_var) 提供,則可將該名稱指定為字元串常量 (@database_name_var = database name) 或字元串數據類型(ntext 或 text 數據類型除外)的變數。

< backup_device >

指定備份操作時要使用的邏輯或物理備份設備。可以是下列一種或多種形式:

{ logical_backup_device_name } | { @logical_backup_device_name_var }
是由 sp_admpdevice 創建的備份設備的邏輯名稱,資料庫將備份到該設備中,其名稱必須遵守標識符規則。如果將其作為變數 (@logical_backup_device_name_var) 提供,則可將該備份設備名稱指定為字元串常量 (@logical_backup_device_name_var = logical backup device name) 或字元串數據類型(ntext 或 text 數據類型除外)的變數。

{ DISK | TAPE } =
'physical_backup_device_name' | @physical_backup_device_name_var
允許在指定的磁碟或磁帶設備上創建備份。在執行 BACKUP 語句之前不必存在指定的物理設備。如果存在物理設備且 BACKUP 語句中沒有指定 INIT 選項,則備份將追加到該設備。
當指定 TO DISK 或 TO TAPE 時,請輸入完整路徑和文件名。例如,DISK = 'C:\Program Files\Microsoft SQL Server\MSSQL\BACKUP\Mybackup.dat' 或 TAPE = '\\.\TAPE0'。

說明 對於備份到磁碟的情況,如果輸入一個相對路徑名,備份文件將存儲到默認的備份目錄中。該目錄在安裝時被設置並且存儲在 KEY_LOCAL_MACHINE\Software\Microsoft\MSSQLServer\MSSQLServer 目錄下的 BackupDirectory 注冊表鍵值中。

如果使用的是具有統一命名規則 (UNC) 名稱的網路伺服器或已重新定向的驅動器號,則請指定磁碟的設備類型。

當指定多個文件時,可以混合邏輯文件名(或變數)和物理文件名(或變數)。但是,所有的設備都必須為同一類型(磁碟、磁帶或管道)。

Windows 98 不支持備份到磁碟。

n

是表示可以指定多個備份設備的佔位符。備份設備數目的上限為 64。

BLOCKSIZE = { blocksize | @blocksize_variable }

用位元組數來指定物理塊的大小。在 Windows NT 系統上,默認設置是設備的默認塊大小。一般情況下,當 SQL Server 選擇適合於設備的塊大小時不需要此參數。在基於 Windows 2000 的計算機上,默認設置是 65,536(64 KB,是 SQL Server 支持的最大大小)。

對於磁碟,BACKUP 自動決定磁碟設備合適的塊大小。

說明 如果要將結果備份集存儲到 CD-ROM 中然後從 CD-ROM 中恢復,請將 BLOCKSIZE 設為 2048。

磁帶的默認 BLOCKSIZE 為 65,536 (64 KB)。顯式聲明塊大小將替代 SQL Server 選擇的塊大小。

DESCRIPTION = { 'text' | @text_variable }

指定描述備份集的自由格式文本。該字元串最長可以有 255 個字元。

DIFFERENTIAL

指定資料庫備份或文件備份應該與上一次完整備份後改變的資料庫或文件部分保持一致。差異備份一般會比完整備份佔用更少的空間。對於上一次完整備份時備份的全部單個日誌,使用該選項可以不必再進行備份。有關更多信息,請參見差異資料庫備份和文件差異備份。

說明 在進行完整資料庫備份或差異備份時,SQL Server 備份足夠的事務日誌,從而在恢復資料庫時生成一個一致的資料庫。

EXPIREDATE = { date | @date_var }

指定備份集到期和允許被重寫的日期。如果將該日期作為變數 (@date_var) 提供,則可以將該日期指定為字元串常量 (@date_var = date)、字元串數據類型變數(ntext 或 text 數據類型除外)、smalldatetime 或者 datetime 變數,並且該日期必須符合已配置的系統 datetime 格式。

RETAINDAYS = { days | @days_var }

指定必須經過多少天才可以重寫該備份媒體集。假如用變數 (@days_var) 指定,該變數必須為整型。

重要 假如 EXPIREDATE 或 RETAINDAYS 沒有指定,有效期將取決於 sp_configure 的 media retention 配置設置。這些選項僅僅阻止 SQL Server 重寫文件。用其它方法可擦除磁帶,而通過操作系統可以刪除磁碟文件。有關過期驗證的更多信息,請參見本主題的 SKIP 和 FORMAT。

PASSWORD = { password | @password_variable }

為備份集設置密碼。 PASSWORD 是一個字元串。如果為備份集定義了密碼,必須提供這個密碼才能對該備份集執行任何還原操作。

重要 備份集密碼防止未經授權即通過 SQL Server 2000 工具訪問備份集的內容,但是不能防止重寫備份集。

有關使用密碼的更多信息,請參見"許可權"部分。

FORMAT

指定應將媒體頭寫入用於此備份操作的所有卷。任何現有的媒體頭都被重寫。FORMAT 選項使整個媒體內容無效,並且忽略任何現有的內容。

重要 使用 FORMAT 要謹慎。格式化一個備份設備或媒體將使整個媒體集不可用。例如,如果初始化現有條帶備份集中的單個磁帶,則整個備份集都將變得不可用。

通過指定 FORMAT,備份操作也就暗示了 SKIP 和 INIT;這些都不必顯式說明。

NOFORMAT

指定媒體頭不應寫入所有用於該備份操作的卷中,並且不要重寫該備份設備除非指定了 INIT。

INIT

指定應重寫所有備份集,但是保留媒體頭。如果指定了 INIT,將重寫那個設備上的所有現有的備份集數據。

當遇到以下幾種情況之一時不重寫備份媒體:

媒體上的備份設置沒有全部過期。有關更多信息,請參見 EXPIREDATE 和 RETAINDAYS 選項。

如果 BACKUP 語句給出了備份集名,該備份集名與備份媒體上的名稱不匹配。有關更多信息,請參見 NAME 子句。
使用 SKIP 選項替代這些檢查。有關使用 SKIP、NOSKIP、INIT 和 NOINIT 時的相互作用關系的更多信息,請參見注釋部分。

說明 如果備份媒體有密碼保護,SQL Server 將不寫入媒體,除非提供媒體密碼。SKIP 選項不替代此檢查。只有通過格式化才能重寫受密碼保護的媒體。有關更多信息,請參見 FORMAT 選項。

NOINIT

表示備份集將追加到指定的磁碟或磁帶設備上,以保留現有的備份集。NOINIT 是默認設置。

RESTORE 命令的 FILE 選項用於在還原時選擇適當的備份集。有關更多信息,請參見 RESTORE。

如果為媒體集定義了媒體密碼,則必須提供密碼。

MEDIADESCRIPTION = { text | @text_variable }

指明媒體集的自由格式文本描述,最多為 255 個字元。

MEDIADESCRIPTION = { text | @text_variable }

為整個備份媒體集指明媒體名,最多為 128 個字元。假如指定了 MEDIANAME,則它必須與以前指定的媒體名相匹配,該媒體名已存在於備份卷中。假如沒有指定 MEDIANAME,或指定了 SKIP 選項,將不會對媒體名進行驗證檢查。

MEDIAPASSWORD = { mediapassword | @mediapassword_variable }

為媒體集設置密碼。MEDIAPASSWORD 是一個字元串。

如果為媒體集定義了密碼,則在該媒體集上創建備份集時必須提供此密碼。另外,從該媒體集執行任何還原操作時也必須提供媒體密碼。只有通過格式化才能重寫受密碼保護的媒體。有關更多信息,請參見 FORMAT 選項。

有關使用密碼的更多信息,請參見"許可權"部分。

NAME = { backup_set_name | @backup_set_var }

指定備份集的名稱。名稱最長可達 128 個字元。假如沒有指定 NAME,它將為空。

NORECOVERY

只與 BACKUP LOG 一起使用。備份日誌尾部並使資料庫處於正在還原的狀態。當將故障轉移到輔助資料庫或在 RESTORE 操作前保存日誌尾部時,NORECOVERY 很有用。

STANDBY = undo_file_name

只與 BACKUP LOG 一起使用。備份日誌尾部並使資料庫處於只讀或備用模式。撤消文件名指定了容納回滾更改的存儲,如果隨後應用 RESTORE LOG 操作,則必須撤消這些回滾更改。

如果指定的撤消文件名不存在,SQL Server 將創建該文件。如果該文件已存在,則 SQL Server 將重寫它。有關更多信息,請參見使用備用伺服器。

NOREWIND

指定 SQL Server 在備份操作完成後使磁帶保持打開。NOREWIND 意即 NOUNLOAD。SQL Server 將保留磁帶驅動器的所有權,直到 BACKUP或 RESTORE 命令使用 REWIND 為止。

如果無意中使磁帶處於打開狀態,則釋放磁帶的最快方法是使用下面的 RESTORE 命令:

RESTORE LABELONLY FROM TAPE = <name> WITH REWIND

通過查詢 master 資料庫中的 sysopentapes 表可以查找正在打開的磁帶列表。

REWIND

指定 SQL Server 將釋放磁帶和倒帶。如果 NOREWIND 和 REWIND 均未指定,則默認設置為 REWIND。

NOSKIP

指示 BACKUP 語句在可以重寫媒體上的所有備份集之前先檢查它們的過期日期。

SKIP

禁用備份集過期和名稱檢查,這些檢查一般由 BACKUP 語句執行以防重寫備份集。有關更多信息,請參見注釋部分。

NOUNLOAD

指定不在備份後從磁帶驅動器中自動卸載磁帶。設置始終為 NOUNLOAD,直到指定 UNLOAD 為止。該選項只用於磁帶設備。

UNLOAD

指定在備份完成後自動倒帶並卸載磁帶。啟動新用戶會話時其默認設置為 UNLOAD。該設置一直保持到用戶指定了 NOUNLOAD 時為止。該選項只用於磁帶設備。

RESTART

指定 SQL Server 重新啟動一個被中斷的備份操作。因為 RESTART 選項在備份操作被中斷處重新啟動該操作,所以它節省了時間。若要重新啟動一個特定的備份操作,請重復整個 BACKUP 語句並且加入 RESTART 選項。不一定非要使用 RESTART 選項,但是它可以節省時間。

重要 該選項只用於導向磁帶媒體的備份和跨越了多個磁帶卷的備份。在備份的第一卷上永遠不會有重新啟動操作。

STATS [= percentage]

每當另一個 percentage 結束時顯示一條消息,它被用於測量進度。如果省略 percentage,SQL Server 將每完成 10 個百分點顯示一條消息。

<file_or_filegroup>

指定包含在資料庫備份中的文件或文件組的邏輯名。可以指定多個文件或文件組。

FILE = { logical_file_name | @logical_file_name_var }

給一個或多個包含在資料庫備份中的文件命名。

FILEGROUP = { logical_filegroup_name | @logical_filegroup_name_var }

給一個或多個包含在資料庫備份中的文件組命名。

說明 當資料庫的大小和性能要求使得進行完整資料庫備份不切實際時,備份一個文件。若要單獨備份事務日誌,請使用 BACKUP LOG。

重要 必須通過使用 BACKUP LOG 提供事務日誌的單獨備份,才能使用文件和文件組備份來恢復資料庫。有關文件備份的更多信息,請參見備份使用文件備份。

如果恢復模型為 SIMPLE,則不允許文件和文件組備份。

n

是一個佔位符,表示可以指定多個文件和文件組。對文件或文件組的最大個數沒有限制。

LOG

指定只備份事務日誌。該日誌是從上一次成功執行了的 LOG 備份到當前日誌的末尾。一旦備份日誌,可能會截斷復制或活動事務不再需要的空間。

說明 假如備份日誌看來並沒有截斷大部分的日誌,則有可能在日誌中存在一個舊的開放事務。可以使用 DBCC SQLPERF (LOGSPACE) 觀察日誌空間。有關更多信息,請參見事務日誌備份。

NO_LOG | TRUNCATE_ONLY

無須備份復制日誌即刪除不活動的日誌部分,並且截斷日誌。該選項會釋放空間。因為並不保存日誌備份,所以沒有必要指定備份設備。NO_LOG 和 TRUNCATE_ONLY 是同義的。

使用 NO_LOG 或 TRUNCATE_ONLY 備份日誌後,記錄在日誌中的更改不可恢復。為了恢復,請立即執行 BACKUP DATABASE。

NO_TRUNCATE

允許在資料庫損壞時備份日誌。

注釋
可以將資料庫或日誌備份追加到任何磁碟或磁帶設備上,從而使得資料庫和它的事務日誌能存儲在一個物理位置中。

當資料庫正在使用時,SQL Server 使用一個聯機備份過程來對資料庫進行備份。下面的列表包括在資料庫或事務日誌備份時無法進行的操作:

在備份操作時允許進行文件管理操作,如帶有 ADD FILE 或 REMOVE FILE 選項的 ALTER DATABASE 語句,以及 INSERT、UPDATE 或 DELETE 語句。

收縮資料庫或文件。這包括自動收縮操作。
假如在這些操作正在進行時啟動備份,備份將終止。假如正在進行備份時,試圖進行這些操作,則操作會失敗。

只要操作系統支持資料庫的排序規則,就可以在不同的平台之間執行備份操作,即使這些平台使用不同的處理器類型。有關更多信息,請參見 SQL Server 排序規則基礎知識。

備份文件格式
因為 SQL Server 2000 的備份格式遵從 Microsoft 磁帶格式 (MTF),該格式與 Windows NT 磁帶備份所使用的格式相同,所以 SQL Server 備份可與 Windows NT 備份共存於磁帶媒體上。若要確保相互操作性,磁帶應由 NTBackup 格式化。

備份類型
SQL Server 支持的備份類型包括:

完整資料庫備份,它備份包括事務日誌的整個資料庫。

在完整資料庫備份之間執行差異資料庫備份。

事務日誌備份。
日誌備份序列提供了連續的事務信息鏈,可支持從資料庫、差異或文件備份中快速恢復。

文件和文件組備份。
當時間限制使得完整資料庫備份不切實際時,請使用 BACKUP 備份資料庫文件和文件組,而不是備份完整資料庫。若要備份一個文件而不是整個資料庫時,請合理安排步驟以確保資料庫中所有的文件按規則備份。同時必須進行單獨的事務日誌備份。在恢復一個文件備份後,使用事務日誌將文件內容前滾,使其與資料庫其餘部分一致。

在條帶集中使用的備份設備必須一直在條帶集中使用(除非在某處用 FORMAT 重新初始化),而且設備數目不變。在備份設備已定義為條帶集的組成部分後,就不能用於單個設備備份,除非指定了 FORMAT。同樣,一個含有非條帶集備份的備份設備不能用於條帶集,除非指定了 FORMAT。使用 FORMAT 來分開條帶備份集。

如果寫入媒體頭時未指定 MEDIANAME 或 MEDIADESCRIPTION,則與空項對應的媒體頭欄位將為空。

如果恢復模型為 SIMPLE,則無法使用 BACKUP LOG。應該使用 BACKUP DATABASE 來替代。

SKIP、NOSKIP、INIT 和 NOINIT 間的相互作用
下表說明 { INIT | NOINIT }和{ NOSKIP | SKIP } 子句間是如何相互作用的。

說明 在所有這些交互操作中,如果磁帶媒體為空或磁帶備份文件不存在,則寫入媒體頭並繼續。如果媒體頭不為空或不含有效的媒體頭,則指出這是無效的 MTF 媒體並取消備份。

INIT NOINIT
SKIP 如果卷中包含有效的1 媒體頭,則驗證媒體密碼並重寫媒體上的全部備份集,僅保留媒體頭。
如果卷不含有效的媒體頭,則使用給定的 MEDIANAME、MEDIAPASSWORD 和 MEDIADESCRIPTION(若有)生成媒體頭。
如果卷中包含有效的媒體頭,則驗證媒體密碼並添加備份集,並保留所有現有備份集。
如果卷不含有效的媒體頭,則會出錯。

NOSKIP 如果該卷包含一個有效的媒體頭,將執行以下檢查:
驗證媒體密碼。2

如果指定了 MEDIANAME,將驗證所給的媒體名是否匹配媒體頭的媒體名。

驗證媒體上沒有未過期的備份集。
如果有,將終止備份。
如果這些檢查都通過了,將重寫該媒體上一切備份集,只保留媒體頭。

如果卷不含有效的媒體頭,則使用給定的 MEDIANAME、MEDIAPASSWORD 和 MEDIADESCRIPTION(若有)生成媒體頭。
如果該卷包含一個有效的媒體頭,將驗證媒體密碼*並且驗證媒體是否名匹配所給的 MEDIANAME(假如有的話)。如果匹配,追加備份集,同時保留所有現有的備份集。
如果卷不含有效的媒體頭,則會出錯。

1. 有效性包括 MTF 版本號和其它標題信息。如果不支持指定的版本或指定的版本不是期望值,將會發生錯誤。
2. 用戶必須屬於適當的固定資料庫或伺服器角色,並提供執行備份操作所需的正確媒體密碼。

說明 為保持向後兼容性,在 BACKUP 語句的語法中可使用 DUMP 關鍵字替代 BACKUP 關鍵字。另外,可使用 TRANSACTION 關鍵字替代 LOG 關鍵字。

備份歷史表
SQL Server 使用以下的備份歷史表來跟蹤備份活動:

backupfile

backupmediafamily

backupmediaset

backupset
執行 RESTORE 時,將修改備份歷史記錄表。

兼容性注意事項

注意 無法在早期 SQL Server 版本中還原使用 Microsoft® SQL Server™ 2000 創建的備份。

許可權
BACKUP DATABASE 和 BACKUP LOG 許可權默認情況下授予 sysadmin 固定伺服器角色和 db_owner 及 db_backupoperator 固定資料庫角色的成員。

此外,用戶可以為媒體集、備份集或兩者指定密碼。如果為媒體集指定了密碼,則用戶若只是適當的固定伺服器和資料庫角色成員還不足以執行備份。用戶還必須提供媒體密碼才能執行這些操作。同樣,除非在還原命令中指定正確的媒體集密碼和備份集密碼,否則不能執行還原操作。

在 BACKUP 語句中,定義備份集密碼和媒體集密碼為可選功能。使用密碼可防止利用 SQL Server 2000 工具未經授權地執行還原操作和在媒體中添加備份集,但是,密碼不能防止通過 FORMAT 選項重寫媒體。

因此,盡管使用密碼對防止利用 SQL Server 工具未經授權地訪問媒體內容有幫助,但密碼不能防止媒體內容被破壞。密碼不能完全防止未經授權地訪問媒體內容,原因在於備份集中的數據沒有加密,理論上可以被專為此目的創建的程序所檢查。對於安全性至關重要的場合,防止未經授權的個人訪問媒體非常重要。

為不是用相關密碼創建的對象指定密碼是錯誤的做法。

BACKUP 使用由 PASSWORD 選項提供的備份集密碼創建備份集。另外,BACKUP 正常情況下在寫入媒體之前驗證由 MEDIAPASSWORD 選項提供的媒體密碼。BACKUP 不驗證媒體密碼的唯一情況是當格式化媒體時,這將重寫媒體頭。BACKUP 只在下列情況下格式化媒體:

如果指定了 FORMAT 選項。

如果媒體頭無效且指定了 INIT。

如果正在寫入延續卷。
如果 BACKUP 寫入媒體頭,BACKUP 將給 MEDIAPASSWORD 選項中指定的值指派媒體集密碼。

有關密碼對 SKIP、NOSKIP、INIT 和 NOINIT 選項的影響的更多信息,請參見注釋部分。

備份設備物理文件的所有權和許可權問題可能會妨礙備份操作。SQL Server 必須能夠讀取並寫入設備;運行 SQL Server 服務的帳戶必須有寫入許可權。但是,為設備在系統表中添加項目的 sp_admpdevice 不檢查文件訪問權。備份設備物理文件的這些問題可能直到為備份或還原而訪問物理資源時才會出現。

示例
A. 備份整個 MyNwind 資料庫

說明 MyNwind 資料庫僅用於演示。

下例創建用於存放 MyNwind 資料庫完整備份的邏輯備份設備。

-- Create a logical backup device for the full MyNwind backup.
USE master
EXEC sp_admpdevice 'disk', 'MyNwind_1',
DISK ='c:\Program Files\Microsoft SQL Server\MSSQL\BACKUP\MyNwind_1.dat'

-- Back up the full MyNwind database.
BACKUP DATABASE MyNwind TO MyNwind_1

B. 備份資料庫和日誌
本例創建了一個資料庫和日誌的完整備份。將資料庫備份到稱為 MyNwind_2 的邏輯備份設備上,然後將日誌備份到稱為 MyNwindLog1 的邏輯備份設備上。

說明 創建邏輯備份設備需要一次完成。

-- Create the backup device for the full MyNwind backup.
USE master
EXEC sp_admpdevice 'disk', 'MyNwind_2',
'c:\Program Files\Microsoft SQL Server\MSSQL\BACKUP\MyNwind_2.dat'

--Create the log backup device.
USE master
EXEC sp_admpdevice 'disk', 'MyNwindLog1',
'c:\Program Files\Microsoft SQL Server\MSSQL\BACKUP\MyNwindLog1.dat'

-- Back up the full MyNwind database.
BACKUP DATABASE MyNwind TO MyNwind_2

-- Update activity has occurred since the full database backup.

-- Back up the log of the MyNwind database.
BACKUP LOG MyNwind
TO MyNwindLog1

熱點內容
滑板鞋腳本視頻 發布:2025-02-02 09:48:54 瀏覽:432
群暉怎麼玩安卓模擬器 發布:2025-02-02 09:45:23 瀏覽:557
三星安卓12彩蛋怎麼玩 發布:2025-02-02 09:44:39 瀏覽:743
電腦顯示連接伺服器錯誤 發布:2025-02-02 09:24:10 瀏覽:537
瑞芯微開發板編譯 發布:2025-02-02 09:22:54 瀏覽:146
linux虛擬機用gcc編譯時顯示錯誤 發布:2025-02-02 09:14:01 瀏覽:235
java駝峰 發布:2025-02-02 09:13:26 瀏覽:651
魔獸腳本怎麼用 發布:2025-02-02 09:10:28 瀏覽:538
linuxadobe 發布:2025-02-02 09:09:43 瀏覽:212
sql2000資料庫連接 發布:2025-02-02 09:09:43 瀏覽:726