Oracle DB 中的表位置
我最近開始學習oracle。我創建了幾個表。數據庫在某些伺服器中。有沒有可能我可以在伺服器中找到表格位置。類似於 hive 的臨時目錄。
Oracle 不像
Hive
(或MySQL
引擎像MyISAM
orInnoDB
)那樣工作。沒有將表儲存為文件系統中的獨立文件的概念。您的數據物理儲存在 (big)datafiles
中,其中包含許多邏輯對象,例如tables
orindexes
。Datafiles
也被分組在另一個邏輯對像中,稱為tablespaces
. 雖然這並沒有涵蓋 Oracle 儲存系統的整個概念,但它應該向您展示它是如何設計的。使用數據庫要復雜一些
Oracle ASM
,它是 Oracle 的捲管理器和文件系統(以及 的變體/實現LVM
),或者在舊版本中稱為RAW partitions
.如果您在數據庫中具有管理權限,您可以檢查此查詢。它將顯示您的數據文件及其在文件系統上的位置:
SELECT NAME, FILE#, STATUS FROM V$DATAFILE;
另一方面,這將向您顯示創建數據文件的預設設置:
SELECT value FROM V$PARAMETER WHERE name = 'db_create_file_dest'
您可以在 Oracle 文件中找到有關數據庫儲存的更多資訊:
https://docs.oracle.com/cd/E11882_01/server.112/e40540/physical.htm#CNCPT403
https://docs.oracle.com/cd/E11882_01/server.112/e40540/tablecls.htm#CNCPT88801
https://docs.oracle.com/cd/B28359_01/server.111/b28310/dfiles010.htm
Oracle ASM
關於and的一些基本資訊RAW partitions
:http://ora-x2.blogspot.com/2011/05/whats-asm-and-how-it-works.html
https://docs.oracle.com/cd/B28359_01/win.111/b32010/ap_raw.htm