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

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

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

兆柏數據恢復公司

?行業新聞

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

oracle、mysql、sql server三種不同數據庫中的文件類型介紹

瀏覽量: 次 發布日期:2023-08-17 21:48:21

oracle、mysql、sql server三種不同數據庫中的文件類型介紹

1、sql server中各類型文件

sql server有三種文件格式:第一種文件為主文件,后綴名為.mdf,數據庫中的主要數據存儲在這個文件中;第二種文件為次要(輔助)數據文件.ndf,除主數據文件以外的所有其他數據文件;還有一個文件是日志文件,后綴名為.ldf,主要記錄數據庫的日志以及數據庫的操作記錄,記錄所有事務的 SQL 語句用于恢復數據庫。一個數據庫中必須有至少一個主文件和日志文件。但是主文件只能有一個,日志文件可以有多個。一般備份還原只需要將數據庫分離,拷貝對應的mdf、.ndf和ldf文件到另外一臺數據庫中(版本必須和之前的一致或兼容),然后附加選擇拷貝過來的文件(如果提示沒有權限,可以對拷貝的文件進行授權)。這樣就可以完成sql server數據庫的異地備份。

2、MySQL中各類型文件

參數文件---定義MySQL初始化參數;MySQL實例啟動從哪里可以找到數據庫文件等

日志文件---記錄MySQL實例在某種條件作出響應時寫入的文件,如:

套接字文件---連接MySQL實例使用套接字方式,則需要一個套接字文件,通過show variables like 'socket';查詢套接字文件路徑,默認在/tmp目錄下。

pid文件---MySQL實例的進程ID文件表結構文件。1、存放表結構的文件;2、以.frm結尾的文件。存放MySQL實例的進程ID文件,實例啟動時,生成一個進程ID文件。通過show variables like 'pid_file'查詢PID文件路徑,默認在數據庫目錄下。 MySQL無論采用哪種存儲引擎的插件,每個表都對應一個*.frm結尾的文件,該文件存儲了該表的表結構。注意,frm還可以存放視圖的定義。

存儲引擎文件---表結構文件與存儲引擎類型沒有關系,而不同的存儲引擎有著不同的存儲引擎文件。1、不同的存儲引擎會各自保存自己的各種數據(記錄和索引);2、InnoDB存儲引擎文件:表空間文件(共享或獨立)、重做日志文件;3、InnoDB的獨立表空間文件是以.ibd結尾的文件

通過命令show variables like 'datadir'查詢MySQL實例的數據目錄,如下所示:

以下顯示MySQL的數據目錄的一級樹形文件,即:data目錄的樹形文件。tree -L 1

注意:多個配置文件配置相同參數,以最后的讀取為準。同時,MySQL數據庫可以沒有配置文件的情況下,則按照MySQL編譯時默認參數和源代碼指定參數的默認值來啟動MySQL實例。

MySQL數據庫的參數以鍵值對(key/value)的形式配置。通過show variables命令查詢所有的參數配置,也可以通過like來過濾參數名。MySQL的參數類型分為兩類:動態(dynamic)參數:MySQL實例運行中,可以修改的參數;靜態(static)參數:整個MySQL實例生命周期不能修改(只讀),啟動實例前可以修改。設置參數命令:set global | session 或 set @@global | @@session。global是全局參數,即:整個實例生命周期都有效;session是當前會話參數設置。注意全局設置是對當前啟動的實例生命周期都有效,但是實例本身不會對參數文件中的值進行修改。

錯誤日志文件(error log)對MySQL實例的啟動、運行、關閉過程進行了記錄,該文件不僅記錄所有的錯誤信息,也記錄警告和正常的信息。通過命令show variables like 'log_error'查詢錯誤日志文件的路徑。慢查詢日志文件記錄執行SQL時間大于long_query_time參數閾值的SQL語句。默認情況下,MySQL數據庫不啟動慢查詢日志,通過參數slow_query_log來設置,默認關閉OFF,開啟ON。注意:只有大于long_query_time(默認10s)時,才能記錄SQL到慢查詢日志文件中。等于該閾值時,不會記錄。查詢日志文件記錄所有對MySQL數據庫請求的信息,無論是否正確執行。參數general_log控制是否開啟,默認關閉OFF,原因是日志量非常龐大。參數general_log_file查詢日志文件的路徑,默認data目錄。通過設置log_output參數決定查詢日志的輸出格式,默認FILE。設置為TABLE時,通過mysql.general_log表查看。二進制日志文件記錄所有對MySQL數據庫執行更改的操作,但不包括SELECT和SHOW命令。注意,若更新語句本身并沒有導致數據變化時,該操作也會寫入二進制日志文件。關于二進制日志的相關參數,如下表所示。通過

查詢二進制日志緩沖的使用情況。Binlog_cache_disk_use表示使用臨時文件寫二進制日志的次數,Binlog_cache_use表示使用緩沖寫二進制日志的次數,兩者的比較可以看出binlog_cache_size設置值是否合理。表空間文件---InnoDB采用將數據按表空間存放的設計,分為:共享表空間、獨立表空間。默認配置下,會初始化大小10MB的共享(存放所有表)表空間文件,即:在數據目錄下ibdata1文件。通過參數show variables like 'innodb_data_file_path'可以設置,也可以多個文件組成一個表空間,同時設置文件屬性。該參數是靜態參數,實例運行期間不能設置,只有啟動前配置。參數show variables like 'innodb_file_per_table'控制是否開啟為每個表建立獨立表空間,默認開啟ON,則表空間為:表名.ibd。注意:獨立表空間存儲:表數據、索引、插入緩沖的BITMAP信息,其他存儲在默認共享表空間中。重做日志文件(redo log)---重做日志文件記錄了事務日志,稱為InnoDB存儲引擎的日志文件。目的是當MySQL宕機時,使用重做日志文件可以恢復宕機之前的數據,實現數據庫ACID中的持久性。默認情況下,每一個InnoDB存儲引擎至少有一個重做日志文件組(group),每個組下默認2個重做日志文件,如:默認ib_logfile0和ib_logfile1文件。注意組下的每個重做日志文件大小相同,并且以循環寫入的方式運行。寫入重做日志文件不是直接寫,而是先寫入重做日志緩沖(redo log buffer),然后按照循環順序寫入重做日志文件。寫入磁盤時,一次寫入512字節,即:按一個扇區的大小寫入,因為扇區是系統寫時的最小單位,進而無需雙次寫doublewrite。參數innodb_log_buffer_size設置緩沖大小,默認8MB。下圖所示是重做日志寫入過程。參數innodb_flush_log_at_trx_commit控制事務提交時處理重做日志方式,默認1(事務提交時,redo log buffer寫入磁盤)、0(等待master thread每秒刷新到磁盤)、2(異步寫入磁盤,注意事務提交時不能確保寫入重做日志中)。注意:0、2導致事務丟失,為了保證ACID特性中的持久性,則設置為1,保證每當事務提交時,確保事務都已經寫入重做日志文件。3、Oracle中各類型文件Oracle中構成數據庫和實例的8種文件:1、參數文件2、跟蹤文件3、警告文件4、數據文件5、臨時文件6、控制文件7、重要日志文件8、密碼文件。參數文件---數據庫的參數文件通常稱之為初始文件,如果沒有參數文件,我們就無法啟動Oracle數據庫。這些文件告訴oracle實例在哪里可以找到控制文件,并且指定某些初始化參數,這些參數定義了某種內存結構有多大等設置。Oracle中存在兩個參數文件pfile和spfile。在Oracle啟動的時候,會以spfilesid.ora --> spfile.ora -->initsid.ora這種順序來讀取文件,如果都沒有則會報錯。跟蹤文件---跟蹤文件能提供調試信息,當服務器遇到問題的時候,會生成一個包含大量診斷信息的跟蹤文件。Oracle數據庫會根據使用的連接類型,來決定在哪里儲存相關的跟蹤文件。在想要找優化調試的跟蹤文件的情況下:

警告文件---警告文件就是數據庫的日記,在這個文件中,可以看到數據庫的編年史,包括日志開關,表空間何時創建、離線以及恢復為在線,等等。數據文件---數據文件和重做日志文件是數據庫中最重要的文件。創建一個數據庫至少會有三個數據文件,一個對應SYSTEM表空間,一個對應USER表空間,另一個對應SYSAUX表空間。在ORACLE中可以用四種文件機制存儲你的數據。

數據庫是由一個或者多個表空間構成的,而表空間中包含段,我們下面來介紹:

臨時文件---這是一種特殊類型的數據文件,Oracle使用臨時文件來存儲大規模排序操作和散列操作的中間結果,如果RAM沒有足夠的空間,還會用臨時文件存儲全局臨時表數據。永久數據對象不會存儲到臨時文件中??刂莆募?--這個文件是一個相當小的文件,告訴你數據文件、臨時文件和重做日志文件在哪里,還會指出與文件狀態有關的其他元數據。重做日志文件---重做日志文件對Oracle數據庫至關重要,他們是數據庫的事物日志,通過用于恢復,不過也可以用于以下工作:

你在Oracle中完成的每一個幾乎都會生成一定的redo信息,并寫入在線重做日志文件。重做日志文件有兩種類型,在線和歸檔。每個Oracle都會有至少兩個在線重做日志文件組。這些組的單個重做日志文件成員之間實際上形成彼此真正的鏡像。這些在線重做日志文件的大小是固定的,并以循環方式使用,先寫日志組1,當到文件的最后的時候,切換到日志組2,從頭到尾寫這些文件的內容。在填滿日志1并切換到日志2的時候,Oracle就會啟動一個檢查點,此時DBWn集合將文件組1保護的所有臟塊寫到磁盤中,在DBWn把該日志保護的所有塊刷新輸出之前,Oracle都不會重用這個日志文件。密碼文件---密碼文件用于對通過網絡完成管理活動的用戶進行認證。


南京兆柏數據恢復中心 南京兆柏數據恢復中心
相關推薦

. sql server如何連接本地服務器

. 數據庫的恢復模式有哪些,SQL Server數據庫的恢復模式詳解

. SQL Server 恢復掛起狀態,原因、診斷與解決方法

. sqlserver備份到其他服務器,SQL Server數據庫備份到其他服務器的實用

. 2008數據庫怎么還原數據庫,SQL Server 2008 數據庫還原指南

. sqlserver數據庫恢復掛起狀態,什么是SQL Server數據庫恢復掛起狀態?

. sqlserver數據庫恢復50g大約多少時間,了解SQL Server數據庫恢復

. sql server數據庫顯示恢復掛起,什么是SQL Server數據庫恢復掛起?

. sqlserver數據庫恢復進度,什么是SQL Server數據庫恢復進度?

. sqlserver數據庫恢復步驟,SQL Server數據庫恢復步驟

. sqlserver數據庫恢復數據,什么是SQL Server數據庫恢復數據?

. sqlserver數據庫恢復,什么是SQL Server數據庫恢復?

. sqlserver數據庫恢復掛起什么導致的,什么是SQL Server數據庫恢復掛起

. sqlserver數據庫恢復掛起,什么是SQL Server數據庫恢復掛起?

. sqlserver數據庫恢復工具,什么是SQL Server數據庫恢復工具?

. sqlserver數據庫恢復模式,什么是SQL Server數據庫恢復模式?

. sqlserver數據庫恢復掛起怎么解決,什么是SQL Server數據庫恢復掛起?

. sqlserver誤刪數據庫怎么恢復,什么是SQL Server誤刪數據庫

. 不支持的sql server版本怎么解決,不支持的sql server版本

. MySQL server has gone away,為什么MySQL server