當前位置:首頁 » 操作系統 » 資料庫還原0

資料庫還原0

發布時間: 2022-07-22 10:16:17

① 為什麼sql server 2005 還原資料庫的時候,進度條一直顯示的是0%,而且出現死機的情況

出現這個問題一般有三種情況:
1.你的資料庫正在佔用,
2.你的備份文件太大
3.你存儲備份文件的硬碟正忙

我感覺你的資料庫像是在佔用,一般連接資料庫的程序,或是開發環境打開著也會導致資料庫佔用。建議先分離或刪除原資料庫再還原,因為分離和刪除有強制關閉連接

② SQL資料庫如何還原

  1. 把資料庫的備份文件放到伺服器的任意目錄下先, 然後按下面的步驟做。

  2. 如何從備份設備還原備份(企業管理器) ,從備份設備還原備份 。

  3. 展開伺服器組,然後展開伺服器。

  4. 展開"資料庫"文件夾,右擊資料庫,指向"所有任務"子菜單,然後單擊"還原資料庫"命令。

  5. 在"還原為資料庫"框中,如果要還原的資料庫名稱與顯示的默認資料庫名稱不同,請在其中進行輸入或選擇。

  6. 若要用新名稱還原資料庫,請輸入新的資料庫名稱。

  7. 說明 為資料庫指定新名稱將自動為從資料庫備份中還原的資料庫文件指定新名稱。

  8. 單擊"從設備",然後單擊"選擇設備"。

  9. 在"還原自"下,單擊"磁帶"或"磁碟",然後選擇還原設備。

  10. 如果沒有出現設備,則單擊"添加"以添加現有的備份設備或創建新的備份設備。

  11. 在"還原資料庫"對話框內,單擊"查看內容"並選擇要還原的備份集。

  12. 說明 此選項將掃描備份集以獲得備份內容信息,該操作可能需要花費較長時間,特別是在使用磁帶設備時。

  13. 如果已經知道要還原的備份集,則在"備份號"中輸入備份集編號。

  14. 在"還原備份集"下執行下列操作之一: 單擊"資料庫 — 完全"還原資料庫備份。

  15. 單擊"資料庫 — 差異"還原差異資料庫備份。

  16. 單擊"事務日誌"應用事務日誌備份。

③ 伺服器在資料庫還原時經常出現「錯誤0:無法裝載DLL Microsoft提示你請誤隨意操作sql資料庫以免對起資料庫

打開查詢分析器,執行以下語句:
drop procere sp_OACreate
drop procere xp_dirtree
drop procere xp_regwrite
exec sp_addextendedproc N' sp_OACreate', N'odsole70.dll'
exec sp_addextendedproc N' xp_dirtree', N' xpstar.dll'
exec sp_addextendedproc 'xp_regwrite', 'xpstar.dll'
可能會再次出現這樣的錯誤:未能找到存儲過程 master.dbo.xp_dirtree|錯誤2812
再次打開查詢分析器,執行以下語句:
use master
EXEC sp_addextendedproc xp_dirtree ,@dllname ='xpstar.dll'

或者
因為系統原因,導自己沒有安裝好SQL的MDAC,所以只要將這個裝好就可以了,具體方法如下:
1、在系統中找c:\windows\inf下的mdac.inf(這里以windows2003為例),點擊安裝。
2、在安裝過程會提示使用系統光碟,如果沒有系統光碟也沒有關系,只需使用查找文件功能,將安裝過程中所需要的文件找到,然後再指定其路徑就可以了,直到安裝完成!
3、完成後,為可了保險起見,可以啟用系統!

④ sqlserver數據還原時總顯示正在執行0%正常嗎

正常
我遇到過的情況有:在備份比較大,且硬碟性能不太好的情況,會出現一直停留在0%的現象,當還原完成後直接跳出對話框。

如果是一直不能還原,停留在0%,那最大的可能是硬碟空間不足

⑤ 有誰知道織夢CMS還原數據時怎麼會一直出現還原0條記錄備份的時候有好多記錄的,類似於下圖的這種情況

被這破問題困擾了2次了,第一次不知道怎麼解決的,解決不完美,這次真的是快哭了。最後找到了問題根源。

問題原因:在安裝織夢的時候新建的資料庫名稱不能是數字開頭,不能帶有特殊符號!而我的就是帶了個特殊符號「-」,導致我數據備份的時候提示的成功,但實際上是失敗了。

解決辦法:在伺服器端用phpMyAdmin進入mysql資料庫,找到你網站使用的資料庫,點操作

最後進入網站後台清除一下系統緩存,重新全站生成一次,再做數據備份。這次的數據備份就是完整的數據了,拿到新的伺服器上去也可以正常恢復了。

⑥ 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也就無法恢復了。

⑦ SQL資料庫如何還原

  1. 把資料庫的備份文件放到伺服器的任意目錄下先, 然後按下面的步驟做。

  2. 如何從備份設備還原備份(企業管理器) ,從備份設備還原備份 。

  3. 展開伺服器組,然後展開伺服器。

  4. 展開"資料庫"文件夾,右擊資料庫,指向"所有任務"子菜單,然後單擊"還原資料庫"命令。

  5. 在"還原為資料庫"框中,如果要還原的資料庫名稱與顯示的默認資料庫名稱不同,請在其中進行輸入或選擇。

  6. 若要用新名稱還原資料庫,請輸入新的資料庫名稱。

  7. 說明 為資料庫指定新名稱將自動為從資料庫備份中還原的資料庫文件指定新名稱。

  8. 單擊"從設備",然後單擊"選擇設備"。

  9. 在"還原自"下,單擊"磁帶"或"磁碟",然後選擇還原設備。

  10. 如果沒有出現設備,則單擊"添加"以添加現有的備份設備或創建新的備份設備。

  11. 在"還原資料庫"對話框內,單擊"查看內容"並選擇要還原的備份集。

  12. 說明 此選項將掃描備份集以獲得備份內容信息,該操作可能需要花費較長時間,特別是在使用磁帶設備時。

  13. 如果已經知道要還原的備份集,則在"備份號"中輸入備份集編號。

  14. 在"還原備份集"下執行下列操作之一: 單擊"資料庫 — 完全"還原資料庫備份。

  15. 單擊"資料庫 — 差異"還原差異資料庫備份。

  16. 單擊"事務日誌"應用事務日誌備份。

⑧ 資料庫備份與還原功能的實現

傳統方法用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

⑨ 織夢資料庫備份之後還原一直是 0 條記錄被還原

試試直接在織夢後台備份資料庫,不需要幾個小時啊,數據不上G的話很快的。還原記錄一直是0的話就是代表還原不成功,這種情況很可能就是資料庫沒備份成功

熱點內容
共享文件夾加密軟體 發布:2025-01-20 13:08:41 瀏覽:40
標識符是怎樣存儲的 發布:2025-01-20 13:08:39 瀏覽:894
怎麼看安卓大屏什麼牌子 發布:2025-01-20 13:08:35 瀏覽:258
ios開發java 發布:2025-01-20 13:02:42 瀏覽:881
速騰有側燈的是哪個配置 發布:2025-01-20 13:01:53 瀏覽:371
社保用戶名和密碼都忘記了怎麼辦 發布:2025-01-20 12:55:55 瀏覽:321
最優存儲形式是什麼 發布:2025-01-20 12:51:32 瀏覽:27
centos編譯php7 發布:2025-01-20 12:33:52 瀏覽:920
android本地伺服器搭建伺服器 發布:2025-01-20 12:17:54 瀏覽:474
安卓兩個焊點怎麼接 發布:2025-01-20 12:15:15 瀏覽:936