資料庫的備份和還原
一、Mysql資料庫備份指令格式:
mysqlmp -h主機名 -P埠 -u用戶名 -p密碼 (–database) 資料庫名 > 文件名.sql
註:直接cmd執行該指令即可,不需要先mysql -u root -p鏈接資料庫
1、備份MySQL資料庫的命令
mysqlmp -hhostname -uusername -ppassword databasename > backupfile.sql
2、備份MySQL資料庫為帶刪除表的格式,能夠讓該備份覆蓋已有資料庫而不需要手動刪除原有資料庫。
mysqlmp -–add-drop-table -uusername -ppassword databasename > backupfile.sql
二、資料庫還原有三種方式:source命令、mysql、gunzip命令
1、source 命令
進入mysql資料庫控制台,
mysql -u root -p
mysql>use 資料庫
然後使用source命令,後面參數為腳本文件(如這里用到的.sql)
mysql>source /home/work/db/bkdb.sql
2、mysql
mysql -hhostname -uusername -ppassword databasename < backupfile.sql
3、gunzip
gunzip < backupfile.sql.gz | mysql -uusername -ppassword databasename
B. SQL server 如何用語句備份和還原數據
1、首先需要選擇你要備份的資料庫,滑鼠右鍵單擊逗唯,選漏孫擇任務-備份。
2、彈出備份資料庫窗口,選擇添加。
3、彈出選擇備份目標窗口,點擊瀏覽。
4、選擇存放備份資料庫的目錄,輸入文件名,後綴名輸入.bak,點擊確定,備份完成。
5、滑鼠右鍵單擊資料庫,選擇還原文件和文件組。
6、目標資料庫欄輸入資料庫名稱,選中源設備,點擊瀏覽選項。
7、然後需要點擊添加山搜培。
8、選擇你要還原的資料庫,點擊確定。
9、選中還原選項,點擊確定,還原完成。
C. 什麼是資料庫的備份和恢復
資料庫備份和恢復要成對出現,但是要在同一個資料庫軟體里用才有效果。比如:用SQL備份的話,你要用SQL的恢復。而不能用ORALCE來恢復。具體操作是選擇要備份和恢復的資料庫,然後右鍵,選擇備份和恢復就可以了。
D. 資料庫的備份與恢復
SQL2000資料庫的備份概念
SQL
SERVER
2000有四種類型是:資料庫、事務日誌、差異、文件和文件組
資料庫備份是創建完事資料庫的復本。它並非將所有的頁都復制到備份集,而只將實際包含數據的頁復制到備份集。數據頁和事務日誌頁均復制到備份集。
資料庫備份用於重新創建資料庫,使其恢復到BACKUP語句完成時的狀態。如果資料庫只存在資料庫備份,那麼資料庫只能恢復到伺服器或資料庫發生故障前最後一次資料庫備份時的狀態。
事務日誌備份僅製作日誌文件的復本。日誌文件備份本身不能用於還原資料庫。日誌文件用於在資料庫還原後將資料庫恢復到原始故障點。
例如,某站點在星期天晚上執行資料庫備份,而在其它每個晚上執行日誌備份。如果資料庫的某個數據磁碟在星期二2:30丟失,則該站點可以:
1備份當前事務日誌
2還原從星期天晚上開始的資料庫備份
3還原從星期一晚上開始的日誌備份,以將資料庫前滾。
4還原故障之後的日誌備份。這將使資料庫前滾到故障發生的那一刻。
事務日誌恢復需要從資料庫備份的那一刻到磁碟丟失那一刻之間所進行的一邊串不間斷的事務日誌備份。
差異備份只追尋資料庫中自上一次資料庫備份之後修改過的所有頁的復本。差異日誌主要用於使用頻繁的系統,一旦這類系統中的資料庫發生故障,必須盡快使其重新聯機。差異備份比完事資料庫備份小,因此對正在運行的系統影響較小。
例如,某個站點在星期天晚上執行完事資料庫備份。在白天每隔4小時製作一個事務日誌備份集,並用當天的備份重寫頭一天的備份。每晚則進行差異備份。如果資料庫的某個數據磁碟在星期四上午9:12出現故障,則該站點可以:
1備份當前事務日誌。
2還原從星期天晚上開始的資料庫備份。
3還原從星期三晚上開始的差異備份,將資料庫前滾到這一時刻。
4還原從早上4點到8點的事務日誌備份,以將資料庫前滾到早上8點。
5還原故障之後的日誌備份,這將使資料庫前滾到故障發生的那一刻。
SQL2000支持備份或還原資料庫中的個別文件或文件組。這是一種相對較完善的備份和還原過程,通常用在具有較高可用性要求的超大型資料庫中。如果可用的備份時間不足以支持完事資料庫備份,則可以在不同的時間備份資料庫的子集。
例如,某站點需要花三小時備份資料庫,並且每天只能用兩個小時執行備份。該站點可在一個晚上備份一半文件或文件級,並在第二個晚上備份另一半。如果包含資料庫文件或文件組的磁碟出現故障,那麼該站點可以只還原丟失的文件或文件組。
該站點還必須進行事務日誌備份,並且在備份文件或文件組之後必須還原所胡事務日誌備份。還可以從完事資料庫備份集中還原文件和文件組。這將回憶恢復速度,因為在第一步只還原已損壞的文件或文件組,而不是整個資料庫。
E. 資料庫如何還原和備份
選擇需要備份的資料庫,右鍵--任務--還原。
如何備份與還原資料庫
如圖點擊添加,選擇我們需要備份到哪裡。
如何備份與還原資料庫
如下圖選擇好路徑後,給備份文件命名。
如何備份與還原資料庫
如何備份與還原資料庫
依次點擊確定,完成以後會提示還原成功。
如何備份與還原資料庫
可以把剛剛那邊備份文件還原到原來的資料庫,也可以還原給一個新的空的資料庫。假設我們還原一個新的資料庫。如圖依次展開
如何備份與還原資料庫
勾上選擇源設備--選擇路徑。
如何備份與還原資料庫
通過添加--找到剛剛我們備份的那個文件。
如何備份與還原資料庫
如何備份與還原資料庫
依次點擊確定後,回到還原資料庫界面,勾上還原文件。
如何備份與還原資料庫
在還原資料庫選項中點擊選項,找到我們這個新建的數據的文件和日誌存放路徑。(如果不知道,可以選中該資料庫--屬性--文件裡面找到默認路徑),勾上覆蓋原有資料庫。確定就OK了。
如何備份與還原資料庫
F. 什麼是數據的備份與恢復
數據備份就是把一個資料庫里的東西,在某個時間資料庫管理軟體復制完全另外一個一樣的。
恢復是自從備份了資料庫後,使用資料庫的過程中發現出現了點小問題,導致資料庫有些信息丟失了,並且現在的資料庫中找不到這些信息了,這個時候就可以用備份的資料庫來恢復下這些丟失的信息了。
數據丟失原因:
1、人為誤操作,有時候在使用計算機的過程中不小心刪除了文件,或者不小心將分區進行格式化操作,導致數據丟失。
2、惡意程序的破壞,最常見的惡意程序就是病毒。通常一般病毒是不會造成數據丟失的,但有些病毒有可能會造成硬碟鎖死、分區丟失或數據丟失。
3、系統或軟體錯誤,如在工作中,由於操作系統或應用程序自身存在的BUG引起的死機,會造成工作文檔丟失等現象,還有在升級系統或更新應用程序時有時會帶來一些如影響系統兼容性和穩定性的問題。
以上內容參考網路——數據恢復,網路——數據備份
G. 在sql中,什麼是資料庫的備份和恢復
通俗的講,資料庫備份就是把數據一份出來,放到你的存儲設備或者電腦備份盤里,如果資料庫數據丟失或者誤刪除,可以通過備份的數據進行恢復。
資料庫還原,就是將之前備份的數據,給還原到資料庫伺服器上
H. 教你如何用SQL備份和還原資料庫
資料庫的備份和恢復一、備份資料庫1、打開SQL企業管理器,在控制台根目錄中依次點開MicrosoftSQLServer2、SQLServer組--雙擊打開你的伺服器--雙擊打開資料庫目錄3、選擇你的資料庫名稱(如論壇資料庫Forum)--然後點上面菜單中的工具--選擇備份資料庫4、備份選項選擇完全備份,目的中的備份到如果原來有路徑和名稱則選中名稱點刪除,然後點添加,如果原來沒有路徑和名稱則直接選擇添加,接著指定路徑和文件名,指定後點確定返回備份窗口,接著點確定進行備份二、還原資料庫
1、打開SQL企業管理器,在控制台根目錄中依次點開MicrosoftSQLServer
2、SQLServer組--雙擊打開你的伺服器--點圖標欄的新建資料庫圖標,新建資料庫的名字自行取
3、點擊新建好的資料庫名稱--然後點上面菜單中的工具--選擇恢復資料庫
4、在彈出來的窗口中的還原選項中選擇從設備--點選擇設備--點添加--然後選擇你的備份文件名--添加後點確定返回,這時候設備欄應該出現您剛才選擇的資料庫備份文件名,備份號默認為1(如果您對同一個文件做過多次備份,可以點擊備份號旁邊的查看內容,在復選框中選擇最新的一次備份後點確定)--然後點擊上方常規旁邊的選項按鈕
5、在出現的窗口中選擇在現有資料庫上強制還原,以及在恢復完成狀態中選擇使資料庫可以繼續運行但無法還原其它事務日誌的選項
在窗口的中間部位的將資料庫文件還原為這里要按照你SQL的安裝進行設置(也可以指弊旁定自己的目錄),邏輯文件名不需要改動,移至物理文件名要根據你所恢復的機器情況做改動,如您的SQL資料庫裝在D:/ProgramFiles/MicrosoftSQLServer/MSSQL/Data,那麼就按照您恢復機器的目錄進行相關改動改動,並且最後的文件名最好改成您當前的資料庫名(如原來是zw0001mdf,現在的資料庫是zw0002,就改成zw0002mdf),日誌和數據文件都要按照這樣的方式做相關的改動(日誌的文件名是ldf結尾的),這里的恢復目錄您可以自由設置,前提是該目錄必須存在(如您可以指定d:/sqldata/zw0002mdf或者d:/sqldata/zw0002ldf),否則恢復將報洞纖錯
6、修改完成後,點擊下面的確定進行恢復,這時會出現一個進度條,提示恢復的進度,恢復完成後系統會自動提示成功,如中間提示報錯,請記錄下相關的錯誤內容並詢問對SQL操作比較熟悉的人員,一般的錯誤無非是目錄錯誤或者文件名重復或者文件名租顫橡錯誤或者空間不夠或者資料庫正在使用中的錯誤,資料庫正在使用的錯誤您可以嘗試關閉所有關於SQL窗口然後重新打開進行恢復操作,如果還提示正在使用的錯誤可以將SQL服務停止然後重起看看,至於上述其它的錯誤一般都能按照錯誤內容做相應改動後即可恢復三、設定每日自動備份資料庫1、打開企業管理器,在控制台根目錄中依次點開
I. 資料庫備份與還原功能的實現
傳統方法用SQL Server作資料庫後台時,一般採用手工的方式利用SQL Server自身提供的可視化工具或SQL語言進行數據的備份還原功能(余正濤等,2003),但是由於SQL Server 的復雜性,操作比較繁瑣,就使得普通用戶對數據的備份與還原有一定的困難,並且容易造成錯誤,可能造成數據丟失等災難性的後果。考慮到系統完整性和可靠性,可在VB 6.0環境下實現SQL Server資料庫的備份與還原工作。
(一)實現思路
為了通過程序實現資料庫備份與還原工作,必須在VB環境下引用SQLDMO,SQLDMO(SQL Distributed Management Objects,SQL 分布式管理對象)封裝了Microsoft SQL Server資料庫中的對象。SQLDMO是Microsoft SQL Server中企業管理器所使用的應用程序介面(包括備份和恢復),允許用支持自動化或COM 的語言編寫應用程序。SQLDMO 對象來自SQLDMO.dll,SQLDMO.dll 是隨 SQL Server 2000 一起發布的。並通過CreateObject("SQLD MO.SQLServer")函數創建新對象,使用SQLServ er.Connect函數經密碼校驗可連接伺服器,再創建備份核心對象SQLDMO.Backup,同時指定備份文件等參數即可實現資料庫備份與還原。具體的備份處理流程如圖8-10所示。
特別注意SQL Server 2000 所安裝的硬碟分區格式是否是NTFS格式,NTFS是最適合安裝SQL Serv⁃er的文件系統。它比FAT文件系統更穩定且更容易恢復。而且它還包括一些安全選項,例如文件和目錄ACL,以及文件加密(EFS)。如果是Fat32格式建議將它改成NTFS格式,因為Fat32支持最大文件為4G,資料庫超過4G通常會提示日誌文件太大之類的錯誤。
圖8-10 資料庫備份處理流程圖
(二)關鍵代碼
'************資料庫備份操作*************
Set gSQLServer=getSQLServer(ServerName,UserName,password)
Private Function BackUpData(gDatabaseName As String,gBkupRstrFileName As String,Server⁃Name As String,UserName As String,password As String)As String
On Error GoTo ErrHandler:
Dim oBackup As SQLDMO.Backup
Dim gSQLServer As SQLDMO.SQLServer
Set tprg=New CProgress
tprg.Title ="正在執行資料庫備份......"
ServerName為伺服器名稱;serName為用戶名;password為超級密碼
'連接伺服器
Set oBackup=New SQLDMO.Backup
Set oBackupEvent=oBackup
gDatabaseName為所要備份數據名稱;gBkupRstrFileName為備份文件名
oBackup.Database=gDatabaseName
oBackup.Files=gBkupRstrFileName
已存在gBkupRstrFileName備份文件名,則覆蓋
If Len(Dir(gBkupRstrFileName))>0 Then
Kill(gBkupRstrFileName)
End If
oBackup.PercentCompleteNotification=1
Screen.MousePointer=vbHourglass
oBackup.SQLBackup gSQLServer
DoEvents
Screen.MousePointer=vbDefault
'清空內存、關閉連接
Set oBackupEvent=Nothing
Set oBackup=Nothing
gSQLServer.Close
Set gSQLServer=Nothing
Set tprg=Nothing
Exit Function
ErrHandler:
m_str狀態=Err.Description
Resume Next
Set tprg=Nothing
End Function
'************資料庫還原操作*************
Private Function RestoreData(gDatabaseName As String,gBkupRstrFileName As String,Server⁃Name As String,UserName As String,password As String)As String
On Error GoTo ErrHandler:
Dim oRestore As SQLDMO.Restore
Dim msg As String
Dim Response As String
Set tprg=New CProgress
tprg.Title ="正在執行資料庫還原......"
Dim gSQLServer As SQLDMO.SQLServer
'ServerName為伺服器名稱;serName為用戶名;password為超級密碼
'連接伺服器
Set gSQLServer=getSQLServer(ServerName,UserName,password)
Set oRestore=New SQLDMO.Restore
Set oRestoreEvent=oRestore
'gDatabaseName為所要還原數據名稱;gBkupRstrFileName為還原文件名
oRestore.Database=gDatabaseName
oRestore.Files=gBkupRstrFileName
Screen.MousePointer=vbHourglass
oRestore.PercentCompleteNotification=1
oRestore.SQLRestore gSQLServer
Screen.MousePointer=vbDefault
'清空內存、關閉連接
Set oRestoreEvent=Nothing
Set oRestore=Nothing
gSQLServer.Close
Set gSQLServer=Nothing
Set tprg=Nothing
Exit Function
ErrHandler:
m_str狀態=Err.Description
Resume Next
Set tprg=Nothing
End Function
'************顯示備份進度*************
'************顯示還原進度*************
End Sub
Private Sub oBackupEvent_PercentComplete(ByVal Message As String,ByVal Percent As Long)
DoEvents
tprg.Value=Percent
End Sub
Private Sub oRestoreEvent_PercentComplete(ByVal Message As String,ByVal Percent As Long)
DoEvents
tprg.Value=Percent