當前位置:首頁 » 數據倉庫 » 新鄉資料庫恢復
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

新鄉資料庫恢復

發布時間: 2022-05-19 00:28:07

Ⅰ 如何還原資料庫

必須將所有資料庫還原到相同的標記,以確保各個資料庫間的事務狀態一致。有關詳細信息,請參閱標記的事務、完整備份和日誌備份。如果目標系統中只有一個伺服器,請確保還原了所有日誌備份集(除了最新日誌備份集以外)。有關詳細信息,請參閱查看已還原備份的歷史記錄。如果沒有還原所有日誌備份集,並且當前沒有運行還原作業,請運行還原作業(必要時,請手動運行)。如果存在尚未完成的可還原備份集,則作業將處理它們,直到所有備份集全部還原為止。如果目標系統中有多個伺服器,則必須將所有伺服器還原到相同的備份集。您必須查看每個伺服器的還原歷史記錄,確保所有伺服器上還原的最新日誌備份集都是相同的。如果不同,則必須在需要還原最新日誌備份集的每個伺服器上手動運行還原作業。當所有的伺服器都還原為相同的備份集後,最終的備份集可以手動還原。adm_BackupHistory 表是記錄源系統日誌傳送過程歷史記錄的核心。所有執行的備份工作都記錄到此表中。目標系統中的所有伺服器都從此表讀取信息,以獲取執行其還原工作所需的信息。注意 如果從備份還原 BAM 主導入資料庫,則還應該使用該 BAM 主導入資料庫備份之前的備份來還原 BAM 存檔資料庫、BAM 星型架構資料庫和 BAM 分析資料庫。有關詳細信息,請參閱備份和還原 BAM。
注意 如果將源資料庫的完整備份或日誌備份從備份 BizTalk Server 作業放置它們的位置上移走,則應該更新目標系統上 bts_LogShippingDatabases 表中該資料庫的相關行,將 LogFileLocation 或 DBFileLocation 設置為目標系統應從中讀取完整/日誌備份文件的新位置。運行 bts_ConfigureBtsLogShipping 存儲過程時,將填充此表。默認情況下,這些列設置為空,這表明目標系統應該從 adm_BackupHistory 表中存儲的位置上讀取這些備份文件。
重要提示 請總是在某個安全位置保留備份文件的一個副本。即使您進行了日誌備份,在沒有備份文件的情況下也無法還原資料庫。
前提條件若要執行此過程,必須以 sql Server sysadmin 固定伺服器角色成員的帳戶登錄。還原資料庫 (SQL Server 2008 R2/SP1)在確定為目標系統的計算機上,依次單擊「開始」、「所有程序」、「Microsoft SQL Server 2008 R2」和「SQL Server Management Studio」。在「連接到伺服器」對話框中,指定目標系統上 SQL Server 的名稱,然後單擊「連接」,連接到相應的 SQL Server。在「Microsoft SQL Server Management Studio」中,依次雙擊相應的伺服器、「SQL Server 代理」和「作業」。在詳細信息窗格中,右鍵單擊「BTS 日誌傳送 - 獲取備份歷史記錄」,然後單擊「禁用」。在「禁用作業」對話框中,該狀態更改為「成功」。在詳細信息窗格中,右鍵單擊「BTS 日誌傳送 - 還原資料庫」,然後單擊「禁用」。在「禁用作業」對話框中,該狀態更改為「成功」。在詳細信息窗格中,右鍵單擊「BTS 日誌傳送 - 還原到標記」,然後單擊「作業開始步驟…」。出現「開始 <servername> 上的作業」對話框時,單擊「步驟 ID 1」(默認情況下處於選中狀態),然後單擊「開始」。 「開始 <servername> 上的作業」對話框將關閉,而「開始作業 - <servername>」對話框仍打開。此對話框將顯示正在運行的作業的進度和狀態。當作業完成後,檢查「狀態」是否為成功,然後單擊「關閉」。如果「狀態」為錯誤,請單擊「消息」欄位中的鏈接,以獲取有關該問題本質的詳細信息。如果該作業成功,則 SQL Server 代理作業和 BizTalk Server 資料庫會還原到目標系統。在以前編輯 SampleUpdateInfo.xml 文件所使用的、運行 BizTalk Server 的計算機上打開命令提示。導航到以下目錄:驅動器:\Program Files\Microsoft BizTalk Server 2010\Schema\Restore。注意 在64 位計算機中,請瀏覽至以下文件夾:%SystemDrive%\Program02Files02(x86)\\Bins32\Schema\Restore。
在命令提示符下,鍵入以下內容:cscript UpdateDatabase.vbs SampleUpdateInfo.xml此腳本可更新存儲其他資料庫的位置信息的所有表。注意 您只需在 BizTalk 組中的一個伺服器上運行 UpdateDatabase.vbs。
注意 在64 位計算機上,必須從 64 位命令提示符下運行 UpdateDatabase.vbs。
將編輯後的 SampleUpdateInfo.xml 文件復制到 BizTalk Server 組中每個運行 BizTalk Server 的計算機上的 驅動器:\Program Files\Microsoft BizTalk Server 2010\Schema\Restore 目錄中。注意 在64 位計算機中,請瀏覽至以下文件夾:%SystemDrive%\Program02Files02(x86)\\Bins32\Schema\Restore。
按照步驟 7 中的說明,在 BizTalk Server 組中的每個計算機上打開命令提示符窗口。導航到以下目錄:驅動器:\Program Files\Microsoft BizTalk Server 2010\Schema\Restore。注意 在64 位計算機中,請瀏覽至以下文件夾:%SystemDrive%\Program02Files02(x86)\\Bins32\Schema\Restore。
在命令提示符下,鍵入以下內容:cscript UpdateRegistry.vbs SampleUpdateInfo.xml此腳本可更新存儲其他資料庫的位置信息的所有注冊表項。注意 您需要在 BizTalk 組中的每個伺服器上運行 UpdateRegistry.vbs。
注意 在64 位計算機上,必須從 64 位命令提示符下運行 UpdateRegistry.vbs。
重新啟動所有 BizTalk Server 服務。有關如何重新啟動 BizTalk Server 服務的詳細信息,請參閱如何啟動、停止、暫停、恢復或重新啟動 BizTalk Server 服務。還原資料庫後,必須重新啟動 Windows 管理規范服務。依次單擊「開始」、「運行」,然後鍵入 services.msc,最後單擊「確定」。如果顯示「用戶訪問控制」對話框,請驗證描述的操作是否為您希望的操作,然後單擊「繼續」。右鍵單擊「Windows 管理規范」,然後單擊「重新啟動」。在用於管理 BizTalk Server 的計算機上,依次單擊「開始」、「所有程序」、Microsoft BizTalk Server 2010,然後單擊「BizTalk Server 管理」。在控制台樹中,右鍵單擊「BizTalk 組」,然後單擊「刪除」。在控制台樹中,右鍵單擊「BizTalk Server 2010 管理」,然後單擊「連接到現有組」。在「連接到現有 BizTalk Server 配置資料庫」對話框的「SQL Server 名稱」下拉列表框中,選擇充當 BizTalk 管理資料庫宿主的 Microsoft SQL Server 實例的名稱。在選擇 SQL Server 的實例時,BizTalk Server 將自動嘗試檢測該計算機上的 BizTalk Server BizTalk Server 資料庫。在「資料庫名稱」下拉列表框中,選擇要連接到的 BizTalk 管理資料庫 (BizTalkMgmtDb),然後單擊「確定」。 BizTalk Server 管理控制台將 BizTalk 組添加到控制台樹中。您的BizTalk Server 現已還原,應該正在運行。您現在應該配置備份 BizTalk Server 作業,以開始向新目標伺服器寫入備份。還應該重新配置新的目標系統。重要提示 如果使用的是規則引擎,則在還原資料庫後,必須重新啟動 BizTalk Server 組中的每個伺服器上的規則引擎更新服務。有關如何重新啟動規則引擎更新服務的詳細信息,請參閱如何啟動、停止、暫停、恢復或重新啟動 BizTalk Server 服務。
注意 如果使用的是 BAM,則此時還原 BAM 資料庫。

Ⅱ 資料庫刪除數據了怎麼恢復

資料庫刪除了數據是一個很棘手的問題,數據的刪除首先包括三個層面:

1.刪除放入回收站,沒有在回收站中清除數據。這種情況是最簡單的,進入回收站,找到刪除的數據,右擊選擇恢復。

2.刪除後未放入回收站或者刪除後清空回收站,盡量先不要往原數據所在盤符下儲存內容,剛剛刪除的數據只是文件結構被刪除,真正的文件數據還沒被覆蓋。通過數據恢復軟體是可以找回來的,專業的軟體例如有超級兔子數據恢復軟體

3.如果是刪除很久以後才想到資料庫數據要恢復,並且磁碟一直在使用,磁碟被填滿的話數據就已經被覆蓋了,這樣的數據是無法找回的。

Ⅲ 資料庫被刪除要怎麼恢復

如果是剛刪除,可以找數據恢復工具回復,如果不會可以花錢找專門的公司恢復數據,一般來說數據剛被刪除只會刪除文件分配表而不會刪除數據體,只要恢復被刪除的文件分配表了數據自然恢復,數據要真正被刪除需要做覆蓋操作,如果做了覆蓋操作,那麼就需要專業的數據恢復公司做數據痕跡恢復,一般來說要完全消除數據痕跡需要磁碟被覆蓋7次以上,當然如果要做到阻止數據恢復可能一次覆蓋就夠了,當然著看運氣。

Ⅳ 怎麼恢復mysql資料庫

mysql資料庫恢復方法:
方法一:
命令恢復資料庫:
mysql -u root –password=root密碼 資料庫名 < 備份文件.sql
方法二:
第一步:用管理員許可權登錄並進入後台管理界面,點「資料庫->資料恢復」。
第二步:在數據恢復設置中選擇「從本地文件」進行恢復,然後通過右邊的「瀏覽」按鈕找到之前保存下來的.sql文件。
第三步:點「提交」按鈕後將出現詢問「分卷數據成功導入資料庫,需要自動導入本次其他的備份嗎?」一般繼續點「確定」按鈕即可。之後的資料庫文件就完全導入到當前網站了。這時出現再次要求輸入管理員帳號的提示。訪問網站地址時也會看到所有信息都恢復到備份資料庫時的內容了。
小提示:
不管採取哪種方式備份和恢復資料庫,一定要注意備份和恢復時使用的版本要相同,甚至是語言種類也要一致,否則會存在亂碼的問題。

Ⅳ 關於資料庫恢復

都是可以的。通常我們恢復是到原來路徑。但是

打開恢復策略時,可以指定相應的位置。

以symantec BE11d,這個是Symantec收購後的產品,windows版本。

應該界面和功能相似,

因此,恢復策略中有兩個一個MSsql選項,一個是對默認網路伺服器路徑的恢復。

一個是對MSsql重定向,即恢復到除原始路徑外,其他路徑的指定。

不過需要相應的right。

Ⅵ 資料庫恢復的資料庫恢復的三種方式

資料庫可能因為硬體或軟體(或兩者同時)的故障變得不可用,不同的故障情況需要不同的恢復操作。我們必須決定最適合業務環境的恢復方法。在資料庫中恢復有3種類型或方法,即應急(crash)恢復、版本(version)恢復和前滾(rool forward)恢復。 應急恢復用於防止資料庫處於不一致或不可用狀態。資料庫執行的事務(也稱工作單元)可能被意外中斷,若在作為工作單位一部分的所有更改完成和提交之前發生故障,則該資料庫就會處於不一致和不可用的狀態。這時,需要將該資料庫轉化為一致和可用的狀態。
為此,需要回滾未完成的事務,並完成當發生崩潰時仍在內存中的已提交事務。如在COMMIT語句之前發生了電源故障,則在下一次重新啟動並再次訪問該資料庫時,需要回滾到執行COMMMIT語句前的狀態。回滾語句的順序與最初執行時的順序相反。 這種恢復技術是版本恢復的一個擴展,使用完整的資料庫備份和日誌相結合,可以使一個資料庫或者被選擇的表空間恢復到某個特定時間點。如果從備份時刻起到發生故障時的所有日誌文件都可以獲得的話,則可以恢復到日誌上涵蓋到的任意時間點。前滾恢復需要在配置中被明確激活才能生效。

Ⅶ 資料庫中的數據刪除後還能恢復嗎

SQL Server中誤刪除數據的恢復本來不是件難事,從事務日誌恢復即可。但是,這個恢復需要有兩個前提條件:
1. 至少有一個誤刪除之前的資料庫完全備份。
2. 資料庫的恢復模式(Recovery mode)是「完整(Full)」。
針對這兩個前提條件,會有三種情況:
情況一、如果這兩個前提條件都存在,通過SQL語句只需三步就能恢復(參考文章),無需藉助第三方工具。
a) 備份當前資料庫的事務日誌:BACKUP LOG [資料庫名] TO disk= N'備份文件名' WITH NORECOVERY
b) 恢復一個誤刪除之前的完全備份:RESTORE DATABASE [資料庫名] FROM DISK = N'完全備份文件名' WITH NORECOVERY, REPLACE
c) 將資料庫恢復至誤刪除之前的時間點:RESTORE LOG [資料庫] FROM DISK = N'第一步的日誌備份文件名' WITH STOPAT = N'誤刪除之前的時間點' , RECOVERY
情況二、如果第1個前提條件不存在,第2個前提條件存在,需要藉助第三方工具。
情況三、如果第2個前提條件不存在,無法恢復。所以,一定要將資料庫恢復模式設置為「完整(Full)」。
我現在面臨的是第二種情況,需要找第三方工具。
開始找的是Log Explorer for SQL Server,不支持SQL Server 2008。
後來找的是SQL Log Rescue,也不支持SQL Server 2008。
接著找到的是SysTools SQL Recovery,支持SQL Server 2008,但需要購買,Demo版並沒有數據恢復功能。
最終在officerecovery.com上找到Recovery for SQL Server,雖然也是商業軟體,需要購買,但Demo版可以恢復數據,只要資料庫文件不超過24Gb。幸好朋友的資料庫文件不大,用它完成了誤刪除數據的恢復。

Ⅷ sqlserver資料庫數據被刪除了怎麼還原

在sqlserver2012的維護計劃向導中,要建立完整備份,差異備份和事務日誌。

Ⅸ 資料庫被刪除了怎麼恢復

恢復步驟:
1、運行EasyRecovery。
2、選擇「DeletedRecovery」。
3、選擇資料庫文件所在的驅動器,在「File Filter」中輸入*.mdf|*.ldf,選擇「Next」。
4、在左側窗口會列出被刪除的資料庫文件,選擇所要恢復的資料庫文件,選擇「Next」。
5、在「Recover to Local Drive」中選擇恢復後的文件存放的路徑,要選擇與原資料庫文件不同的路徑,選擇「Next」。
6、文件被恢復後,將恢復的文件復制到原資料庫文件位置,並在企業管理器通過附加資料庫,將恢復的文件恢復到SQL Server中。
註:如果刪除的資料庫文件所有的存儲區域被寫過了,就無法恢復了,所以刪除與恢復的時間間隔越短越好。

Ⅹ 如何恢復資料庫

可是提交到伺服器之後,一切顯地都無比陌生。因為不熟悉SQL,准確來說就只會點Select,Update,Delete,Insert而已。昨天不小心誤刪了一張數據不多但是不在人工處理范圍內的一張表內的數據。因為知道SQL Server是有日誌這種東西的,事後我表現地無比淡定,在事發一個小時以內。一個小時之後,我發現我無法掌控這一事件了。上網查找了恢復數據的辦法。有必要啰嗦一下。 問題1:無論是遠程端還是伺服器端,都無法對資料庫(假設資料庫叫Test)進行除『增刪查改』的其它操作,譬如分離,離線,還原...錯誤提示是e.g.1 「無法分離 Test 資料庫 因為它當前正在使用。」e.g.2 「因為資料庫正在使用,未獲得對數據的排他訪問權,操作異常終止」反正嘛,就是說你丫不能阻止別人的訪問。可我們就是要這樣做的...只好跟它說拜拜了。 說拜拜的方法就是關掉所有訪問資料庫Test的進程。createproc killspid (@dbnamevarchar(20)) asbegindeclare@sqlnvarchar(500) declare@spidintset@sql='declare getspid cursor for select spid from sysprocesses where dbid=db_id('''+@dbname+''')'exec(@sql) open getspid fetchnextfrom getspid into@spidwhile@@fetch_status<>-1beginexec('kill '+@spid) fetchnextfrom getspid into@spidendclose getspid deallocate getspid end--用法use master exec killspid '資料庫名'PS:代碼我是這樣理解的,定義一段殺死訪問資料庫進程的存儲過程。寫一段獲取進程ID的代碼,循環殺死每一個進程。最後調用存儲過程。雖然不了解存儲過程,但是意思就是這樣的吧。 問題2:沒有備份資料庫,那該如何恢復數據呢有個軟體叫做Log Explorer 這個東西可以根據資料庫的日誌回到過去的任何一個時刻。View Code Log Explorer for SQL Server 是個好東西,但是這根本無法解決我的問題。資料庫在伺服器端,學校根本不會讓我安裝一個軟體在伺服器上面。而且我證實過,這個軟體必須要在伺服器端裝伺服器端軟體的。所以,這個對於我來說,是泡湯的。但是不代表這不是一個利器。 最後我用了一個很蛋疼的方法解決了。1.分離資料庫,備份一個Test;2.將資料庫附加回去,用自帶的恢復方式恢復到一個很久以前的狀態;3.將需要的那張表復制到備份的那個資料庫;4.將備份的那個資料庫掛回去,原資料庫刪了。 這是一個很蛋疼而且碰巧那張表沒被改的方法。頭一次知道DBA的重要性。我的方法是一個很偶然的東西,希望大家分享一下真正能解決恢復問題的辦法。當然,每隔一段時間備份是絕對沒有錯的。 方法 另外發現一個比較有技術性的可行的方法 1,如果誤操作之前存在一個全庫備份(或已有多個差異備份或增量備份),首先要做的事就是進進行一次日誌備份 (如果為了不讓日誌文件變大而置trunc. log on chkpt.選項為1那你就死翹了)backuplog dbName todisk='fileName'----注意:是日誌備份! 2,恢復一個全庫備份,注意需要使用with norecovery,如果還有其他差異或增量備份,則逐個恢復 restoredatabase dbName fromdisk='fileName'with norecovery 3,恢復最後一個日誌備份即剛做的日誌備份,指定恢復時間點到誤操作之前的時刻 restorelog dbName fromdisk='fileName'with stopat='date_time' 完整代碼View Code 經過驗證,這才叫有技術性!我那純屬「鄧艾的屯『田』」小孩子過家家。。。