****欧欧美毛片4,国产午夜精品视频,97视频在线观看免费视频,久久七国产精品

數據恢復咨詢熱線:400-666-3702??

歡迎訪問南京兆柏數據恢復公司,專業數據恢復15年

兆柏數據恢復公司

?行業新聞

?當前位置: 主頁 > 行業新聞

金蝶k3財務數據庫文件打不開怎么辦?

瀏覽量: 次 發布日期:2019-11-27 18:17:09

金蝶k3財務數據庫文件打不開怎么辦?
一般情況為數據庫文件損壞,硬盤壞道,硬盤損壞,非法斷電等都會導致數據庫文件損壞。
sql server 數據庫具有三種類型的文件
    具體參數描述如下:
    因此,如果MDF文件被損壞,那么SQL數據庫就會變得不可訪問。另外,如果用戶試圖去訪問已損壞的數據庫,則可能會看到一些錯誤提示消息。下面我們列出了一些最常見的錯誤消息:
    1、該程序從硬盤上掃描所有MDF文件碎片并保存為文件
    .如果用戶將SQL數據庫存儲在一個壓縮的文件夾中,那么MDF文件就可能因此而被損壞。
    dbname 包含頁面的數據庫的名稱
    情況1:如果索引ID>1,則立刻丟棄它、并重新創建。
    第三個參數是一個非聚集索引ID或者 1, 0, 1, or 2. 值的含義:
    SQL數據庫受損的背后原因有許多種。眾所周知,SQL數據庫的各個MDF文件其實是一些主要的數據庫文件,它們存儲著所有用戶的數據,因此任何MDF文件的損壞都可能會導致整個數據庫的崩潰。可見,我們需要首先來了解MDF文件受損背后的所有可能原因:
    3:輸出緩沖區的標題、頁面標題(分別輸出每一行),以及行偏移量表;每一行
    3、從列表選擇掃描得到的文件
    首先,您需要在受損的SQL數據庫上運行DBCC CHECKDB,請執行如下的命令:
    ?8 GAM page 全局分配映射(Global Allocation Map,GAM)頁面 這些頁面記錄了哪些區已經被分配并用作何種用途。
    二 數據頁
    ?17 BCM page 有關每個分配單元中自最后一條 BACKUP LOG 語句之后的大容量操作所修改的區的信息
    DBCC CHECK (name_of_corrupt_database, repair_fast)
    三 DBCC命令
    SQL Server把數據記錄存在數據頁(Data Page)里。數據記錄是堆表里、聚集索引里葉子節點的行。
    關于數據庫頁類型如下所示:
    1、在SQLserver企業管理器里面刪除數據庫對象,導致MDF文件被刪除。
    1: 顯示對象的全部頁, 包含IAM 頁, in-row數據頁, LOB 數據頁row-overflow 數據頁 . 如果請求的對象含有聚集所以則索引頁也包括。
    除主數據文件以外的所有其他數據文件都是次要數據文件,次數據文件一般只存儲用戶數據。某些數據庫可能不含有任何次要數據文件,而有些數據庫則含有多個次要數據文件。次要數據文件的推薦文件擴展名是 .ndf。
    dbid 包含頁面的數據庫ID
    .某個用戶可能對數據進行錯誤地刪除。
    一般用戶可以通過手動的方法,來逐步修復SQL數據庫中損壞的MDF文件,但是該方法并不可靠,因為它無法保證數據能夠被完全地恢復。不過,也有類似SysTools SQL Recovery這樣的第三方工具,聲稱可以完美的方式修復.mdf文件。
    ?13 boot page 記錄了關于數據庫的信息,僅存于每個數據庫的第9頁
   SQL Server 數據庫具有三種類型的文件
1 主數據文件
    主數據文件是數據庫的起點。除了存儲系統以及用戶數據以外,主數據文件還存儲了數據庫中的所有輔助數據文件以及重做日志文件的路徑、名稱、大小等信息。SQL Server通過讀取主數據文件得到其他數據文件及重做日志文件的信息,這個功能與Oracle控制文件相似。每個數據庫都有一個主數據文件。主數據文件的推薦文件擴展名是 .mdf。
 
2 次要數據文件
    除主數據文件以外的所有其他數據文件都是次要數據文件,次數據文件一般只存儲用戶數據。某些數據庫可能不含有任何次要數據文件,而有些數據庫則含有多個次要數據文件。次要數據文件的推薦文件擴展名是 .ndf。
 
3 日志文件
    日志文件包含著用于恢復數據庫的所有日志信息。每個數據庫必須至少有一個日志文件,當然也可以有多個。日志文件的推薦文件擴展名是 .ldf。
 
    SQL Server 不強制使用 .mdf、.ndf 和 .ldf 文件擴展名,但使用它們有助于標識文件的各種類型和用途。
?? 在 SQL Server 中,數據庫中所有文件的位置都記錄在數據庫的主文件和 master 數據庫中。大多數情況下,SQL Server 數據庫引擎使用 master 數據庫中的文件位置信息。
    在下列情況下,數據庫引擎使用主文件的文件位置信息初始化 master 數據庫中的文件位置項:
    .使用帶有 FOR ATTACH 或 FOR ATTACH_REBUILD_LOG 選項的 CREATE DATABASE 語句來附加數據庫時。
    .從 SQL Server 2000 版或 7.0 版升級時。
    .還原 master 數據庫時。
 
二 數據頁
    SQL Server用8KB 的頁來存儲數據,并且在SQL Server里磁盤 I/O 操作在頁級執行。也就是說,SQL Server 讀取或寫入所有數據頁。頁有不同的類型,像數據頁,GAM,SGAM等。
    SQL Server把數據記錄存在數據頁(Data Page)里。數據記錄是堆表里、聚集索引里葉子節點的行。
    數據頁由3個部分組成。頁頭(標頭),數據區(數據行和可用空間)及行偏移數組。
 
    要找出SQL Server給一個表分配的頁有哪些,要用到非文檔的命令DBCC IND。DBCC IND 命令用于查詢一個存儲對象的內部存儲結構信息,該命令有4個參數, 前3個參數必須指定。它的語法如下:
    第一個參數是數據庫名或數據庫ID。
    第二個參數是數據庫中的對象名或對象ID,對象可以是表或者索引視圖。
    第三個參數是一個非聚集索引ID或者 1, 0, 1, or 2. 值的含義:
 0: 只顯示對象的in-row data頁和 in-row IAM 頁。
 1: 顯示對象的全部頁, 包含IAM 頁, in-row數據頁, LOB 數據頁row-overflow 數據頁 . 如果請求的對象含有聚集所以則索引頁也包括。
 -1: 顯示全部IAM頁,數據頁, 索引頁 也包括 LOB 和row-overflow 數據頁。
 -2: 顯示全部IAM頁。
     Nonclustered index ID:顯示索引的全部 IAM頁, data頁和索引頁,包含LOB和 row-overflow數據頁。
     為了兼容sql server 2000,第四個參數是可選的,該參數用于指定一個分區號.如果不給定值或者給定0, 則顯示全部分區數據。
    和DBCC PAGE不同的是, SQL Server運行DBCC IND不需要開啟3604跟蹤標志.
 
    關于數據庫頁類型如下所示:
?1 Data page 堆表和聚集索引的葉子節點數據
 
?2 Index page 聚集索引的非葉子節點和非聚集索引的所有索引記錄
 
?3 Text mixed page  A text page that holds small chunks of LOB values plus internal parts of text tree. These can be shared between LOB values in the same partition of an index or heap.
 
?4 Text tree page A text page that holds large chunks of LOB values from a single column value.
 
?7 Sort page 排序時所用到的臨時頁,排序中間操作存儲數據用的。
 
?8 GAM page 全局分配映射(Global Allocation Map,GAM)頁面 這些頁面記錄了哪些區已經被分配并用作何種用途。
 
?9 SGAM page 共享全局分配映射(Shared Global Allocation Map,GAM)頁面 這些頁面記錄了哪些區當前被用作混合類型的區,并且這些區需含有至少一個未使用的頁面。
 
?10 IAM page  有關每個分配單元中表或索引所使用的區的信息
 
?11 PFS page  有關頁分配和頁的可用空間的信息
 
?13 boot page 記錄了關于數據庫的信息,僅存于每個數據庫的第9頁
 
?15 file header page 記錄了關于數據庫文件的信息,存于每個數據庫文件的第0頁
 
?16 DCM page 記錄自從上次全備以來的數據改變的頁面,以備差異備份
 
?17 BCM page 有關每個分配單元中自最后一條 BACKUP LOG 語句之后的大容量操作所修改的區的信息
 
三 DBCC命令
現在我們來看看79號類型為1的數據頁里存放的數據,這個就要用到DBCC PAGE命令,它的語法如下:
 
dbcc page 命令讀取數據頁結構的命令DBCC Page。
 該命令為非文檔化的命令,具體如下: 
   DBCC Page ({dbid|dbname},filenum,pagenum[,printopt])
  具體參數描述如下:
   dbid 包含頁面的數據庫ID
  dbname 包含頁面的數據庫的名稱
   filenum 包含頁面的文件編號
   pagenum 文件內的頁面
   printopt 可選的輸出選項;選用其中一個值:
   0:默認值,輸出緩沖區的標題和頁面標題
   1:輸出緩沖區的標題、頁面標題(分別輸出每一行),以及行偏移量表
   2:輸出緩沖區的標題、頁面標題(整體輸出頁面),以及行偏移量表
   3:輸出緩沖區的標題、頁面標題(分別輸出每一行),以及行偏移量表;每一行
   后跟分別列出的它的列值
   要想看到這些輸出的結果,還需要設置DBCC TRACEON(3604)
    printopt 可選的輸出選項;選用其中一個值:
    至此為確保修復了所有損壞,請再次運行DBCC CHECKDB。如果在name_of_your_corrupt_database中顯示為0個分配錯誤和0個一致性錯誤,則大功告成
    .元數據的損壞錯誤。
    2、即使MDF文件被部分覆蓋,未被覆蓋部分的表數據依然可以恢復
    DBCC CHECK (name_of_corrupt_database, repair_allow_data_loss)
    1:輸出緩沖區的標題、頁面標題(分別輸出每一行),以及行偏移量表
    .磁盤驅動器受損。
    dbcc page 命令讀取數據頁結構的命令DBCC Page。
    DBCC CHECK (name_of_corrupt_database, repair_rebuild)
    .在某個SQL Server帳號下,所進行的任何修改或變更。
    -2: 顯示全部IAM頁。
    0: 只顯示對象的in-row data頁和 in-row IAM 頁。
    除此之外,用戶還可能在訪問受損的SQL數據庫時,遇到其他類型的錯誤提示。可見,數據庫管理員應當立即采取措施,以防止任何類型的數據丟失
    ?9 SGAM page 共享全局分配映射(Shared Global Allocation Map,GAM)頁面 這些頁面記錄了哪些區當前被用作混合類型的區,并且這些區需含有至少一個未使用的頁面。
    使用教程:
    注意:您也可以為DBCC CHECKDB定義諸如no_infomsgs和infomsgs的選項參數。
    另一種可能修復和復原受損SQL數據庫的方式是使用數據庫控制臺命令,例如:DBCC CHECKDB。該命令對于修復SQL Server數據庫中的輕度損壞問題是非常有效的。
    2 次要數據文件
    ?3 Text mixed page  A text page that holds small chunks of LOB values plus internal parts of text tree. These can be shared between LOB values in the same partition of an index or heap.
    -1: 顯示全部IAM頁,數據頁, 索引頁 也包括 LOB 和row-overflow 數據頁。
    .MDF文件所在存儲介質的損壞。
    該命令為非文檔化的命令,具體如下:
    DBCC Page ({dbid|dbname},filenum,pagenum[,printopt])
    用DBCC CHECKDB來修復受損MDF文件的步驟
    filenum 包含頁面的文件編號
 
相關推薦