sql2012管理

1、還原完整備份的語法以下:數據庫

RESTORE DATABASE { database_name | @database_name_var }                  --數據庫名服務器

[ FROM <backup_device> [ ,...n ] ]                                                --備份設備ui

[ WITHspa

   [ { CHECKSUM | NO_CHECKSUM } ]                                        --是否校檢和日誌

   [ [ , ] { CONTINUE_AFTER_ERROR | STOP_ON_ERROR } ]             --還原失敗是否繼續事務

   [ [ , ] ENABLE_BROKER ]                                           --啓動Service Brokerast

   [ [ , ] ERROR_BROKER_CONVERSATIONS ]                              --對束全部會話class

   [ [ , ] FILE = { backup_set_file_number | @backup_set_file_number } ]        --用於還原的文件gui

   [ [ , ] KEEP_REPLICATION ]                            --將複製設置爲與日誌傳送一同使用變量

   [ [ , ] MEDIANAME = { media_name | @media_name_variable } ]                    --媒體名

   [ [ , ] MEDIAPASSWORD = { mediapassword |                                  --媒體密碼

                    @mediapassword_variable } ]

   [ [ , ] MOVE 'logical_file_name_in_backup' TO 'operating_system_file_name' ]     --數據還原爲

                [ ,...n ]

   [ [ , ] NEW_BROKER ]                                  --建立新的service_broker_guid值

   [ [ , ] PASSWORD = { password | @password_variable } ]                     --備份集的密碼

   [ [ , ] { RECOVERY | NORECOVERY | STANDBY =                              --恢復模式

          {standby_file_name | @standby_file_name_var }

   } ]

   [ [ , ] REPLACE ]                                                      --覆蓋現有數據庫

   [ [ , ] RESTART ]                                            --從新啓動被中斷的還原操做

   [ [ , ] RESTRICTED_USER ]                                      --限制訪問還原的數據庫

   [ [ , ] { REWIND | NOREWIND } ]                                    --是否釋放和重繞磁帶

   [ [ , ] { UNLOAD | NOUNLOAD } ]                                    --是否重繞並卸載磁帶

   [ [ , ] STATS [ = percentage ] ]                       --還原到其在指定的日期和時間時的狀態

   [ [ , ] { STOPAT = { date_time | @date_time_var }                  --還原到指定的日期和時間

    |  STOPATMARK = { 'mark_name' | 'lsn:lsn_number' }    --恢復爲已標記的事務或日誌序列號

              [ AFTER datetime ]

    |  STOPBEFOREMARK = { 'mark_name' | 'lsn:lsn_number' }

             [ AFTER datetime ]

   } ]

]

[;]

<backup_device> ::=

{

   { logical_backup_device_name |

            @logical_backup_device_name_var }

   | { DISK | TAPE } = { 'physical_backup_device_name' |

              @physical_backup_device_name_var }

}

其中大多參數在備份數據時已經介紹過了,下面介紹一些沒有介紹過的參數:

l  ENABLE_BROKER:啓動Service Broker以便消息能夠當即發送。

l  ERROR_BROKER_CONVERSATIONS:發生錯誤時結束全部會話,併產生一個錯誤指出數據庫已附加或還原。此時Service Broke將一直處於禁用狀態直到此操做完成,而後再將其啓用。

l  KEEP_REPLICATION:將複製設置爲與日誌傳送一同使用。設置該參數後,在備用服務器上還原數據庫時,可防止刪除複製設置。該參數不能與NORECOVERY參數同時使用。

l  MOVE:將邏輯名指定的數據文件或日誌文件還原到所指定的位置,至關於圖18.14中所示的【將數據庫文件還原爲】功能。

l  NEW_BROKER:使用該參數在會在databases數據庫和還原數據庫中都建立一個新的service_broker_guid值,並經過清除結束全部會話端點。Service Broker已啓用,但未向遠程會話端點發送消息。

l  RECOVERY:回滾未提交的事務,使數據庫處於可使用狀態。沒法還原其餘事務日誌

l  NORECOVERY:不對數據庫執行任何操做,不回滾未提交的事務。能夠還原其餘事務日誌。

l  STANDBY:使數據庫處於只讀模式。撤消未提交的事務,但將撤消操做保存在備用文件中,以即可以恢復效果逆轉。

l  standby_file_name | @standby_file_name_var:指定一個容許撤消恢復效果的備用文件或變量。

l  REPLACE:會覆蓋全部現有數據庫以及相關文件,包括已存在的同名的其餘數據庫或文件。

l  RESTART:指定SQL Serve 應從新啓動被中斷的還原操做。RESTAR從中斷點從新啓動還原操做。

l  RESTRICTED_USER:還原後的數據庫僅供db_owner、dbcreator或sysadmin的成員才能使用。

l  STOPAT:將數據庫還原到其在指定的日期和時間時的狀態。

l  STOPATMARK:恢復爲已標記的事務或日誌序列號。恢復中包括帶有已命名標記或 LSN 的事務,僅當該事務最初於實際生成事務時已得到提交,纔可進行本次提交。

l  TOPBEFOREMARK:恢復爲已標記的事務或日誌序列號。恢復中不包括帶有已命名標記或LSN的事務,在使用WITH RECOVERY時,事務將回滾。

 

 

二例子 、備份與還原

備份:

BACKUP DATABASE "mydb" TO DISK ='C:\mybak.bak'

還原
use master
RESTORE DATABASE "mydb_hf" FROM DISK='C:\mybak.bak'
 WITH 
MOVE 'mydb_Data' TO 'c:\mydb20041217.mdf', --數據文件還原後存放的新位置
MOVE 'mydb_Log' TO 'c:\mydb20041217.ldf' ----日誌文件還原後存放的新位置
或者2 --建立備份設備USE [master]GOEXEC master.dbo.sp_addumpdevice  @devtype = N'disk', @logicalname = N'beifen', @physicalname = N'D:\beifen.bak'GO--完整備份到備份設備中BACKUP DATABASE [student] TO  [beifen] WITH NOFORMAT, NOINIT,  NAME = N'student-完整 數據庫 備份', SKIP, NOREWIND, NOUNLOAD,  STATS = 10GO--還原完整備份RESTORE DATABASE [student] FROM  [beifen] WITH  FILE = 1,  NOUNLOAD,  REPLACE,  STATS = 10GO--差別備份BACKUP DATABASE [student] TO  [beifen] WITH  DIFFERENTIAL , NOFORMAT, NOINIT,  NAME = N'student-差別 數據庫 備份', SKIP, NOREWIND, NOUNLOAD,  STATS = 10GO--事務日誌備份BACKUP LOG [student] TO  [beifen] WITH NOFORMAT, NOINIT,  NAME = N'student-事務日誌  備份', SKIP, NOREWIND, NOUNLOAD,  STATS = 10GO--還原到最近狀態RESTORE DATABASE [student] FROM  [beifen] WITH  FILE = 1,  NORECOVERY,  NOUNLOAD,  STATS = 10GORESTORE DATABASE [student] FROM  [beifen] WITH  FILE = 2,  NORECOVERY,  NOUNLOAD,  STATS = 10GORESTORE LOG [student] FROM  [beifen] WITH  FILE = 3,  NOUNLOAD,  STATS = 10GO
相關文章
相關標籤/搜索