今天恢復某個資料庫時出現如下的錯誤:
msg 208, level 16, state 1, procedure sp_msrestoredbreplication, line 72
invalid object name 'master.dbo.msreplication_options'.
msg 3165, level 16, state 1, line 1
database 'mydbname' was restored, however an error was encountered while replication was being restored/removed. the database has been left offline. see the topic mssql_eng003165 in sql server books online.
msg 3167, level 16, state 1, line 1
restore could not start database 'mydbname'.
msg 3013, level 16, state 1, line 1
restore database is terminating abnormally.
恢復的資料庫此時處於離線狀態
聯機叢書搜尋mssql_eng003165
找到如下解決方案:
1. 執行 alter database 以使資料庫聯機;例如:alter database adventureworks set online。 有關詳細資訊,請參閱 alter database (transact-sql)。 如果要保留複製設定,請轉到步驟 2。 否則,轉到步驟 3。
2. 執行 sp_restoredbreplication (transact-sql)。 如果此儲存過程成功執行,則還原完成。 如果此儲存過程未成功執行,請轉到步驟 3。
3. 執行 sp_removedbreplication (transact-sql) 以刪除所有複製設定。 如果需要,請重新配置複製。 如果您根據建議將複製拓撲編寫了指令碼,請使用指令碼來重新配置該拓撲。
我執行到第2步的時候成功刪除複製設定了,指令碼如下:
alterdatabase mydbname set
online
usemaster
declare
@srv_orig
as sysname =
'myinsname
'declare
@db_orig
as sysname =
'mydbname
'exec sp_restoredbreplication @srv_orig,@db_orig
alter
database mydbname set multi_user;
恢復資料庫時遇到無法獨佔錯誤
症狀 在恢復資料庫時,遇到報錯 system.data.sqlclient.sqlerror 因為資料庫正在使用,所以無法獲得對資料庫獨佔訪問權。microsoft.sqlserver.smoextended 原因分析 那麼,是誰獨佔了呢?是不是因為我們在testdb單擊右鍵,導致這個資料庫被占用了...
恢復資料庫備份
利用檔案組備份恢復破壞的檔案 restore database bbb from disk d aaaabackup 1.bak with norecovery 還原到日誌點 restore log bbb from disk d aaaabackup 2.trn with norecovery r...
命令恢復資料庫
1 建立對應路徑資料夾 d program files microsoft sql server mssql11.mssqlserver mssql data 2 新建資料庫sgs,行資料路徑 日誌路徑都選擇以上路徑,行資料 檔名填寫 blank.mdf 日誌 檔名填寫 blank 1.ldf 3 ...