SQL 備份及恢復

2021-10-08 07:37:29 字數 4255 閱讀 7220

二、恢復

三、 t-sql語句

1-2 備份資料庫

1-3 還原資料庫

為了最大限度地降低災難性資料丟失的風險,需要定期備份資料庫以保留對資料所做的修改。

什麼是備份

備份是指資料庫管理員定期或不定期地將資料庫部分或全部內容複製到磁帶或磁碟上進行儲存的過程。

為什麼用備份

當遇到介質故障、使用者錯誤(例如:誤刪庫或表)、硬體故障(例如,磁碟驅動器損壞或伺服器報廢)、自然災害等造成災難性資料丟失時,可以利用備份進行資料庫的恢復。備份資料庫是可靠保護 sql 資料庫的唯一方法。

備份的四種型別

(1).完整備份

(2)差異備份

(3)事務日誌備份

(4)檔案和檔案組備份

什麼是恢復

恢復模式用於控制資料庫備份和還原的基本行為。

恢復的三種型別

(1).簡單恢復模式

(2)完整恢復模式

(3)大容量日誌恢復模式

基本語法格式

sp_addumpdevice[,

'logical_name'][

,'physical_name'][

,}]

舉例:

要求:建立乙個名為 jxgldisk 的磁碟備份裝置,其物理名稱為 「e:\jxgltdisk 」.

t-sql**如下:

exec sp_addumpdevice 'disk'

,'jxgldisk'

,'e:\jxgldisk.bak'

基本語法格式

sp_dropdevice[

,'logical_name'][

,'']

舉例:

要求:使用儲存過程 sp_dropdevice 刪除名稱為 jxgldisk 的備份裝置,同時刪除物理檔案。

t-sql**如下:

exec sp_dropdevice jxgldisk,delfile
基本語法格式

backup datebase database_name

to[ n]

with[[

,]name=backup_set_name][[

,]descripition=

'text'][

[,]][

[,] ]

舉例:

要求:把「stuinfo」資料庫完整備份到 jxgldisk 的上。

t-sql**如下:

backup datebase stuinfo to jxgldisk
基本語法格式

backup datebase database_name

to[ n]

with

differential [[

,]name=backup_set_name][[

,]descripition=

'text'][

[,]][

[,] ]

舉例:

要求:把「stuinfo」資料庫的差異備份到 jxgldisk 的上。

t-sql**如下:

backup datebase stuinfo to jxgldisk 

with differential

基本語法格式

backup log database_name

to[ n]

with[[

,]name=backup_set_name][[

,]descripition=

'text'][

[,]][

[,] ]

舉例:

要求:把「stuinfo」資料庫的日誌備份到 jxgldisk 的上。

t-sql**如下:

backup log stuinfo to jxgldisk
基本語法格式

restoe datebase database_name

from

[ n]

with

[file

=file_number],[

[,]move 'logical_file_name'

to'operating_system_file_name'][

,...

.n][[,

]}][[,

]replace

]]

其中

::=

| =}

舉例:

要求:把「stuinfo」資料庫完整備份還原。

t-sql**如下:

restore datebase stuinfo from jxgldisk 

with

file=1

,norecovery

差異備份還原與完整備份還原的語法基本一致,必須先還原完整備份,才能進行差異備份還原。

t-sql**如下:

-- 先完整還原

restore datebase stuinfo from jxgldisk

with

file=1

,norecovery

-- 再差異還原

restore datebase stuinfo from jxgldisk

with

file=2

,norecovery

舉例:

要求:把「stuinfo」資料庫完整備份還原。

t-sql**如下:

restore datebase stuinfo from jxgldisk 

with

file=1

,norecovery

基本語法格式

restoe log database_name

from

[ n]

with

[file

=file_number],[

[,]move 'logical_file_name'

to'operating_system_file_name'][

,...

.n][[,

]}][[,

]replace

]]

其中

::=

| =}::=

舉例:

要求:把「stuinfo」資料庫事務日誌還原。

t-sql**如下:

restore log stuinfo from jxgldisk 

with

file=3

,recovery

SQL 備份和恢復

備份 大致分為冷備,熱備。冷備 指定時間進行資料庫的備分。如 在昨天下午5點,進行資料庫冷備,如果現在資料庫出現故障,想恢復資料,只能恢復到昨天下午備份的點。全備 庫中或表中所有資料全部備份。增備 增量備份,比如 在昨天下午5點,進行資料庫全備,從昨天下午5點到現在,資料庫表會增很多資料,對於這個時...

HBase 備份及恢復

注意事項 1.hbase版本需要保持一致,否則資料無法恢復 本方案使用export及import方法,還有其他方法可以實現,暫不涉及。1.備份,以表為單位進行匯出 bin hbase org.apache.hadoop.hbase.mapreduce.export table name dst pa...

hbase 備份及恢復

b 1,hbase自帶的備份恢復工具 b hbase org.apache.hadoop.hbase.mapreduce.export table1 home fred table1 hbase org.apache.hadoop.hbase.mapreduce.import table1 home...