當前位置:首頁 » 操作系統 » 資料庫怎樣備份與恢復

資料庫怎樣備份與恢復

發布時間: 2022-05-06 12:31:56

① 什麼是數據的備份與恢復

數據備份就是把一個資料庫里的東西,在某個時間資料庫管理軟體復制完全另外一個一樣的。

恢復是自從備份了資料庫後,使用資料庫的過程中發現出現了點小問題,導致資料庫有些信息丟失了,並且現在的資料庫中找不到這些信息了,這個時候就可以用備份的資料庫來恢復下這些丟失的信息了。

數據丟失原因:

1、人為誤操作,有時候在使用計算機的過程中不小心刪除了文件,或者不小心將分區進行格式化操作,導致數據丟失。

2、惡意程序的破壞,最常見的惡意程序就是病毒。通常一般病毒是不會造成數據丟失的,但有些病毒有可能會造成硬碟鎖死、分區丟失或數據丟失。

3、系統或軟體錯誤,如在工作中,由於操作系統或應用程序自身存在的BUG引起的死機,會造成工作文檔丟失等現象,還有在升級系統或更新應用程序時有時會帶來一些如影響系統兼容性和穩定性的問題。

以上內容參考網路——數據恢復,網路——數據備份

② oracle 10g 怎麼備份和恢復資料庫。

Oracle10G資料庫中,資料庫文件的備份與恢復可以有很多的方式來實現,這里介紹一種基於用戶管理的備份與恢復。基於用戶管理的備份是指使用OS命令來備份資料庫物理文件。
備份資料庫
資料庫一致性備份:關閉資料庫以後備份資料庫物理文件,這時數據文件scn值完全一致,所以稱之為資料庫的一致性備份或冷備份,適用於歸檔模式與非歸檔模式。
對基於用戶管理的冷備份的暫時理解:在資料庫shutdown狀態下使用OS命令直接拷貝資料庫物理文件。
資料庫非一致性備份:在open狀態下備份資料庫物理文件,這時資料庫內容可能會改變導致數據文件scn不一致,所以稱之為資料庫的非一致性備份或熱備份,只適用於歸檔模式。
基於用戶管理的完全恢復(歸檔模式下)
1.在open狀態下備份資料庫物理文件(資料庫非一致性備份,熱備份,不影響業務運行)
2.刪除數據文件來模擬文件丟失(只是刪除了所有的數據文件;控制文件等其它文件處於正常狀態)
3.對數據文件進行恢復
4.應用歸檔日誌
5.查看數據是否完全恢復
--sysdba執行備份
sql>
conn
/
as
sysdba
Connected.
SQL>
select
name
from
v$datafile;
NAME
--------------------------------------------------------------------------------
/oracle/10g/oracle/proct/10.2.0/oradata/oralife/system01.dbf
/oracle/10g/oracle/proct/10.2.0/oradata/oralife/undotbs01.dbf
/oracle/10g/oracle/proct/10.2.0/oradata/oralife/sysaux01.dbf
/oracle/10g/oracle/proct/10.2.0/oradata/oralife/users01.dbf
/oracle/10g/oracle/proct/10.2.0/oradata/oralife/example01.dbf
SQL>
alter
database
begin
backup;
Database
altered.
SQL>
host
cp
/oracle/10g/oracle/proct/10.2.0/oradata/oralife/*.dbf
/oracle/10g/oracle/bakup/database/
--備份所有數據文件
SQL>
alter
database
backup
controlfile
to
'/oracle/10g/oracle/bakup/database/oralife.ctl';
--備份控制文件
Database
altered.
SQL>
alter
system
archive
log
current;
--歸檔當前日誌組
System
altered.
進行完全恢復
備份的數據文件到指定的目標位置,進行恢復:
SQL>
recover
database
--open狀態
ORA-00283:
recovery
session
canceled
e
to
errors
ORA-01124:
cannot
recover
data
file
1
-
file
is
in
use
or
recovery
ORA-01110:
data
file
1:
'/oracle/10g/oracle/proct/10.2.0/oradata/oralife/system01.dbf'
SQL>
shutdown
immediate
--open狀態
ORA-01122:
database
file
1
failed
verification
check
ORA-01110:
data
file
1:
'/oracle/10g/oracle/proct/10.2.0/oradata/oralife/system01.dbf'
ORA-01208:
data
file
is
an
old
version
-
not
accessing
current
version
SQL>
startup
force
mount;
--進入mount狀態進行恢復
ORACLE
instance
started.
Total
System
Global
Area
528482304
bytes
Fixed
Size
1220360
bytes
Variable
Size
163578104
bytes
Database
Buffers
356515840
bytes
Redo
Buffers
7168000
bytes
Database
mounted.
SQL>
recover
database
Media
recovery
complete.
SQL>
alter
database
open;
Database
altered.
沒有出現應用歸檔日誌,應用歸檔日誌有幾種方式:
Specify
log:
{<RET>=suggested
|
filename
|
AUTO
|
CANCEL}
當在open狀態下對數據文件進行恢復時,應該將其offline,恢復完成後,再將其online;所有的恢復應該盡量在open狀態下完成。

③ 備份和恢復資料庫的命令

MySQL 命令行備份
1,進入MySQL目錄下的bin文件夾:cd MySQL中到bin文件夾的目錄
(SHOW VARIABLES LIKE "%char%"; 查看資料庫安裝路徑)
linux下命令:
[root@linuxsir01 root]# mysqlmp -u root -p oa_int > /home/oa_20160627.sql
Windows下命令:
C:\Users\Administrator>mysqlmp -u 密碼 -p 資料庫名 > d:/oa_int_20160708.sql
MySQL 命令行恢復:
Linux下命令:
[root@linuxsir01 root]# mysql -u root -p oa_int1 < /home/oa_20160627.sql
Enter password:在這里輸入資料庫的密碼
Windows下命令:
C:\Users\Administrator> mysql -u root -p 資料庫名(要先創建好資料庫) < d:/oa_int_20160708.sql

④ 如何恢復備份數據

選擇需要備份的資料庫,右鍵--任務--還原。
如何備份與還原資料庫
如圖點擊添加,選擇我們需要備份到哪裡。
如何備份與還原資料庫
如下圖選擇好路徑後,給備份文件命名。
如何備份與還原資料庫
如何備份與還原資料庫
依次點擊確定,完成以後會提示還原成功。
如何備份與還原資料庫
可以把剛剛那邊備份文件還原到原來的資料庫,也可以還原給一個新的空的資料庫。假設我們還原一個新的資料庫。如圖依次展開
如何備份與還原資料庫
勾上選擇源設備--選擇路徑。
如何備份與還原資料庫
通過添加--找到剛剛我們備份的那個文件。
如何備份與還原資料庫
如何備份與還原資料庫
依次點擊確定後,回到還原資料庫界面,勾上還原文件。
如何備份與還原資料庫
在還原資料庫選項中點擊選項,找到我們這個新建的數據的文件和日誌存放路徑。(如果不知道,可以選中該資料庫--屬性--文件裡面找到默認路徑),勾上覆蓋原有資料庫。確定就OK了。
如何備份與還原資料庫

⑤ SQL資料庫如何自動備份和恢復

在SQL Server 2008資料庫中。為了防止數據的丟失我們就需要按時的來備份資料庫了。要是每天都要備份的話,人工備份會很麻煩的,自動備份的話就不需要那麼麻煩了,只要設置好了,資料庫就會自動在你設置的時間段里備份。那麼自動備份要怎麼設置呢。下面為大家講解。
工具/原料

電腦一台
要安裝SQL Server 2008資料庫。
方法/步驟

1
在電腦開始菜單中選擇「SQL Server Management Studio」雙擊。在出現的界面中點擊「連接」按鈕。

2
在出現的「 Microsoft SQL Server Management Studio」界面中選擇「管理」下的「維護計劃」右擊維護計劃,點擊「維護計劃向導」,

3
在出現的「SQL Server維護計劃向導」界面中點擊「下一步」

在出現的界面中把名稱和說明寫上。然後點擊「更改」設頂備份計劃

在出現的「作業計劃屬性」界面中,更改執行時間,也就是多久備份一次。這里該為每天備份。間隔時間更改為「1」更改執行一次時間為0:00:00也就是在每天的0點自動備份數據。

更改好以後,就可以在下面看到「在每天的 0:00:00 執行。將從 2014-5-16 開始使用計劃。」然後點擊「下一步」按鈕

在選擇維護任務界面中選擇要備份的資料庫文件。然後點擊下一步。

在選擇維護任務順序中,可以移動要備份的資料庫文件的順序。然後點擊「下一步」

在定義「備份資料庫完整」界面中,選擇資料庫後面下拉菜單中的資料庫文件。然後點擊「確定」按鈕

在定義「備份資料庫完整」界面里選擇備份路徑。然後點擊「下一步」

在「選擇報告選項」界面中設置好「報告文本文件」的路徑。然後點擊「下一步」

在出現的「完成該向導」界面中會看到設置備份的詳細信息。

這樣資料庫自動備份就成功了。

⑥ 一個完整的數據備份及恢復方案應包括那些

尊敬的用戶您好:
常見的數據備份與恢復方法有以下幾種:
1.數據備份:數據備份(Backup)是指將計算機硬碟上的原始數據(程序)復制到可移動媒體(Removable Media)上,如磁碟、磁帶、光碟等,在出現數據丟失或系統災難時將復制在可移動媒體上的數據恢復到硬碟上,從而保護計算機的系統數據和應用數據。
2.數據恢復:數據恢復(Recover)是數據備份的逆過程,即將備份的數據恢復到硬碟上的操
作。
3.數據歸檔:數據歸檔(Archive)將硬碟數據復制到可移動媒體上,與數據備份不同的是,數據歸檔在完成復制工作後將原始數據從硬碟上刪除,釋放硬碟空間。數據歸檔一般是對與年度或某一項目相關的數據進行操作,在一年結束或某一項目完成時將其相關數據存到可移動媒體上,以備日後查詢和統計,同時釋放寶貴的硬碟空間。
3.歸檔恢復:歸檔恢復(Retrieve)是數據歸檔的逆操作,將歸檔數據寫回到硬碟上。
4.在線備份:在線備份(On-line backup)是指對正在運行的資料庫或應用進行備份,通常對打開的資料庫和應用是禁止備份操作的,然而現在的有些計算機應用系統要求24小時運轉(如銀行的ATM業務),因此要求數據存儲管理軟體能夠對在線的資料庫和應用進行備份。
5.離線備份:離線備份(Off-line backup)指在資料庫SHUTDOWN或應用關閉後對其數據進行備份,離線
備份通常採用全備份。
6.全備份:全備份(Full backup)是備份策略的一種。執行數據全部備份操作。
7.增量備份:增量備份(Incremental backup)相對全備份而言,是備份策略的一種,只備份上一次備份後數據的改變數。
8.並行技術:並行技術(Parallelism)是指將不同的數據源同時備份/恢復到同一個備份設備/硬碟上。並行技術是考察數據存儲管理軟體性能的一個重要參數,有些廠商的軟體只能支持並行備份,而有的廠商則可以實現並行地備份及恢復;並且,真正有效的並行技術將可以充分利用備份設備的備份速度(帶寬),實現大數據量有限時間備份。
9.數據克隆:數據克隆(Clone)是實現災難恢復的一種重要手段,通過將原始數據同時備份到兩份可移動媒體上,將其中一份備份數據(Clone)轉移到地理位置不同的辦公室存放,在計算機系統發生重大災難如火災,系統連接的
備份設備和備份數據都被損壞的情況下,將重要數據在另一套系統上恢復,保障業務的正常運行。所有數據存儲管理軟體都提供克隆功能。

中國電信提供最優質的網路通訊服務,老友換新機,網齡抵現金,百兆寬頻免費體驗,超清電視iTV,電信活動可以直接通過營業廳查詢。

⑦ 需要實現資料庫的備份和恢復功能,怎樣實現

最好的辦法就是在每一次退出時把資料庫所在的文件進行備份,恢復,就直接把備份的資料庫文件直接覆蓋調老的文件就好了

⑧ SQLServer2008資料庫怎樣備份還原和數據恢復

在完整恢復模式或大容量日誌恢復模式下,必須先備份活動事務日誌(稱為日誌尾部),然後才能在SQLServerManagementStudio中還原資料庫。有關詳細信息,請參閱如何備份事務日誌(SQLServerManagementStudio)。若要還原已加密的資料庫,您必須有權訪問用於加密資料庫的證書或非對稱密鑰。如果沒有證書或非對稱密鑰,資料庫將無法還原。

認識資料庫備份和事務日誌備份

資料庫備份與日誌備份是資料庫維護的日常工作,備份的目的是在於當資料庫出現故障或者遭到破壞時可以根據備份的資料庫及事務日誌文件還原到最近的時間點將損失降到最低點。

資料庫備份

資料庫備份可以手動備份和語句備份

一.手動備份資料庫

1.滑鼠右鍵選擇你要進行備份的資料庫-任務-備份

可以在常規選項頁面你可以選擇備份類型是進行完整資料庫備份還是差異資料庫備份

2.點擊添加選項,選擇資料庫文件的存放路徑

注意文件名記得加後綴.bak,便於恢復時的查找

3.你還可以在選項頁面是追加到現有的備份集,還是覆蓋所有的現有備份集,還可以選擇備份驗證完整性(建議選擇),還可以選擇是否壓縮備份等。

二.語句備份資料庫

use master goBACKUP DATABASE [test] TO DISK = N'D:Microsoft sql serverMSSQL10.MSSQLSERVERMSSQLBackup est.bak' WITH NOFORMAT, NOINIT, NAME = N'test-完整 資料庫 備份', SKIP, NOREWIND, NOUNLOAD, STATS = 10GO

資料庫日誌備份

首先需要注意,資料庫日誌的備份是基於資料庫完整備份,也就是說你備份資料庫日誌之前你首先要先對資料庫進行一次完整的備份,因為之間會涉及到堅持到檢查點 lsn, 這也是本文接下來要講的重點。

一.手動備份資料庫日誌

1.右鍵資料庫-任務-備份-選擇備份類型(事務日誌)

2.點添加,添加日誌文件備份存儲路徑

3.同資料庫完整備份一樣,你也可以選擇覆蓋現有備份集或者追加到現有備份集,這里現在覆蓋現有備份集、驗證完整性,然後確認備份

二.語句備份資料庫事務日誌

BACKUP LOG [test] TO DISK = N'D: est.trn' WITH NOFORMAT, INIT, NAME = N'test-事務日誌 備份', SKIP, NOREWIND, NOUNLOAD, STATS = 10GO

資料庫還原

右鍵資料庫-還原資料庫-添加需要進行還原的資料庫文件路徑

在還原源選項中你可以選擇『源資料庫』,『源設備』。1.選擇源資料庫工具會自動顯示該資料庫之前的一些備份,然後直接選擇需要還原的資料庫備份集。

2.選擇源設備點擊後面的...,添加需要還原的資料庫文件

2.點擊確認還原資料庫

資料庫恢復

資料庫恢復的前提是1.一個完整的資料庫備份2.包含這個完整資料庫備份的事務日誌備份3.完整備份之間也可以存在數個差異備份

對於資料庫維護空間始終是一個比較頭疼的問題,特別是對於大型資料庫而言,每天的日誌文件增長是龐大的,很多資料庫管理員會定時對資料庫日誌文件進行收縮,但是經常收縮會存在收縮完日誌文件還是不能減少,這是因為存在很多活動的日誌無法收縮可以用

DBCC LOGINFO('資料庫名稱')

我們看到
status=0的日誌,代表已經備份到磁碟的日誌文件;而
status=2的日誌還沒有備份。當我們收縮日誌文件時,收縮掉的空
間其實就是
status=0的空間,如果日誌物理文件無法減小,這里一
定能看到非常多status=2的記錄

解決辦法:1.可以分離要收縮的資料庫,然後手動刪除日誌文件,然後附加資料庫,資料庫就會產生一個很小的日誌文件(不推薦使用這種方法)

2.右鍵要出來的資料庫選擇「屬性」-"選項",將恢復模式改成"簡單",然後利用收縮工具可以講日誌文件收縮到很小,收縮完記得講恢復模式改成"完整"

也可以用語句進行處理(dbname是你要進行收縮的資料庫名,dbname_log是你要進行收縮的資料庫的邏輯日誌名稱)

USE [master]
GO ALTER DATABASE [dbname] SET recovery SIMPLE WITH NO_WAIT GO
ALTER DATABASE [dbname] SET RECOVERY SIMPLE --簡單模式
GO
USE [dbname]
GO
DBCC SHRINKFILE (N'dbname_log' , 11, TRUNCATEONLY) GO
USE [master]
GO
ALTER DATABASE [dbname] SET RECOVERY FULL WITH NO_WAIT ALTER DATABASE [dbname] SET RECOVERY FULL

對於第一種方法不贊同使用,首先對於資料庫的分離與附加有時候會破壞資料庫,造成資料庫無法還原,還有就是對於在線資料庫也不允許進行分離操作。

對於第二種方法是slq2008收縮日誌文件的一種方法,但是此方法也不能使用過於頻繁,因為進行資料庫恢復模式的更改會截斷事務日誌文件,這樣的話當時利用事務日誌文件進行恢復的時候檢查點不能包含資料庫文件,而且當你要對事務日誌進行備份的時候會重新提示你需要對資料庫進行完整備份。

舉個例子:比如你昨天晚上進行了一次完整備份,然後同時你也進行了一次日誌備份(提前日誌未被截斷),然後你每個小時進行過一次差異備份,最近的差異備份時間點是14點,如果此時資料庫錯誤修改了數據,你可以立馬備份一個日誌文件將資料庫恢復到日誌備份開始到日誌備份終點前的任意時間點 。

如果此時你進行了修改資料庫模式,截斷日誌進行了收縮,那麼你的數據只能恢復到昨天晚上備份的那個日誌備份時間前的任意時間點,也就是今天所做的資料庫更改無法再恢復了,因為日誌文件已經被截斷了,不知道這樣解釋是否明白

因為日誌文件的檢查點(lsn)是連續的,每一次日誌備份都是在上一次備份的基礎上lsn往後增加的,lsn的范圍也包括了資料庫文件的lsn,也只有日誌文件的lsn包括了資料庫文件的lsn,才能將資料庫文件進行回滾。

上圖中總共有三個備份文件,一個完整備份、一個差異備份、一個日誌備份,大家可以注意觀察完整備份的第一個lsn與最後一個lsn,和檢查點

第二個差異備份文件的的第一個lsn與最後一個lsn,和檢查點,最後的日誌備份的第一個lsn和最後一個lsn包含了前面兩個備份文件的lsn,這種情況資料庫就可以恢復到日誌文件備份前的任意時間點,如果日誌文件沒有包含資料庫文件的最後一個lsn也就無法恢復了。

熱點內容
工業級安卓主板價格怎麼樣 發布:2024-10-07 14:07:57 瀏覽:625
編程先乘除 發布:2024-10-07 13:58:45 瀏覽:268
編譯內核時發生循環編譯 發布:2024-10-07 13:58:43 瀏覽:494
當下筆記本電腦什麼配置好 發布:2024-10-07 12:57:33 瀏覽:468
安卓倒車軌跡怎麼調 發布:2024-10-07 12:54:47 瀏覽:913
問道刷道隊伍怎麼配置 發布:2024-10-07 12:09:17 瀏覽:323
androidservice使用 發布:2024-10-07 12:00:01 瀏覽:261
樂視2安卓版本怎麼升級 發布:2024-10-07 11:51:11 瀏覽:696
方舟電腦版怎麼進入官方伺服器 發布:2024-10-07 11:09:32 瀏覽:807
百度雲快速上傳 發布:2024-10-07 10:52:25 瀏覽:482