withreplace資料庫
① sql恢復修改前數據
一,如果是oracle資料庫,且剛刪除不久,那麼可以執行下面語句
insert
into
表名
select
*
from
表名
as
of
timestamp
to_timestamp('2007-07-23
10:20:00',
'yyyy-mm-dd
hh24:mi:ss');
語句中的日期時間改成你誤操作之前的最近時間
二,如果是sqlserver資料庫,那麼
1、首先對誤刪後的資料庫做個日誌備份;
backup
log
資料庫名
to
disk='路徑及日誌備份文件名'
2、把資料庫恢復到最近一次全庫備份的日期;
RESTORE
DATABASE
資料庫名
FROM
DISK='路徑及資料庫備份文件名'
WITH
REPLACE,NORECOVERY
3、用步驟1的日誌備份把資料庫恢復到你誤刪的那一刻之前;
RESTORE
LOG
資料庫名
FROM
DISK='路徑及日誌備份文件名'
WITH
RECOVERY,STOPAT='2009-4-24
16:40:10'
語句中的日期時間改成你誤操作之前的最近時間
三,如果修改之前有做資料庫備份,可以新建一個庫,把備份還原上去,導出表數據,再導入到現在用的庫中去。.
實時備份資料庫到另一個磁碟,有多種不同的實現方式,例如:
1,有兩台伺服器的話可以做雙機熱備
2,只有一台伺服器可以做磁碟鏡像
3,也可以用專門的資料庫備份軟體
② sql2005還原資料庫報錯
可能是你的資料庫伺服器中存在同名資料庫!
RESTORE DATABASE [aft_shop] FROM DISK = N'G:\備份文件' WITH FILE = 1, MOVE N'aft_shop' TO N'G:\aft_shop.mdf', MOVE N'aft_shop_log' TO N'G:\\aft_shop.ldf', NOUNLOAD,REPLACE, STATS = 10, PASSWORD = 'xxxx'
所以 在WITH 後加入 REPLACE 或 STOPAT 就可以還原啦 !但同名資料庫可能被覆蓋!
③ sql 資料庫備份與還原命令時什麼怎麼用急!!!
1.備份資料庫
BAKUP DATABASE db_name
TO device
with
BLockSize=
Description='db_name資料庫備份'
Differential,
ExpireDate=
RetainDays=
Password=
Format|Noformat
MediaName=
MediaDescription=
MediaPassword=
Name=
Init|Noinit
Skip|NoSkip
Unload|NoUnload
NoRewind|Rewind
Restart
Stats=
2.備份數據事務日誌
BAKUP LOG db_name
TO device
with
BLockSize=
Description='db_name資料庫事務日誌備份'
ExpireDate=
RetainDays=
Password=
Format|Noformat
MediaName=
MediaDescription=
MediaPassword=
Name=
Init|Noinit
Skip|NoSkip
Unload|NoUnload
NoRewind|Rewind
NoRecovery|Standby=
Notruncate(清除事務日誌的非活動部分,鏈尺但SQL Server記錄Bakuo Log命令)|NO_LOG(清除事務日旦迅志的非活動部分,不記錄Bakup Log命令)|TruncatePOnly(備份事務日誌)
Restart
Stats=
3.恢復資料庫
Restore Database db_name
From device
With
Restricted_User
File=恢復具有多個備份子集的備份介質中的那個備份子集
Pssword=
MediaName=
MediaPassword=
Keep_Replication
Move file to file
Norecovery|Recovery|Standby=資料庫恢復操作的UNDO文件(恢復資料庫文件或文件組使用Norecovery選項)
Norewind|Rewind
Unload|NoUnload
Replace (若恢復的資料庫名稱與已存在的資料庫重名,則首先刪除原資料庫,然後重建)
Restart
Stats=
4.恢復事務日誌
Restore Log db_name
From device
With
Restricted_User
File=恢復具有多個備份子集的備份介質中的那個備份子集
Pssword=
MediaName=
MediaPassword=
Move file to file
Norecovery|Recovery|Standby=資料庫恢復操作的UNDO文件
Norewind|Rewind
Unload|NoUnload
Restart
Stats=
Stopat=(將資料庫恢復到該設定時間以前的狀態,只有在該時間以前的事物日誌才會被恢復)
Stopatmark='mark_name'[After datetime]
Stopbeforemark='mark_name'[After datetime]
DOB_ONLY:表示新恢復的資料庫的訪問許可權只授予資料庫所有模喚此者
Norecovery:表示恢復操作不回滾任何未提交的事務。若恢復某一資料庫備份後又恢復多個事務日誌,或在恢復過程中執行多個Restore命令,則要求除最後一條Restore命令外其他的必須使用該選項
Recovery:表示回滾所有未提交事務
5.部分恢復資料庫---進行部分資料庫恢復操作事要使用資料庫文件組,而且總是要恢復主要的文件和文件組,此外就是恢復所指定的文件和文件組
Restore Database db_name
<file or filegroup>
From device <備份設備名>
With
Partial
Restricted_User
File=恢復具有多個備份子集的備份介質中的那個備份子集
Pssword=
MediaName=
MediaPassword=
Keep_Replication
Move file to file
Norecovery|Recovery|Standby=資料庫恢復操作的UNDO文件(恢復資料庫文件或文件組使用Norecovery選項)
Norewind|Rewind
Unload|NoUnload
Restart
Stats=
④ sql恢復修改前數據
1、首先運行Recovery for SQL Server。