當前位置:首頁 » 編程語言 » sql恢復表級數據
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql恢復表級數據

發布時間: 2023-07-02 14:38:26

㈠ 如何恢復和修復MS sql資料庫的MDF文件[2]

怎麼辦呢?別著急 下面我們舉例說明恢復辦法

A 我們使用默認方式建立一個供恢復使用的資料庫(如test) 可以在SQL Server Enterprise Manager裡面建立

B 停掉資料庫伺服器

C 將剛才生成的數悶談仿據庫的日誌文件test_log ldf刪除 用要恢復的資料庫mdf文件覆蓋剛才生成的資料庫數據文件test_data mdf

D 啟動資料庫伺服器 此時會看到資料庫test的狀態為 置疑 這時候不能對此資料庫進行任何操作

E 設置資料庫允許直接

操作系統表 此操作可以在SQL Server Enterprise Manager裡面選擇資料庫伺服器 按右鍵 選擇 屬性 在 伺服器設置 頁面中將螞纖 允許對系統目錄直接修改 一項選中 也可以使用如下語句來實現

以下是引用片段 usemaster go sp_configure allowupdates go reconfigurewithoverride go

F 設置test為緊急修復模式

update sysdatabases set status= where dbid=DB_ID( test )

此時可以在SQL Server Enterprise Manager裡面看到該資料庫處於 只讀置疑離線緊急模式 可以看到資料庫裡面的表 但是僅僅有系統表

G 下面執行真正的恢復操作 重建資料庫日誌文件

dbcc rebuild_log( test C:Program FilesMicrosoft SQL ServerMSSQLData est_log ldf )

執行過程中 如果遇到下列提示信息

伺服器: 消息 級別 狀態 行

未能排它地鎖定資料庫以執行該操作

DBCC 執行完畢 如果 DBCC 輸出了錯誤信息 請與系統管理員聯系

說明您的其他程序正在使用該資料庫 如果剛才您在F步驟中使用SQL Server Enterprise Manager打開了test庫的系統表 那麼退出SQL Server Enterprise Manager就可以了

正確執行完成的提示應該類似於

警告: 資料庫 test 的日誌已重建 已失去事務的一致性 應運行 DBCC CHECKDB 以驗證物理一致性 將必須重置資料庫選項 並且可能需要刪除多餘的日誌文件

DBCC 執行完畢 如果 DBCC 輸出了錯誤信息 請與系統管理員聯系

此時打開在SQL Server Enterprise Manager裡面會看到資料庫的狀態為 只供DBO使用 此時可以訪問資料庫裡面的用戶表了

H 驗證資料庫一致性(可省略)

dbcc checkdb( test )

一般執行結果如下

CHECKDB 發現了 個分配錯誤和 個一致性錯誤(在資料庫 test 中)

DBCC 執行完畢 如果 DBCC 輸出了錯誤信息 請與系統管理員聯系

I 設置資料庫為正常狀態

sp_dboption test dbo use only false

侍拍如果沒有出錯 那麼恭喜 現在就可以正常的使用恢復後的資料庫啦

J 最後一步 我們要將步驟E中設置的 允許對系統目錄直接修改 一項恢復 因為平時直接操作系統表是一件比較危險的事情 當然 我們可以在SQL Server Enterprise Manager裡面恢復 也可以使用如下語句完成

以下是引用片段 sp_configure allowupdates go reconfigurewithoverride go

lishixin/Article/program/SQL/201311/16354

㈡ sql server怎麼恢復數據

首先sqlserver自帶備份及還原資料庫功能,您需要首先有備份才能進行數據恢復。步驟如下:

以sqlserver2005為例

1、備份;講一下如何備份:

9、還原成功;然後點擊確定等待完成就好了。

㈢ 怎樣在sql sever備份中恢復某一張表中的數據

有個方法很好理解,如下:
1、新建資料庫,另起名,強制恢復原先資料庫的備份。
2、從該新資料庫中把你想要的表DTS到你想到的資料庫中。
方法雖拐彎了一點,但很安全,很好理解。

㈣ 如何在SQL Server中恢復數據

在SQL server 中恢復數據的幾種辦法 自然就是 backup 的 恢復方法 backup 這種方法是最安全 最可靠的方法操作起來也很簡單 只要在 sql server 的 enterprise manager中選擇 restore 就可以了 用T SQL 也可以完成 RESTORE DATABASE test FROM DISK = c:mssql ackup est bak 當然這是用的 文件恢復 如果是 設備恢復 自然也是可以的 可是有的時候 SQL server 是在我們毫無准備的情況下癱瘓的 有的時候是伴隨者 NT 的癱瘓而引起的 (這個時候 豆腐想 牆上 Gates 的畫像有仍了幾個 西紅柿) 怎麼辦呢?這個時候就只有採用 sql server 的 t sql 中提供的系統存儲過程了 sp_atach_db 在這里舉一個簡單的例子 sp_attach_db @dbname = N pubs @filename = N c:mssql datapubs mdf @filename = N c:mssql datapubs_log ldf 這種方法應該說是有很高的成功率的 不過在 實踐中 豆腐聽說 這樣後 資料庫成為只讀的 那也沒有辦法了 如果只有 mdf 沒有 ldf 文件的話 可以使用 sp_attach_single_file sp_attach_single_file_db @dbname = pubs @physname = c:mssql datapubs mdf 這個方法本來是 用來 對 sp_deatach 的操作的反操作 不過直接使用也還是可以成功的 lishixin/Article/program/SQLServer/201311/22066

㈤ sqlserver資料庫表數據誤刪除了 怎麼恢復

恢復sqlserver資料庫表數據步驟如下:

一、心態:

1、務必冷靜,事情已經發生不可慌亂。

2、立即查看當前時間,最好能夠精確到秒,並做記錄。

3、應立即向直接上級反映此事,不可隱瞞,防止事態擴大。

4、如果許可權允許,應當立即停止相關應用,防止有新的數據寫入資料庫。

二、恢復:

1、構建新資料庫以及寫入一些數據

如果查詢發現數據不是你想要的,那麼可以重復上述的操作,從備份事務日誌開始,然後最後選擇時間點的時候在縮小范圍。

㈥ sql資料庫用語句刪除表,怎麼恢復

如何恢復被delete/update的數據

操作步驟

1連接到被刪除資料庫的Db
打開logexplorer選擇"file"->"attachlogfile"->選擇伺服器和登陸方式->"connect"->選擇"資料庫"->"attach"

2查看日誌
在左面操作項目的對話框中選擇"browse"項目->"viewlog"->就可以看到當前的Log記錄了

3恢復數據
右鍵某一條log記錄,選擇"undotransation"->"選擇保存文件名和路徑"->然後打開該文件到查詢分析器里執行
T-sql代碼就可以了


例如:如果log是deletetablewhere...的話,生成的文件代碼就是inserttable....

㈦ SQL資料庫里的表誤刪除要怎麼恢復

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

㈧ sql 刪除表中數據後怎麼恢復

首先有兩種方式可以滿足你的需求:
第一:delete
from
student
該方式下資料庫空間不一定能及時釋放出來,而且如果有identity欄位,之後再插入數據也不會從定義的初始值開始自增。
第二:truncate
table
student
該方式可以及時表空間,也能讓新增數據是identity的初始值為之前建表定義的開始