成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

SQL Server無日志恢復數據庫(二)

數據庫 SQL Server
SQL Server數據庫中的日志文件可能會由于一些突發事件或者失誤造成丟失的嚴重后果,大家都知道,SQL Server數據庫中日志文件是很重要的,所以要及時的將丟失的日志文件給找回來。

SQL Server數據庫中日志文件的恢復方法有很多,之前已經為大家介紹了其中之一,即SQL Server無日志恢復數據庫(一),本文將繼續為大家介紹另外一種恢復日志文件的方法。

SQL Server無日志恢復數據庫:

方法二

沒有效果的恢復步驟

附加數據庫

_Rambo講過被刪除日志文件中不存在活動日志時,可以這么做來恢復:

1,分離被置疑的數據庫,可以使用sp_detach_db

2,附加數據庫,可以使用sp_attach_single_file_db

但是,很遺憾,執行之后,SQL Server質疑數據文件和日志文件不符,所以無法附加數據庫數據文件。

DTS數據導出

不行,無法讀取XXX數據庫,DTS Wizard報告說“初始化上下文發生錯誤”。

緊急模式

怡紅公子講過沒有日志用于恢復時,可以這么做:

1,把數據庫設置為emergency mode

2,重新建立一個log文件

3,把SQL Server 重新啟動一下

4,把應用數據庫設置成單用戶模式

5,做DBCC CHECKDB

6,如果沒有什么大問題就可以把數據庫狀態改回去了,記得別忘了把系統表的修改選項關掉

我實踐了一下,把應用數據庫的數據文件移走,重新建立一個同名的數據庫XXX,然后停掉SQL服務,把原來的數據文件再覆蓋回來。之后,按照怡紅公子的步驟走。

但是,也很遺憾,除了第2步之外,其他步驟執行非常成功。可惜,重啟SQL Server之后,這個應用數據庫仍然是置疑!

不過,讓我欣慰的是,這么做之后,倒是能夠Select數據了,讓我大出一口氣。只不過,組件使用數據庫時,報告說:“發生錯誤:-2147467259,未能在數據庫 'XXX' 中運行 BEGIN TRANSACTION,因為該數據庫處于回避恢復模式。”

最終成功恢復的全部步驟

設置數據庫為緊急模式

停掉SQL Server服務;

把應用數據庫的數據文件XXX_Data.mdf移走;

重新建立一個同名的數據庫XXX;

停掉SQL服務;

把原來的數據文件再覆蓋回來;

運行以下語句,把該數據庫設置為緊急模式;

運行“Use Master

Go

sp_configure 'allow updates', 1

reconfigure with override

Go”

執行結果:

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

已將配置選項 'allow updates' 從 0 改為 1。請運行 RECONFIGURE 語句以安裝。

接著運行“update sysdatabases set status = 32768 where name = 'XXX'”

執行結果:

(所影響的行數為 1 行)

重啟SQL Server服務;

運行以下語句,把應用數據庫設置為Single User模式;

運行“sp_dboption 'XXX', 'single user', 'true'”

執行結果:

命令已成功完成。

ü 做DBCC CHECKDB;

運行“DBCC CHECKDB('XXX')”

執行結果:

'XXX' 的 DBCC 結果。

'sysobjects' 的 DBCC 結果。

對象 'sysobjects' 有 273 行,這些行位于 5 頁中。

'sysindexes' 的 DBCC 結果。

對象 'sysindexes' 有 202 行,這些行位于 7 頁中。

'syscolumns' 的 DBCC 結果。

………

ü 運行以下語句把系統表的修改選項關掉;

運行“sp_resetstatus "XXX"

go

sp_configure 'allow updates', 0

reconfigure with override

Go”

執行結果:

在 sysdatabases 中更新數據庫 'XXX' 的條目之前,模式 = 0,狀態 = 28(狀態 suspect_bit = 0),

沒有更新 sysdatabases 中的任何行,因為已正確地重置了模式和狀態。沒有錯誤,未進行任何更改。

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

已將配置選項 'allow updates' 從 1 改為 0。請運行 RECONFIGURE 語句以安裝。

重新建立另外一個數據庫XXX.Lost;

DTS導出向導

運行DTS導出向導;

復制源選擇EmergencyMode的數據庫XXX,導入到XXX.Lost;

選擇“在SQL Server數據庫之間復制對象和數據”,試了多次,好像不行,只是復制過來了所有表結構,但是沒有數據,也沒有視圖和存儲過程,而且DTS向導最后報告復制失敗;

所以最后選擇“從源數據庫復制表和視圖”,但是后來發現,這樣總是只能復制一部分表記錄;

于是選擇“用一條查詢指定要傳輸的數據”,缺哪個表記錄,就導哪個;

視圖和存儲過程是執行SQL語句添加的。

維護Sql Server中表的索引

在使用和創建數據庫索引中經常會碰到一些問題,在這里可以采用一些另類的方法解決…

--第一步:查看是否需要維護,查看掃描密度/Scan Density是否為100%

declare @table_id int

set @table_id=object_id('表名')

dbcc showcontig(@table_id)

--第二步:重構表索引

dbcc dbreindex('表名',pk_索引名,100)

--重做第一步,如發現掃描密度/Scan Density還是小于100%則重構表的所有索引

--并不一定能達100%

dbcc dbreindex('表名','',100)

這里就為大家介紹這么多,如果大家有更好的恢復日志文件的方法,歡迎拿出來與大家一起分享。

【編輯推薦】

  1. SQL Server數據體系和應用程序邏輯詳解
  2. SQL Server數據庫管理常用SQL和T-SQL語句
  3. SQL Server 2005數據庫批量更新解決辦法
責任編輯:迎迎 來源: ChinaItLab
相關推薦

2011-04-01 09:17:36

SQL Server數據庫

2010-07-01 12:44:52

SQL Server數

2023-09-05 00:06:45

2011-03-24 09:45:34

SQL Server數恢復

2010-07-08 11:05:14

SQL Server數

2011-04-01 17:05:44

SQL Server數日志

2010-07-21 13:03:46

2011-09-21 14:00:34

SQL Server

2024-04-02 08:21:45

數據庫日志SQL

2011-03-22 15:55:26

數據庫內容恢復

2010-10-21 11:35:45

恢復SQL Serve

2011-03-24 11:14:46

2010-07-15 17:28:50

SQL Server

2011-08-09 17:24:21

SQL Server 數據庫日志

2011-04-02 11:02:54

SQL Server數文件恢復

2011-03-23 10:08:09

2011-03-15 09:52:40

SQL Server2數據庫恢復系統

2024-09-29 16:11:55

NLogSQL數據庫

2011-04-01 10:40:07

SQL Server數備份恢復

2021-05-17 06:57:34

SQLServer數據庫
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久久精品亚洲 | 欧美日韩在线免费观看 | 国产精品免费一区二区三区四区 | 亚洲欧美日韩成人在线 | 午夜影院网站 | 日韩区 | 国产特级毛片 | 亚洲 欧美 日韩在线 | 午夜影院在线免费观看视频 | 无码一区二区三区视频 | 欧美四虎 | 黄色免费看 | 国产高清精品一区二区三区 | 91黄色免费看 | 久久天天躁狠狠躁夜夜躁2014 | 欧美日韩亚洲国产 | 国产剧情一区二区三区 | 自拍偷拍亚洲欧美 | 91xxx在线观看 | 亚洲成人一级 | 国产一区二区精品 | 久久一级免费视频 | 欧美影院久久 | 一级视频黄色 | 日本一区二区三区在线观看 | 成人妇女免费播放久久久 | 在线播放一区二区三区 | 日本淫视频 | 午夜精品网站 | 免费在线一区二区三区 | 亚洲精品欧美 | 97国产精品视频 | 黄色a三级| 国产亚洲欧美在线 | 国产精品一区二区久久久久 | 天天干天天操天天射 | 欧美日韩成人网 | 国产精品视频网 | 日韩精品久久久 | 一区二区三区在线看 | www.天天操 |