日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Oracle存储结构_文件

發布時間:2025/3/20 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Oracle存储结构_文件 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
這篇文章是參考甲骨論老相老師的教學視頻
http://v.youku.com/v_show/id_XMzk4NjkzMDY0.html
所做的學習筆記



構成oracle數據庫的文件可以包括如下圖的幾種..


其種最重要的是下面這種文件:
控制文件, 數據文件, 聯機重做文件。
因為這3種文件一旦出錯, 數據庫就會崩潰, 所以這3種文件也統稱為聯機文件, 也就是支持oracle數據庫運行的必須文件。

?

1.控制文件
??????? 包含有關數據庫本身的數據和物理結構信息。 數據文件對數據庫而言至關重要,沒有這些文件,就無法打開訪問數據庫數據的數據文件。

??????? 1.1 查看控制文件
??????? 可以用如下語句來查看數據庫控制文件的位置。
??????? select name,type,value from? v$parameter where name like '%control%';
???? select name from v$controlfile;
?????
?????
???? 執行結果:
????



??????? 可以見到我的數據庫當前有兩個數據文件。
??????? 它們存放的路徑位置不同,文件名也不同, 但是它們實際上互為鏡像的關系, 也就是互相備份啦, 所以生產中最好把他們放在不同的硬盤上。
????????

?????????
???????? 控制文件一般都不大,上圖是9.3m, 而且大小變化一般變化很大。

2.數據文件
????????
數據文件就是存放數據庫表里面的數據的。
???????? 通常數據文件是非常巨大的.
???????? 數據文件沒有鏡像, 但是數據文件并不容易出問題, 因為所有的改動我們可以通過日志來重現。
???????? 但是為了避免由于硬盤問題導致數據文件丟失,我們還是需要為數據文件作備份。
???????? 而舊的備份文件可以通過日志文件變成最新的。
???????? 也就是最需要一份舊的數據文件和足夠的日志文件,我們就可將他還原成最新的。
???????? 所以數據文件壞了并不可怕, 怕的是日志文件出問題。

???????
2.1 查看數據文件
??????? 可以通過如下命令來查看數據庫的數據文件
??????? select file_name, Tablespace_name from dba_data_files;
??????? select name from v$datafile;

??????? 執行結果:
???????




如上圖, 由于我的是新安裝的空數據庫, 但是數據文件也比較大了, 如果是生產環境, 數據文件的大小就以GB計了.

3.聯機重做日志文件(online redo logfiles)
???????
日志文件就是用于記錄數據文件的改動,可以用來實現數據庫的實例恢復。如果數據庫已經崩潰但未丟死后任何數據文件,那么使用這些聯機日志文件可以通過實例恢復數據庫。
??????

?????? 3.1 查看聯機重做日志文件
??????
可以通過如下命令來查看數據庫的數據文件? ?
??????? select group#,member from v$logfile;
???????
??????


?
? 如上圖,見到我當前數據庫有3個日志組, 每個日志組有1個成員.
????????
??????? 上面所述3種聯機日志一定要放到存儲上, 什么意思呢, 假如有個數據庫, 包含兩個服務器共享個存儲
,那么兩個服務器可以分別裝oracle軟件, 但是聯機文件一定要放到存儲上。







========================================================================
下面的是非聯機文件

4.參數文件
????????? 就是用來存放oracle的參數啦, 通常是指spfile.
????????? 可以如下語句獲得spfile的位置
????????? select name,type,value from v$parameter where name like '%spfile%';
????????? show parameter spfile;
?????????


?????????? 原則上, Oracle啟動時會訪問一次參數文件, 以后就基本不用了,也就是說參數文件損壞的話,對運行中的oracle數據庫無影響,當然,再修改參數時就有問題了。

??????????? 參數文件是1個二進制文件,最好不用直接修改.

5.備份文件
????????????
備份文件可以用于備份上面的各種文件,但最重要的是備份(歸檔)日志文件和數據文件。
????????????? 有1個原則性的注意點,就是備份文件是離線文件,千萬不能放在存儲上。

??????????????

6.歸檔日志文件(archived log files)
?????????????
歸檔日志文件就是聯機重做日志的歸檔文件。在數據庫上可以用如下命令來查看歸檔日志文件的位置.
????????????? 但是不一定準確:
?????????????? select * from v$archived_log

??????????????? 歸檔日志文件是離線文件,所以有可能被copy走或刪除,所以上面命令只能反映出oracle當年生成歸檔位置。
??????????????? 歸檔日志也不能放在在線存儲上, 因為存儲經常出問題, 一出問題就肯定丟數據。


7.口令文件
? ? ? ? ? ? ??
當遠程用
sysdba 身份登陸數據庫時會用到這個口令文件, 口令文件損壞或丟失也影響不大,可以臨時再生成


8.預警和跟蹤日志文件(alert log files)
? ? ? ? ? ? ? ??
? 這種日志文件并不是用來記錄數據庫數據的變化的, alert log文件是用于記錄數據庫重大操作和錯誤的信息,它是問題診斷的入口。
????????????
?????????????????? 在oracle 11g中, alert 日志文件一般以xml 文件的形式存儲, 當然也提供文件文件的格式
?????????????????? 用如下命令可以查看alert 文件日子的位置
???????????????????

???????????????????
???????????????????? 上圖中alert 是1個folder,里面的log.xml 文件就是xml格式的alert log 文件, 而trace/alert_<sid>.log:則是文本格式的

????????????????????? 我們再觀察下/u01/app/oracle/project/diag/rdbms/orcl/orcl/trace 這個文件夾:
??????????????????????

?
?????????? 見到許多trace文件,這里包含用戶trace 自己或他人的記錄, 也包括lgwr自動產生的記錄,當一個server process出現異常時,系統一般會把當時內存狀態(PGA 信息)記錄下來。

總結

以上是生活随笔為你收集整理的Oracle存储结构_文件的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。