標籤

2021年1月27日 星期三

嘗試在資料庫5 中提取邏輯頁() 失敗。該邏輯頁屬於分配單元xxx而非xxx

方法一

use master

declare @databasename varchar(255)

set @databasename='需要修復的資料庫實體的名稱'

exec sp_dboption @databasename, N'single', N'true' --將目標資料庫置為單使用者狀態

dbcc checkdb(@databasename,REPAIR_ALLOW_DATA_LOSS)

dbcc checkdb(@databasename,REPAIR_REBUILD)

exec sp_dboption @databasename, N'single', N'false'--將目標資料庫置為多使用者狀態

檢查資料庫是否仍舊存在錯誤。注意:修復後可能會造成部分資料的丟失。 

方法二


2. DBCC CHECKTABLE

如果DBCC CHECKDB 檢查仍舊存在錯誤,可以使用DBCC CHECKTABLE來修復。

use 需要修復的資料庫實體的名稱

declare @dbname varchar(255)

set @dbname='需要修復的資料庫的名稱'

exec sp_dboption @dbname,'single user','true'

dbcc checktable('需要修復的資料表的名稱',REPAIR_ALLOW_DATA_LOSS)

dbcc checktable('需要修復的資料表的名稱',REPAIR_REBUILD)

------把’ 需要修復的資料表的名稱’更改為執行DBCC CHECKDB時報錯的資料表的名稱

exec sp_dboption @dbname,'single user','false'

方法三

3. 其他的一些常用的修復命令

DBCC DBREINDEX 重建指定資料庫中表的一個或多個索引

用法:

DBCC DBREINDEX (表名,’’) 修復此表所有的索引。

方法四

4.DBCC CHECKALLOC

檢查指定資料庫的磁碟空間分配結構的一致性

沒有留言:

使用 DiskSpd 測試磁碟效能

  DiskSpd 是微軟創建的命令行磁碟測試工具。它結合了強大的IO工作負載定義來測量磁碟效能。由於它支援自由配置和調整參數,使其成為存儲效能測試、驗證和基準測試的理想工具。 步驟 1. 從 GitHub (說明) https://github.com/Microsoft/di...