❶ sql server 刪除數據錯誤能還原嗎
一、在LOG文件完整的情況下,可以還原。但一般而言,是將資料庫的整個的狀態還原到誤刪除數據之前。建議備份當前資料庫。
二、給出SQL 2008下的具體做法,別的版本的SQL Server可參照操作。
最常用的就是日誌尾部備份恢復法。以下環境2008R2,對於2008及其以上版本可以使用這個方法,其實2005也可以,2000很少用,沒測試過。(SQL2008之前可以使用Log Exploer這個第三方工具。)
步驟:(1)、檢查資料庫的恢復模式,如圖:
點確定,完成後再檢查一下表,可以看到,數據已經還原成功。
**************************************************************************
總結:
1、方法看上去有點繁瑣,但是實際操作並不太難。
2、再次強調,先備份現場環境,無論故障影響有多嚴重,保全好當時情況。如果並不是重要生產數據,當別論。
3、步驟建議嚴格按照上面提示,對重要資料庫實際操作前建議先在測試資料庫中演練並理解後再正式操作。
額外提醒,此方法的缺點:
1、如果誤操作以後還有很多人做了操作,還原後,連著別人的操作數據都會沖掉,所以發生誤操作後,應考慮停止它人對資料庫的操作。。
2、此方法要對資料庫獨占,操作過程中,它人無法使用與聯接資料庫。
❷ SQL表中數據誤刪了 有辦法恢復嗎
不能恢復的。我們是學軟體技術的,通常都做好備份工作,刪了就只有多花點時間重新創建資料庫表了。
❸ 刪除了SQL SERVER資料庫文件,怎麼恢復正常求大神指點。
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。幸好朋友的資料庫文件不大,用它完成了誤刪除數據的恢復。
下面分享一下用Recovery for SQL Server進行恢復的操作步驟:
1. 運行Recovery for SQL Server
2. 點擊菜單中的 File > Recover,選擇要恢復的資料庫的數據文件(.mdf)
3. Next > Next,進入 Recovery Configuration 界面,選擇Custom(選擇了Custom才可以選擇從日誌中恢復誤刪除的數據)。
4. Next 進入 Recovery options 窗口,選中 Search for deleted records,並選擇要恢復的資料庫的日誌文件路徑(log file path)。
5. Next 並選擇目標文件夾(Destination folder),用於存放恢復過程中生成的SQL語句與bat文件。
6. 點擊Start,開始恢復操作(在上一步選擇的目標文件夾中生成相應的SQL文件與Bat文件),然後,出現 SQL Server Database Creation Utility 窗口。
7. Next,選擇被恢復數據存放的目標資料庫。
8. Next, 選擇 Import availiable data from both database and log files
9. Next, Next, 然後就完成數據的恢復!
❹ SQL資料庫里的表誤刪除要怎麼恢復
1、實現運行Recovery for SQL Server操作如下。
❺ 錯刪掉sql資料庫怎麼找回
我認為有兩個辦法:
1、如果能夠備份「置疑」資料庫的話,現備份出來,然後刪除該資料庫,最後由備份出來的文件恢復。
2、如果無法備份可以採取先停止sql server,然後到sql安裝目錄的data(系統默認時這里,也可能在其他你放置的目錄下)目錄下找到該「置疑」資料庫文件和日誌文件拷貝到其他目錄,啟動sql server,刪除該資料庫,將考出的資料庫文件和日誌文件考回原目錄,最後用這兩個文件通過資料庫附加的方法恢復原資料庫。
❻ SQL資料庫里的表誤刪除要怎麼恢復
1、實現運行Recovery for SQL Server操作如下。
❼ sql server資料庫被刪除怎麼恢復
方法1:
在
master
中執行
exec
sp_detach_db
'fj20070116',
'true'
接下來到相應的資料庫文件目錄下刪除log文件
exec
sp_attach_db
@dbname
=
n'fj20070116',
@filename1
=
n'f:\microsoft
sql
server\mssql\data\fj20070116_data.mdf'
執行結果如下(表明刪除日誌成功,並重建資料庫日誌文件):
設備激活錯誤。物理文件名
'f:\microsoft
sql
server\mssql\data\fj20070116_log.ldf'
可能有誤。
已創建名為
'f:\microsoft
sql
server\mssql\data\fj20070116_log.ldf'
的新日誌文件。
方法2:
選中要分離的資料庫,先將其分離。
刪除對應的日誌文件。
資料庫--所有任務--附加資料庫--在附加資料庫的彈出框中選擇mdf
選擇是即可完成創建新的資料庫日誌文件。對資料庫操作沒有任何影響。
以上兩個方法生成的log文件只有504kb。
❽ 在sql裡面把資料庫刪除了怎麼恢復
不同的資料庫有不同的恢復方式。
Oracle 11g之後有快閃記憶體回歸機制,在一定的時間內可以從快閃記憶體中恢復數據。
MySQL資料庫則在開啟了binlog日誌的情況下,可以通過binlog日誌恢復被刪除的數據。
❾ sqlserver資料庫表數據誤刪除了 怎麼恢復
恢復sqlserver資料庫表數據步驟如下:
一、心態:
1、務必冷靜,事情已經發生不可慌亂。
2、立即查看當前時間,最好能夠精確到秒,並做記錄。
3、應立即向直接上級反映此事,不可隱瞞,防止事態擴大。
4、如果許可權允許,應當立即停止相關應用,防止有新的數據寫入資料庫。
二、恢復:
1、構建新資料庫以及寫入一些數據
如果查詢發現數據不是你想要的,那麼可以重復上述的操作,從備份事務日誌開始,然後最後選擇時間點的時候在縮小范圍。
❿ 資料庫被刪除了怎麼恢復
恢復步驟:
1、運行EasyRecovery。
2、選擇「DeletedRecovery」。
3、選擇資料庫文件所在的驅動器,在「File Filter」中輸入*.mdf|*.ldf,選擇「Next」。
4、在左側窗口會列出被刪除的資料庫文件,選擇所要恢復的資料庫文件,選擇「Next」。
5、在「Recover to Local Drive」中選擇恢復後的文件存放的路徑,要選擇與原資料庫文件不同的路徑,選擇「Next」。
6、文件被恢復後,將恢復的文件復制到原資料庫文件位置,並在企業管理器通過附加資料庫,將恢復的文件恢復到SQL Server中。
註:如果刪除的資料庫文件所有的存儲區域被寫過了,就無法恢復了,所以刪除與恢復的時間間隔越短越好。