卷組VG->邏輯卷LV(類型:raw)->添加表空間 操作過(guò)程:一" />

久久99精品久久久久久琪琪,久久人人爽人人爽人人片亞洲,熟妇人妻无码中文字幕,亚洲精品无码久久久久久久

用裸設(shè)備擴(kuò)數(shù)據(jù)庫(kù)表空間專題(完整版)

時(shí)間:2019-05-14 02:24:33下載本文作者:會(huì)員上傳
簡(jiǎn)介:寫(xiě)寫(xiě)幫文庫(kù)小編為你整理了多篇相關(guān)的《用裸設(shè)備擴(kuò)數(shù)據(jù)庫(kù)表空間專題(完整版)》,但愿對(duì)你工作學(xué)習(xí)有幫助,當(dāng)然你在寫(xiě)寫(xiě)幫文庫(kù)還可以找到更多《用裸設(shè)備擴(kuò)數(shù)據(jù)庫(kù)表空間專題(完整版)》。

第一篇:用裸設(shè)備擴(kuò)數(shù)據(jù)庫(kù)表空間專題(完整版)

硬件環(huán)境:小型機(jī) IBM P670,存儲(chǔ):IBM SHARK F-20 軟件環(huán)境:操作系統(tǒng) AIX5.1 數(shù)據(jù)庫(kù)oracle9i 主題思想:物理卷PV->卷組VG->邏輯卷LV(類型:raw)->添加表空間 操作過(guò)程:

一、首先 #lsvg – o //查看所有可用卷組 datavg03 datavg02 datavg01 datavg00 rootvg

二、然后對(duì)用來(lái)專為數(shù)據(jù)庫(kù)準(zhǔn)備的卷組進(jìn)行如下操作: #lsvg –l datavg03 datavg09: LV NAME TYPE LPs PPs PVs LV STATE MOUNT POINT lvdata0316 raw 64 64 1 open/syncd N/A lvdata0317 raw 64 64 1 open/syncd N/A lvdata0318 raw 64 64 1 closed/syncd N/A lvdata0319 raw 64 64 1 closed/syncd N/A lvdata0320 raw 64 64 1 closed/syncd N/A lvdata0321 raw 64 64 1 closed/syncd N/A lvdata0322 raw 64 64 1 closed/syncd N/A lvdata0323 raw 64 64 1 closed/syncd N/A lvdata0324 raw 64 64 1 closed/syncd N/A lvdata0325 raw 64 64 1 closed/syncd N/A lvdata0326 raw 64 64 1 closed/syncd N/A lvdata0327 raw 64 64 1 closed/syncd N/A lvdata0328 raw 64 64 1 closed/syncd N/A lvdata0329 raw 64 64 1 closed/syncd N/A lvdata0330 raw 64 64 1 closed/syncd N/A 由顯示可知:該卷組還有13個(gè)邏輯卷(裸設(shè)備)未被使用(如果在顯示結(jié)果中沒(méi)有closed/syncd狀態(tài)的邏輯卷,可進(jìn)入第3步)但如何知道這13個(gè)邏輯卷有多大容量呢,可以機(jī)使用如下命令:

#lslv lvdata0315 LOGICAL VOLUME: lvdata0309 VOLUME GROUP: datavg09 LV IDENTIFIER: 0037de1d00004c0000000105cd3b6816.11 PERMISSION: read/write VG STATE: active/complete LV STATE: opened/syncd TYPE: raw WRITE VERIFY: off MAX LPs: 512 PP SIZE: 64 megabyte(s)COPIES: 1 SCHED POLICY: parallel LPs: 64 PPs: 64 STALE PPs: 0 BB POLICY: relocatable INTER-POLICY: minimum RELOCATABLE: yes INTRA-POLICY: middle UPPER BOUND: 32 MOUNT POINT: N/A LABEL: None MIRROR WRITE CONSISTENCY: on/ACTIVE EACH LP COPY ON A SEPARATE PV ?: yes 可看到物理分區(qū)大小為64M,由于在同一卷組當(dāng)中,所以可以知道所有物理分區(qū)大小都是64M,從lsvg - l datavg09的顯示結(jié)果可看到,PPs:LPs=1:1所以,每個(gè)邏輯卷的大小是:LPs×PPSIZE=64*64M=4096M=4G,進(jìn)而可知還有13個(gè)4G的邏輯卷,未被使用。

但到此還不能完全保證就可以使用這13個(gè)邏輯卷對(duì)數(shù)據(jù)庫(kù)的表空間進(jìn)行擴(kuò)充,因?yàn)槲覀冞€不知到這些裸設(shè)備的屬主,所以還需要如下步驟: #cd /dev # ls –l rlvdata03* //顯示以rlvdata03開(kāi)頭的文件屬性 crw-rw----1 oracle dba 58, 20 Aug 22 11:33 rlvdata0318 crw-rw----1 oracle dba 58, 21 Aug 22 11:35 rlvdata0319 crw-rw----1 oracle dba 58, 22 Aug 22 11:37 rlvdata0320 crw-rw----1 oracle dba 58, 23 Aug 22 12:35 rlvdata0321 crw-rw----1 oracle dba 58, 24 Aug 22 12:37 rlvdata0322 crw-rw----1 oracle dba 58, 25 Aug 22 12:39 rlvdata0323 crw-rw----1 oracle dba 58, 26 Aug 22 12:39 rlvdata0324 crw-rw----1 oracle dba 58, 27 Aug 19 16:14 rlvdata0325 從查詢結(jié)果可知,裸設(shè)備的屬主已經(jīng)是oracle了,oracle可以添加這些裸設(shè)備了,但如果裸設(shè)備的屬主不是oracle而是其他用戶,那么需要

#chown oracle:dba rlvdata03* //要根據(jù)實(shí)際情況修改,千萬(wàn)小心

三、添加表空間 我們可以登錄數(shù)據(jù)庫(kù)了,使用有創(chuàng)建或修改表空間權(quán)限的用戶登錄數(shù)據(jù)庫(kù)(有多種方法),我們以sqlplus為例: #su - oracle $ sqlplus /nolog

SQL*Plus: Release 9.2.0.5.0t ‘raw’ datavg09 64 說(shuō)明:在卷組datavg09上創(chuàng)建邏輯卷lvdata0331,邏輯卷的類型是raw,邏輯卷的lps是64 邏輯卷大小太大對(duì)會(huì)影響數(shù)據(jù)庫(kù)性能,所以不宜創(chuàng)建過(guò)大的裸設(shè)備。然后進(jìn)行前面的‘三’節(jié)

但是如果當(dāng)前所有的卷組都已使用完,沒(méi)有可以用來(lái)添加裸設(shè)備的卷組,那么還要,創(chuàng)建卷組。

五、創(chuàng)建卷組 在創(chuàng)建之前,我們首先看一下有沒(méi)有可用的物理卷 #lspv vpath53 000b273dbe31ff50 datavg03 vpath54 000b273dbe320138 datavg03 vpath55 000b273dbe320303 datavg03 vpath56 000b273dbe320795 None vpath57 000b273dbe320a46 None vpath58 000b273dbe320c29 None 可以看到vpath56、vpath57、vpath58、還沒(méi)有備卷組使用。由于當(dāng)前環(huán)境的存儲(chǔ)提供是磁盤陣列,所以vpath 是在陣列上指定了大小的,在小型機(jī)系統(tǒng)認(rèn)到的所謂的“物理卷”(其實(shí)真正的物理卷,應(yīng)該是

hdisk)。

# mkvg-f-y'datavg04'-s'64' '-n' vpath56 vpath57 vpath58 說(shuō)明:用 vpath56 vpath57 vpath58 創(chuàng)建卷組datavg04,并且物理分區(qū)大小是64M 卷組創(chuàng)建好后,重復(fù)前面的步驟即可完成。

參考:

裸設(shè)備,也叫裸分區(qū)(原始分區(qū)),是一種沒(méi)有經(jīng)過(guò)格式化,不被Unix通過(guò)文件系統(tǒng)來(lái)讀取的特殊字符設(shè)備。本文收集裸設(shè)備和Oracle問(wèn)答20例。

1.什么叫做裸設(shè)備?

裸設(shè)備,也叫裸分區(qū)(原始分區(qū)),是一種沒(méi)有經(jīng)過(guò)格式化,不被Unix通過(guò)文件系統(tǒng)來(lái)讀取的特殊字符設(shè)備。它由應(yīng)用程序負(fù)責(zé)對(duì)它進(jìn)行讀寫(xiě)操作。不經(jīng)過(guò)文件系統(tǒng)的緩沖。

2.如何辨別裸設(shè)備?

在Unix的/dev目錄下,有許多文件,其中有兩個(gè)大類:字符設(shè)備文件和塊設(shè)備文件。

字符設(shè)備特殊文件進(jìn)行I/O操作不經(jīng)過(guò)操作系統(tǒng)的緩沖區(qū),而塊設(shè)備特殊文件用來(lái)同外設(shè)進(jìn)行定長(zhǎng)的包傳輸。字符特殊文件與外設(shè)進(jìn)行I/o操作時(shí)每次只傳輸一個(gè)字符。而對(duì)于塊設(shè)備特殊文件來(lái)說(shuō),它用了cache機(jī)制,在外設(shè)和內(nèi)存之間一次可以傳送一整塊數(shù)據(jù)。裸設(shè)備使用字符特殊文件。在/dev 目錄下,你可以看到許多這樣的文件。

3.使用裸設(shè)備的好處

因?yàn)槭褂寐阍O(shè)備避免了再經(jīng)過(guò)Unix操作系統(tǒng)這一層,數(shù)據(jù)直接從Disk到Oracle進(jìn)行傳輸,所以使用裸設(shè)備對(duì)于讀寫(xiě)頻繁的數(shù)據(jù)庫(kù)應(yīng)用來(lái)說(shuō),可以極大地提高數(shù)據(jù)庫(kù)系統(tǒng)的性能。當(dāng)然,這是以磁盤的 I/O非常大,磁盤I/O已經(jīng)稱為系統(tǒng)瓶頸的情況下才成立。如果磁盤讀寫(xiě)確實(shí)非常頻繁,以至于磁盤讀寫(xiě)成為系統(tǒng)瓶頸的情況成立,那么采用裸設(shè)備確實(shí)可以大大提高性能,最大甚至可以提高至40%,非常明顯。

而且,由于使用的是原始分區(qū),沒(méi)有采用文件系統(tǒng)的管理方式,對(duì)于Unix維護(hù)文件系統(tǒng)的開(kāi)銷也都沒(méi)有了,比如不用再維護(hù)I-node,空閑塊等,這也能夠?qū)е滦阅艿奶岣摺?/p>

4.如何決定是否應(yīng)該使用裸設(shè)備?

判斷是否使用裸設(shè)備要從以下方面進(jìn)行考慮:首先,數(shù)據(jù)庫(kù)系統(tǒng)本身需要已經(jīng)被比較好的經(jīng)過(guò)了優(yōu)化。優(yōu)化是一門很有些技術(shù)的話題,很難簡(jiǎn)單地講述。其次,使用Unix命令來(lái)辨別是否存在磁盤讀寫(xiě)瓶頸。比如Unix的vmstat, sar等命令都可以較好的進(jìn)行鑒別。如果決定采用裸設(shè)備,需要磁盤上還有空閑的分區(qū)。否則,就要新添磁盤,或者對(duì)原有系統(tǒng)重新規(guī)劃。

5.什么系統(tǒng)必須使用裸設(shè)備?

如果使用了Oracle并行服務(wù)器選項(xiàng),則必須采用裸設(shè)備來(lái)存放所有的數(shù)據(jù)文件,控制文件,重做日志文件。只有把這些文件放到裸設(shè)備上,才能保證所有Oracle實(shí)例都可以讀取這個(gè)數(shù)據(jù)庫(kù)的文件。這是由Unix操作系統(tǒng)的特性決定的。

還有一種情況是,如果你想使用異步I/O,那么在有些Unix上也必須采用裸設(shè)備。這個(gè)需要參考具體Unix的相關(guān)文檔。

6.能夠使用一個(gè)磁盤的第一個(gè)分區(qū)作為裸設(shè)備嗎?

可以,但是不推薦。在Unix的比較舊的版本是銀行,磁盤的第一個(gè)分區(qū)常常包含這個(gè)磁盤的一些信息,以及邏輯卷的一些控制信息。若這些部分被裸設(shè)備覆蓋的話,磁盤就會(huì)變得不可識(shí)別,導(dǎo)致系統(tǒng)崩潰。

較新的Unix版本不會(huì)發(fā)生這樣的情況,因?yàn)樗鼈儾捎昧烁鼜?fù)雜的技術(shù)來(lái)管理磁盤,邏輯卷的一些信息。

但是,除非很確信不要使用磁盤的第一個(gè)分區(qū)來(lái)作為裸設(shè)備。

7.我可以把整個(gè)裸設(shè)備都作為Oracle的數(shù)據(jù)文件嗎?

不行。必須讓數(shù)據(jù)文件的大小稍微小于該裸設(shè)備的實(shí)際大小。至少要空出兩個(gè)oracle塊的大小來(lái)。

8.裸設(shè)備應(yīng)該屬于那個(gè)用戶?

應(yīng)該由root來(lái)創(chuàng)建裸設(shè)備,然后再分配給Oracle用戶以供使用。同時(shí)還要把它歸入Oracle用戶所在的那個(gè)組里邊(通常都是DBA)。

9.在創(chuàng)建數(shù)據(jù)文件時(shí)如何指定裸設(shè)備?

和普通文件沒(méi)有什么太大的區(qū)別,一樣都是在單引號(hào)里邊寫(xiě)上裸設(shè)備的詳細(xì)路徑就可以了。舉一個(gè)例子:要在創(chuàng)建一個(gè)表空間,使用兩個(gè)裸設(shè)備,每個(gè)分別為30M的大小,Oracle塊的大小為4K,可以用下面的命令:

CREATE TABLESPACE RAW_TS

DATAFILE'/dev/raw1' size 30712k

DATAFILE '/dev/raw2' size 30712k;

10.Oracle塊的大小和裸設(shè)備有什么關(guān)系嗎?

Oracle會(huì)必須是裸設(shè)備上物理塊大小的倍數(shù)。

11.如何在裸設(shè)備上進(jìn)行備份?

在裸設(shè)備上,不能使用Unix實(shí)用程序來(lái)進(jìn)行備份,唯一的辦法是使用最基本的Unix命令:DD來(lái)進(jìn)行備份。比如:dd if=/dev/raw1of=/dev/rmt0bs=16k。dd的具體語(yǔ)法可以參考unix手冊(cè),或者聯(lián)機(jī)幫助。你也可以先用dd把裸設(shè)備上的數(shù)據(jù)文件備份到磁盤上,然后再利用Unix實(shí)用程序進(jìn)一步處理。行服務(wù)器選項(xiàng),12。我可以在數(shù)據(jù)庫(kù)上讓一部分?jǐn)?shù)據(jù)文件使用文件系統(tǒng),另一部分使用裸設(shè)備嗎?

可以。但是這樣的話,會(huì)使備份過(guò)程更加復(fù)雜。

13.我應(yīng)該把聯(lián)機(jī)重做日志文件放到裸設(shè)備上嗎?

這是一個(gè)極好的選擇。聯(lián)機(jī)重做日志文件是寫(xiě)操作非常頻繁的文件,放到裸設(shè)備上非常合適。如果你使用了并行服務(wù)器選項(xiàng),那么聯(lián)機(jī)重做日志文件必須放到裸設(shè)備上面。

14.可以把歸檔日志文件放到裸設(shè)備上嗎?

不行。歸檔日志文件必須放到常規(guī)的Unix文件系統(tǒng)上面,或者直接放到磁帶上面去。

15.我可以在裸設(shè)備上邊放置多個(gè)數(shù)據(jù)文件嗎?

不行。所以你必須在設(shè)置裸設(shè)備時(shí)非常小心。太小的話,會(huì)導(dǎo)致空間很快用完,太大的話,空間就白白浪費(fèi)了。

16.因應(yīng)該把幾個(gè)裸設(shè)備放到同一個(gè)物理磁盤上嗎?

這樣做不好。因?yàn)槭褂寐阍O(shè)備就是為了提高磁盤讀寫(xiě)速度。而把多個(gè)裸設(shè)備放到同一個(gè)物理磁盤上會(huì)導(dǎo)致讀寫(xiě)競(jìng)爭(zhēng),這樣對(duì)于提高I/O速度是不利的。應(yīng)該盡量分散裸設(shè)備到不同的物理磁盤上,最好是分散到不同的磁盤控制器上。這是最佳選擇。

17.需要把所有裸設(shè)備都定義成同樣的大小嗎?

這不是必須得,但是劃分成同樣的大小對(duì)于管理數(shù)據(jù)庫(kù)比較有利。

18.為了在Unix上使用裸設(shè)備,我需要改變Unix核心參數(shù)嗎?

不需要。但可以選擇減小緩沖區(qū)的大小,如果沒(méi)有別的應(yīng)用也在同一臺(tái)Unix機(jī)器上運(yùn)行。因?yàn)檫\(yùn)用了裸設(shè)備以后,不再使用Unix的系統(tǒng)緩沖區(qū)。

19.為了提高讀寫(xiě)速度,在操作系統(tǒng)級(jí)別上,還有什么辦法可以采取嗎?

使用RAID(廉價(jià)冗余磁盤陣列)也是非常有效的辦法,尤其實(shí)那種讀寫(xiě)非常頻繁的系統(tǒng)。

20.在考慮了以上所有方面后,還能有什么辦法可以提高性能的嗎?

這就需要對(duì)Oracle 進(jìn)行優(yōu)化,并且購(gòu)買更多的磁盤和磁盤控制器,來(lái)分散I/O

第二篇:oracle-sql語(yǔ)句-創(chuàng)建表空間、數(shù)據(jù)庫(kù)

1、查看表空間的名稱及大小

select t.tablespace_name, round(sum(bytes/(1024*1024)),0)ts_size from dba_tablespaces t, dba_data_files d where t.tablespace_name = d.tablespace_name group by t.tablespace_name;

2、查看表空間物理文件的名稱及大小

select tablespace_name, file_id, file_name, round(bytes/(1024*1024),0)total_space from dba_data_files order by tablespace_name;

3、查看回滾段名稱及大小

select segment_name, tablespace_name, r.status,(initial_extent/1024)InitialExtent,(next_extent/1024)NextExtent, max_extents, v.curext CurExtent From dba_rollback_segs r, v$rollstat v Where r.segment_id = v.usn(+)order by segment_name;

4、查看控制文件

select name from v$controlfile;獲取創(chuàng)建表空間的sql select

dbms_lob.substr(dbms_metadata.get_ddl('TABLESPACE',a.tablespace_name))from dba_tablespaces a;

SQL> select sid,serial# from v$session where username='TEST';alter system kill session '150,9019';查看被鎖的表 select object_name,machine,s.sid,s.serial#,s.event from gv$locked_object l,dba_objects o,gv$session s where l.object_id=o.object_id and l.session_id=s.sid;alter system kill session ‘sid,serial#’;

5、查看日志文件

select member from v$logfile;

6、查看表空間的使用情況

select sum(bytes)/(1024*1024)as free_space,tablespace_name from dba_free_space group by tablespace_name;

SELECT A.TABLESPACE_NAME,A.BYTES TOTAL,B.BYTES USED, C.BYTES FREE,(B.BYTES*100)/A.BYTES “% USED”,(C.BYTES*100)/A.BYTES “% FREE” FROM SYS.SM$TS_AVAIL A,SYS.SM$TS_USED B,SYS.SM$TS_FREE C WHERE A.TABLESPACE_NAME=B.TABLESPACE_NAME AND A.TABLESPACE_NAME=C.TABLESPACE_NAME;

Select b.tablespace_name as表空間名,b.bytes as字節(jié)數(shù),(b.bytes-sum(nvl(a.bytes,0)))as已使用,sum(nvl(a.bytes,0))as剩余空間,sum(nvl(a.bytes,0))/(b.bytes)*100 as 剩余百分比 from dba_free_space a,dba_data_files b where a.file_id=b.file_id group by b.tablespace_name,b.file_id,b.bytes order by b.file_id;

7、查看數(shù)據(jù)庫(kù)庫(kù)對(duì)象

select owner, object_type, status, count(*)count# from all_objects group by owner, object_type, status;

8、查看數(shù)據(jù)庫(kù)的版本

Select version FROM Product_component_version Where SUBSTR(PRODUCT,1,6)='Oracle';

9.查看某個(gè)表空間內(nèi)所占空間大于某個(gè)值的段(表或索引):

Select segment_name,bytes FROM dba_segments Where bytes>10000000 AND tablespace_name='tablespace_name';10.查看所有表空間的碎片程度(值在30以下表示碎片很多)

select tablespace_name,sum(bytes),sum(free),sum(free)*100/sum(bytes)from(select

b.file_id file_ID,b.tablespace_name tablespace_name,b.bytes Bytes,(b.bytes-sum(nvl(a.bytes,0)))used,sum(nvl(a.bytes,0))free,sum(nvl(a.bytes,0))/(b.bytes)*100

Percent

from dba_free_space a,dba_data_files b

where a.file_id=b.file_id

group by b.tablespace_name,b.file_id,b.bytes

order by b.file_id)group by tablespace_name order by sum(free)*100/sum(bytes);11.查看自上次數(shù)據(jù)庫(kù)啟動(dòng)以來(lái)所有數(shù)據(jù)文件的讀寫(xiě)次數(shù)

select

substr(DF.NAME,1,5)Drive,DF.NAME file_name,(fs.phyblkrd+fs.phyblkwrt)

from v$filestat fs,v$datafile df

where df.file#=fs.file#;

創(chuàng)建臨時(shí)表空間: //創(chuàng)建臨時(shí)表空間

create temporary tablespace mytest tempfile 'E:/Program/oracle/product/10.1.0/oradata/orcl/mytest.dbf' size 32m autoextend on next 32m maxsize 1024m extent management local;

//創(chuàng)建數(shù)據(jù)表空間

create tablespace mytest_data logging datafile 'E:/Program/oracle/product/10.1.0/oradata/orcl/mytest_data.dbf' size 32m autoextend on next 32m maxsize 1024m extent management local;//創(chuàng)建用戶并指定表空間

create user testaccount identified by testpwd default tablespace mytest_data temporary tablespace mytest;//給用戶授予權(quán)限

grant connect,resource to testaccount;(db2:指定所有權(quán)限)12,創(chuàng)建一個(gè)用戶:

CREATE USER username IDENTIFIED BY password OR IDENTIFIED EXETERNALLYOR IDENTIFIED GLOBALLY AS ‘CN=user’[DEFAULT TABLESPACE tablespace][TEMPORARY TABLESPACE temptablespace][QUOTA [integer K[M] ] [UNLIMITED] ] ON tablespace[,QUOTA [integer K[M] ] [UNLIMITED] ] ON tablespace[PROFILES profile_name][PASSWORD EXPIRE][ACCOUNT LOCK or ACCOUNT UNLOCK];

//查看數(shù)據(jù)庫(kù)中的所有用戶: select * from all_users;//or select * from dba_users 13查看oracle最大連接數(shù): Select session_max,session_current,sessions_highwater,users_max from v$license;Select username,count(username)from v$session group by username;加密存儲(chǔ)過(guò)程 WRAP

INAME=D:ORACLESOURCEDATE.SQL ONAME=D:ORACLESOURCEDATA.PLD

第三篇:1如何判斷數(shù)據(jù)庫(kù)表空間使用情況

如何判斷數(shù)據(jù)庫(kù)表空間使用情況

經(jīng)常會(huì)有一些同事反映數(shù)據(jù)庫(kù)表空間不足,使用率達(dá)到90%以上,我遠(yuǎn)程后發(fā)現(xiàn),其實(shí)表空間還有很大的可擴(kuò)展空間,之所有查出使用率95%以上,是與數(shù)據(jù)文件的擴(kuò)展屬性與查詢語(yǔ)句有關(guān),本文檔介紹如何查看表空間最大可擴(kuò)展空間。

1,數(shù)據(jù)文件與表空間介紹

表空間是一個(gè)邏輯概念,數(shù)據(jù)文件是物理概念,數(shù)據(jù)文件是實(shí)實(shí)在在存在于磁盤上的文件。一個(gè)表空間可以1022個(gè)數(shù)據(jù)文件,公司項(xiàng)目中的一個(gè)數(shù)據(jù)文件如果開(kāi)啟了自動(dòng)擴(kuò)展屬性,那最大可以擴(kuò)展到32G。

2,查看數(shù)據(jù)文件信息

公司的絕大部分RAC環(huán)境是使用ASM方式管理數(shù)據(jù)文件的,可以通過(guò)數(shù)據(jù)文件名稱直觀的辨別數(shù)據(jù)文件是的存儲(chǔ)方式,一般ASM磁盤名都是以加號(hào)“+”開(kāi)頭,例如“+DATA”、“+FRA”之類。如果是單機(jī)環(huán)境,那數(shù)據(jù)文件會(huì)存放在本地文件系統(tǒng)上,例如D盤或E盤的某個(gè)目錄下,使用select * from dba_data_files;命令查看當(dāng)前數(shù)據(jù)庫(kù)的數(shù)據(jù)文件信息,如下圖:

建議按tablespace_name排序,圖中DLMIS表空間有12個(gè)數(shù)據(jù)文件,而且12個(gè)數(shù)據(jù)文件都開(kāi)啟的自動(dòng)擴(kuò)展屬性(AUTOEXTENSIBLE=YES),都存儲(chǔ)在+DATA磁盤組上,最大可擴(kuò)展到12*32G=384G。目前DLMIS表空間有4個(gè)文件擴(kuò)展到了32G(圖中紅框標(biāo)示)。另外8個(gè)數(shù)據(jù)文件還有很大的可擴(kuò)展空間,目測(cè)估計(jì)還有約130G左右的可擴(kuò)展空間,所以DLMIS表空間當(dāng)前是足夠的。其他表空間也是這樣查看。

3,增加數(shù)據(jù)文件

如果某個(gè)表空間的所有數(shù)據(jù)文件都快擴(kuò)展到了32G,那就需要手動(dòng)增加數(shù)據(jù)文件,以DLMIS表空間為例,向DLMIS表空間增加一個(gè)數(shù)據(jù)文件: alter tablespace dlmis add datafile '+DATA' size 2000m autoextend on;命令意思是向dlmis表空間增加一個(gè)數(shù)據(jù)文件,存儲(chǔ)在+DATA的ASM磁盤組上(ASM有自動(dòng)管理的功能,它會(huì)根據(jù)表空間名與數(shù)據(jù)庫(kù)名自動(dòng)為數(shù)據(jù)文件生成一個(gè)唯一的名字,不需要手動(dòng)寫(xiě)全),初始大小為2000m,開(kāi)啟自動(dòng)擴(kuò)展功能。如下圖:

該圖是另一個(gè)項(xiàng)目中截取的,最后兩個(gè)數(shù)據(jù)文件是新加了,同一條命令執(zhí)行了兩次,只寫(xiě)'+DATA',ASM為兩個(gè)數(shù)據(jù)文件自動(dòng)唯一命名了。

4,存儲(chǔ)的空間

任何服務(wù)器磁盤或共享存儲(chǔ)陣列都有最大空間限制,不可能永無(wú)止境的擴(kuò)展,單機(jī)環(huán)境服務(wù)器本地磁盤大小很空間查看,RAC環(huán)境可能通過(guò)select name,total_mb,free_mb from v$asm_diskgroup;命令查看數(shù)據(jù)庫(kù)使用的ASM磁盤組總大小與空閑大小

圖中兩個(gè)磁盤組都還在約500G的可用空間,足夠擴(kuò)容。

第四篇:Linux裸設(shè)備總結(jié)

這幾天看了一下linux下的裸設(shè)備管理,做了一些筆記,不敢獨(dú)享,共享如下:

(筆記的內(nèi)容不一定正確,有錯(cuò)誤請(qǐng)指出)

1、什么裸設(shè)備?字符設(shè)備?塊設(shè)備?

裸設(shè)備:也叫裸分區(qū)(原始分區(qū)),是一種沒(méi)有經(jīng)過(guò)格式化,不被Unix/Linux通過(guò)文件系統(tǒng)來(lái)讀取的特殊字符設(shè)備。裸設(shè)備可以綁定一個(gè)分區(qū),也可以綁定一個(gè)磁盤。

字符設(shè)備:對(duì)字符設(shè)備的讀寫(xiě)不需要通過(guò)OS的buffer。它不可被文件系統(tǒng)mount。

塊設(shè)備:對(duì)塊設(shè)備的讀寫(xiě)需要通過(guò)OS的buffer,它可以被mount到文件系統(tǒng)中。

2、一個(gè)系統(tǒng)可以有多少個(gè)裸設(shè)備?

這個(gè)與linux的版本相關(guān),在舊版本中,最多只可以有256個(gè)裸設(shè)備,Linux 4下做多可以綁定8192個(gè)裸設(shè)備。

但是在linux下,最多只能有255個(gè)分區(qū),所以,如果用裸設(shè)備綁定分區(qū),最多只能綁定255個(gè)裸設(shè)備。

如果是用lvm,則沒(méi)有這個(gè)限制。

3、Linux下單個(gè)磁盤最多可以有多少個(gè)分區(qū)?

15個(gè)。3個(gè)主分區(qū) + 1個(gè)擴(kuò)展分區(qū) + 11個(gè)邏輯分區(qū)。

建議的分區(qū)方法是:先分3個(gè)主分區(qū),第四個(gè)分區(qū)為擴(kuò)展分區(qū),然后在擴(kuò)展分區(qū)中再分成11個(gè)邏輯分區(qū)。

注意,裸設(shè)備不要綁定在擴(kuò)展分區(qū)上。

4、linux下是否需要綁定裸設(shè)備?unix呢?

linux下如果需要使用裸設(shè)備,則需要手工進(jìn)行綁定。

unix下則不用。

因?yàn)閁nix中每一個(gè)塊設(shè)備都會(huì)有一個(gè)對(duì)應(yīng)的字符設(shè)備用于非緩存(unbuffered)I/O,這就是他對(duì)應(yīng)的裸設(shè)備了。

而Linux中rawio的則實(shí)現(xiàn)了一套非綁定(unbound)的裸設(shè)備/dev/rawN或者/dev/raw/rawN和一個(gè)控制設(shè)備/dev /rawct用來(lái)把他們綁定到塊設(shè)備上。所以當(dāng)需要使用一個(gè)裸設(shè)備的時(shí)候,就需要把他和一個(gè)真實(shí)存在的塊設(shè)備對(duì)應(yīng)起來(lái),這一個(gè)步驟實(shí)際上就是完成了 Unix里的自動(dòng)對(duì)應(yīng)一個(gè)非緩存字符設(shè)備。

5、linux如何綁定裸設(shè)備?

兩種方式:

1)命令綁定

raw /dev/raw/raw[n] /dev/xxx

其中n的范圍是0-8191。raw目錄不存在可以創(chuàng)建。

執(zhí)行這個(gè)命令,就會(huì)在/dev/raw下生成一個(gè)對(duì)應(yīng)的raw[n]文件

用命令方式綁定裸設(shè)備在系統(tǒng)重啟后會(huì)失效。

2)修改文件

修改/etc/sysconfig/rawdevices文件如下,以開(kāi)機(jī)時(shí)自動(dòng)加載裸設(shè)備,如:

/dev/raw/raw1 /dev/sdb1

這種方式是通過(guò)啟動(dòng)服務(wù)的方式來(lái)綁定裸設(shè)備。

也可以把這個(gè)命令寫(xiě)在/etc/rc.local上,使每次啟動(dòng)都執(zhí)行這些命令。

6、如何把裸設(shè)備作為oracle數(shù)據(jù)文件?有什么需要注意的?

1)綁定裸設(shè)備

參考上文

2)改變裸設(shè)備屬主

兩種方法:

.把命令卸載/etc/rc.local上

chown oracle:oinstall /dev/raw/raw1

.修改/etc/udev/permissions.d/50-udev.permissions文件

將/etc/udev/permissions.d/50-udev.permissions的113行

raw/*:root:disk:0660 修改為

raw/*:oracle:oinstall:0660

這個(gè)的意思是修改裸設(shè)備的默認(rèn)屬主為oracle:oinstall,默認(rèn)的mode是0660。

如果是用lvm,也需要把邏輯卷綁定到裸設(shè)備上,過(guò)程和綁定到普通分區(qū)類似。

7、使用裸設(shè)備作為oracle數(shù)據(jù)文件有什么需要注意的?

使用裸設(shè)備作為oracle的數(shù)據(jù)文件必須注意以下幾點(diǎn):

1)一個(gè)裸設(shè)備只能放置一個(gè)數(shù)據(jù)文件

2)數(shù)據(jù)文件的大小不能超過(guò)裸設(shè)備的大小

如果是日志文件,則裸設(shè)備最大可用大小=裸設(shè)備對(duì)應(yīng)分區(qū)大小2 * db_block_size(保留兩個(gè)block)

為了簡(jiǎn)單起見(jiàn),對(duì)所有的文件設(shè)置稱比裸設(shè)備小1M即可。

3)數(shù)據(jù)文件最好不要設(shè)置稱自動(dòng)擴(kuò)展,如果設(shè)置稱自動(dòng)擴(kuò)展,一定要把maxsize設(shè)置設(shè)置為比裸設(shè)備小

8、是否可以直接用邏輯卷作為oracle數(shù)據(jù)文件?

linux下oracle不能直接把邏輯卷作為裸設(shè)備,也要進(jìn)行綁定。unix下就不需要。

9、如何知道當(dāng)前綁定了什么裸設(shè)備?

rqw-qa命令列出當(dāng)前綁定的所有裸設(shè)備。

10、如何知道某個(gè)裸設(shè)備的大小

比較笨的辦法是,找出看裸設(shè)備對(duì)應(yīng)的是那個(gè)實(shí)際的塊設(shè)備,然后用fdisk-l /dev/[h,s]dXN看那個(gè)塊設(shè)備的大小就好了。比較簡(jiǎn)單的辦法是用blockdev命令來(lái)計(jì)算,如:

#blockdev--getsize /dev/raw/raw1 11718750

11718750表示有多少OS BLIOCK。

一般一個(gè)OS BLOCK大小是512字節(jié),所以11718750*512/1024/1024/1024 = 5722(m)就是裸設(shè)備的大小。

11、數(shù)據(jù)庫(kù)中可以同時(shí)以文件和裸設(shè)備作為數(shù)據(jù)文件嗎?

可以。甚至在同一個(gè)表空間中,也可以部分?jǐn)?shù)據(jù)文件用文件系統(tǒng),部分文件用裸設(shè)備。

但是不建議這樣做,因?yàn)闀?huì)增加管理的復(fù)雜度。

12、可以把至于裸設(shè)備的數(shù)據(jù)文件設(shè)成自動(dòng)擴(kuò)展嗎?

可以,但同時(shí)要設(shè)置maxsize,且maxsize不能超過(guò):裸設(shè)備大小-2*db_block_size

13、如何修改裸設(shè)備的默認(rèn)權(quán)限

兩種方法:

1)要修改/etc/rc.d/rc.local文件,加入如下: chown root:oinstall /dev/raw/raw1 chown root:oinstall /dev/raw/raw2 chown root:oinstall /dev/raw/raw3...chmod 660 /dev/raw/raw1 chmod 660 /dev/raw/raw2 chmod 660 /dev/raw/raw3...2)實(shí)際上還有更簡(jiǎn)單的方法就是,修改/etc/udev/permissions.d/50-udev.permissions文件: raw/*:root:disk:0660 為

raw/*:root:oinstall:0660

這樣就可以了!

14、如何取消裸設(shè)備的綁定

用raw把major and minor設(shè)成0就可以取消裸設(shè)備的綁定。如:

raw /dev/raw/raw1 0 0

這個(gè)命令取消綁定裸設(shè)備的綁定,/dev/raw/raw1會(huì)被刪除

15、裸設(shè)備可以綁定的對(duì)象可以什么?

可以綁定整個(gè)沒(méi)有分區(qū)的硬盤、可以綁定硬盤的某個(gè)分區(qū)、可以綁定邏輯卷等。

第五篇:oracle 數(shù)據(jù)文件、表空間、日志文件、控制文件數(shù)據(jù)庫(kù)管理

實(shí)驗(yàn)四 oracle 數(shù)據(jù)庫(kù)管理

一、試驗(yàn)?zāi)康?/p>

掌握對(duì)數(shù)據(jù)文件、表空間、日志文件、控制文件的常用命令,作為DBA的必要準(zhǔn)備。

二、實(shí)驗(yàn)內(nèi)容

2.1 數(shù)據(jù)文件的管理

(1)在安裝完畢之后,在INITsid.ORA參數(shù)文件有一個(gè)DB_FILES 參數(shù),用于設(shè)置當(dāng)前實(shí)例的數(shù)據(jù)外文件的個(gè)數(shù)。如: db_files = 80 如果在INITsid.ORA文件沒(méi)有該參數(shù),則可以用下面查詢語(yǔ)句從視圖中查到。如: SQL> col name for a20 SQL> col value for a50 SQL> set lin 100 SQL> select name,value from v$parameter where name = 'db_files';NAME VALUE---------------------------------------db_files 1024(2)行命令建立表空間:

例1 CREATE TABLESPACE user_stu DATAFILE 'h:/oracle/oradata/orcl/user_stu.dat' SIZE 20M DEFAULT STORAGE(INITIAL 10K NEXT 50K MINEXTENTS 1 MAXEXTENTS 99 PCTINCREASE 10)ONLINE;例2:建立一個(gè)新的表空間,具有兩個(gè)數(shù)據(jù)文件: CREATE TABLESPACE CRM_TAB

DATAFILE 'h:/oracle/oradata/orcl/crm01.dbf' size 10 MB,'h:/oracle/oradata/orcl/crm02.dbf' size 10 MB;(3)對(duì)一個(gè)已存在的表空間追加新數(shù)據(jù)文件: 例1 ALTER TABLESPACE user_stu

Add datafile 'H:/oracle/oradata/orcl/user_stu01.dbf' size 30M;例2 為表空間增加數(shù)據(jù)文件 ALTER TABLESPACE users ADD DATAFILE 'userora1.dbf ' SIZE 10M;(4)數(shù)據(jù)文件更名

ALTER TABLESPACE users RENAME DATAFILE? 'filename1', 'filename2' TO 'filename3', 'filename4';(5)變更數(shù)據(jù)文件大小 在創(chuàng)建表空間時(shí),可以將表空間說(shuō)明為自動(dòng)擴(kuò)展或固定大小。因而管理員的一項(xiàng)工作就是查看系統(tǒng)所有的表空間對(duì)應(yīng)的數(shù)據(jù)文件情況。看是否為自動(dòng)擴(kuò)展。如: SQL> col tablespace_name for a12 SQL> col file_name for a48 SQL> select tablespace_name,file_name,AUTOEXTENSIBLE ,bytes from dba_data_files

(6)數(shù)據(jù)文件的自動(dòng)擴(kuò)展與調(diào)整。重新調(diào)整數(shù)據(jù)文件大小的命令如下: ALTER DATABASE DATAFILE [datafile_name] RESIZE [new_size];

當(dāng)我們發(fā)現(xiàn)數(shù)據(jù)文件過(guò)大而不可能用完時(shí),可以用上面命令將數(shù)據(jù)文件調(diào)小。對(duì)于設(shè)置數(shù)據(jù)文件的自動(dòng)擴(kuò)展問(wèn)題,可用下面命令來(lái)達(dá)到: ALTER DATABASE DATAFILE [ file_spec ] AUTOEXTEND ON NEXT [increment_size] MAXSIZE [max_size,UNLIMITED]; 如:

ALTER DATABASE DATAFILE 'H:ORACLEORADATAORCLUSER_STU01.DBF' AUTOEXTEND ON NEXT 10m MAXSIZE 60M;(7)行命令修改表空間:

ALTER TABLESPACE USER_STU ONLINE;(8)ALTER TABLESPACE accounting OFFLINE NORMAL;(9)行命令刪除表空間:

DROP TABLESPACE 表空間名 INCLUDING CONTENTS CASCADE CONSTRAINTS(10)、與數(shù)據(jù)文件有關(guān)的視圖

select file_name from dba_data_files;select * from v$datafile;DBA_DATA_FILES DBA_EXTENTS DBA_FREE_SPACE V$DATAFILE V$DATAFILE_HEADER(11)、為了保證表空間的可用,除了掌握表空間的創(chuàng)建外,還應(yīng)該查看dba_free_space中表空間的信息,以確保系統(tǒng)正常運(yùn)行。一般管理員應(yīng)該關(guān)心的內(nèi)容有:表空間共有多少個(gè);總共有多少自由空間;最大的自由空間是什么;下面例子是一個(gè)經(jīng)常使用的腳本,可以查出數(shù)據(jù)文件和表空間的可用情況。clear buffer clear columns clear breaks column a1 heading 'Tablespace' format a15 column a2 heading 'data File' format a45 column a3 heading 'Total|Space' format 999,999.99 column a4 heading 'Free|Space' format 999,999.99 column a5 heading 'Free|perc' format 999,999.99 break on a1 on report compute sum of a3 on a1 compute sum of a4 on a1 compute sum of a3 on report compute sum of a4 on report set linesize 120 select a.tablespace_name a1, a.file_name a2, a.avail a3, nvl(b.free,0)a4, nvl(round(((free/avail)*100),2),0)a5 from(select tablespace_name, substr(file_name,1,45)file_name, file_id, round(sum(bytes/(1024*1024)),3)avail from sys.dba_data_files group by tablespace_name, substr(file_name,1,45), file_id)a,(select tablespace_name, file_id, round(sum(bytes/(1024*1024)),3)free from sys.dba_free_space group by tablespace_name, file_id)b where a.file_id = b.file_id(+)order by 1, 2;(12)查詢是否存在表的擴(kuò)展超出表空間可用大小 一般在系統(tǒng)使用較長(zhǎng)時(shí)間后,表空間的連續(xù)塊被多次的修改與刪除等操作后出現(xiàn)了許多的不連續(xù)的塊(叫碎片)。這樣就有可能出現(xiàn)表的擴(kuò)展所需要的連續(xù)塊不能滿足的情況。為了避免這樣的情況發(fā)生而導(dǎo)致擴(kuò)展失敗,管理員要經(jīng)常查詢系統(tǒng)的表空間情況。下面就是這樣的一個(gè)腳本:

Col segment_name for a20 Select segment_name, segment_type, owner, a.tablespace_name tablespace, Initial_extent, next_extent, pct_increase,b.bytes max_bytes From dba_segments a,(select tablespace_name, max(bytes)bytes from dba_free_space group by tablespace_name)b where a.tablespace_name=b.tablespace_name and next_extent > b.bytes;(13)查詢表空間自由、最大及碎片

其實(shí),平常管理最關(guān)系就是表空間的總量、最大字節(jié)、使用多少、碎片多少等。下面腳本可以查詢出所有表空間的自由空間、總空間數(shù)、已用空間、自由百分比及最大塊的字節(jié)數(shù)。set pau off

col free heading 'Free(Mb)' format 99999.9 col total heading 'Total(Mb)' format 999999.9 col used heading 'Used(Mb)' format 99999.9 col pct_free heading 'Pct|Free' format 99999.9 col largest heading 'Largest(Mb)' format 99999.9 compute sum of total on report compute sum of free on report compute sum of used on report break on report select substr(a.tablespace_name,1,13)tablespace, round(sum(a.total1)/1024/1024, 1)Total, round(sum(a.total1)/1024/1024, 1)-round(sum(a.sum1)/1024/1024, 1)used, round(sum(a.sum1)/1024/1024, 1)free, round(sum(a.sum1)/1024/1024, 1)*100/round(sum(a.total1)/1024/1024, 1)pct_free, round(sum(a.maxb)/1024/1024, 1)largest, max(a.cnt)fragment from(select tablespace_name, 0 total1, sum(bytes)sum1, max(bytes)MAXB, count(bytes)cnt from dba_free_space group by tablespace_name union select tablespace_name, sum(bytes)total1, 0, 0, 0 from dba_data_files group by tablespace_name)a group by a.tablespace_name 2.2 日志文件的管理

(0)日志查詢

select group#,bytes from v$log;? select group#,bytes from v$logfile;

(1)實(shí)現(xiàn)強(qiáng)行的日志切換 Alter system switch logfile;(2)檢測(cè)點(diǎn)(checkpoint)

Oracle為了在出現(xiàn)故障后能退回去重演原來(lái)的信息,就需要一個(gè)叫開(kāi)始點(diǎn)。在這個(gè)開(kāi)始點(diǎn)時(shí)刻,數(shù)據(jù)和事務(wù)是已知的。這樣的開(kāi)始點(diǎn)就叫檢測(cè)點(diǎn)。在Oracle里,只要檢查點(diǎn)一到(出現(xiàn))。Oracle就強(qiáng)行將當(dāng)前的SGA中的redo區(qū)的改動(dòng)過(guò)的塊寫(xiě)入重做日志文件中。這個(gè)步驟完成后,在重做日志文件中放入一個(gè)特殊的檢測(cè)點(diǎn)標(biāo)志記錄。如果在下一個(gè)檢測(cè)點(diǎn)完成前出現(xiàn)失敗,恢復(fù)操作進(jìn)程就會(huì)在日志文件和數(shù)據(jù)文件前一個(gè)檢測(cè)點(diǎn)同步(改回去)。檢測(cè)點(diǎn)檢查完成后,對(duì)數(shù)據(jù)塊的任何改動(dòng)都記錄在其檢測(cè)點(diǎn)標(biāo)志后寫(xiě)入重做日志項(xiàng)中。因此,恢復(fù)也就只能從最近的檢測(cè)點(diǎn)標(biāo)志記錄開(kāi)始。

Oracle在INITsid.ORA文件中給出LOG_CHECKPOINT_INTERVAL參數(shù)可以設(shè)置檢測(cè)點(diǎn)的數(shù)目。比如 日志文件大小為1000塊,而設(shè)置檢查點(diǎn)間隔LOG_CHECKPOINT_INTERVAL為250,則文件寫(xiě)達(dá)到 1/

4、2/

4、3/4及4/4時(shí)產(chǎn)生檢測(cè)點(diǎn)(250塊、500塊、750塊和1000塊處)。可用下面命令來(lái)查日志文件大小: SQL> select group#,bytes from v$log;show parameter log_checkpoint_interval(3)添加日志組

建立一個(gè)新組4,組內(nèi)有兩個(gè)成員 ALTER DATABASE ADD LOGFILE GROUP 4('H:/oracle/oradata/orcl/redo0401.log', 'H:/oracle/oradata/orcl/redo0402.log')size 10m;===當(dāng)添加一個(gè)日志組時(shí),可以不給出組號(hào),有系統(tǒng)自動(dòng)分配一個(gè)組號(hào)=== ALTER DATABASE ADD LOGFILE('H:/oracle/oradata/orcl/redo0501.log', 'H:/oracle/oradata/orcl/redo0502.log')size 10m;此時(shí)添加的組號(hào)為5

(4)為日志組增加成員 ALTER DATABASE ADD LOGFILE MEMBER 'log22.log' TO GROUP 2;===添加成員時(shí),可以不給定成員的大小,因?yàn)閛racle要求組內(nèi)的所有成員的大小一律相等。

(5)如果將一個(gè)日志成員從一個(gè)硬盤移到另一個(gè)硬盤,就需要重新命名日志成員名字。需要進(jìn)行下面步驟:

1. 關(guān)閉數(shù)據(jù)庫(kù),并進(jìn)行完全備份;

2. 使用操作系統(tǒng)命令拷貝原來(lái)的日志文件到新的地方; 3. 用startup mount 啟動(dòng)數(shù)據(jù)庫(kù); 4. 用ALTER DATABASE RENAME FILE '' TO '';5. 用ALTER DATABASE OPEN 打開(kāi)數(shù)據(jù)庫(kù); 6. 備份控制文件。為文件更名

ALTER DATABASE RENAME FILE 'filename1', 'filename2' TO 'filename3', 'filename4';

(6)日志刪除

a.刪除日志組成員:

在下面情況下可能需要?jiǎng)h除重做日志文件,如日志文件個(gè)數(shù)太多(超出需要);日志文件的大小不一致等。這樣的情況可以刪除日志組成員。b.當(dāng)日志組損壞時(shí),就刪除日志組,但必須滿足:

a)刪除一個(gè)日志組后,系統(tǒng)中至少還有兩個(gè)其它的日志組; b)被刪除的日志組必須是不需要存檔; c)不是正在使用的日志組。刪除日志文件的語(yǔ)法:

ALTER DATABASE database_name DROP LOGFILE GROUP group_number | file_name |(file_name,file_name(,...))刪除日志成員的語(yǔ)法:

ALTER DATABASE database_name DROP LOGFILE MEMBER file_name;c.聯(lián)機(jī)重做日志的緊急替換:

當(dāng)一個(gè)重做日志組偶而被損壞使數(shù)據(jù)庫(kù)不能繼續(xù)使用時(shí),不能直接刪除它們,而是要用一個(gè)干凈的文件或一組成員去替代這個(gè)損壞的日志組。聯(lián)機(jī)重做日志的緊急替換命令語(yǔ)法如下: ALTER DATABASE database_name CLEAR[UNARCHIVED] LOGFILE group_identifier [UNRECOVERABLE DATAFILE] 如果該文件正在等待存檔(歸檔模式),就需要UNARCHIVED。

如果需要脫機(jī)恢復(fù)一個(gè)數(shù)據(jù)文件,就用UNRECOVERABLE DATAFILE。d.了解重做日志的當(dāng)前狀態(tài): V$LOGFILE V$LOG V$THREAD V$LOG_HISTORY e.例子:

刪除一個(gè)組3:

ALTER DATABASE DROP LOGFILE GROUP 3;刪除一個(gè)成員:

ALTER DATABASE DROP? LOGFILE MEMBER '/orant/oradata'mydb02'redo02.log';4.了解重做日志的當(dāng)前狀態(tài)的視圖主要有: V$LOGFILE V$LOG V$THREAD V$LOG_HISTORY 5.例子:

察看是否歸檔

ARCHIVE? LOG? LIST 日志歸檔

alter database noarchivelog;

3、控制文件的管理(1)關(guān)于控制文件

控制文件存放有數(shù)據(jù)庫(kù)的結(jié)構(gòu)信息,包括數(shù)據(jù)文件、日志文件。控制文件是一個(gè)二進(jìn)制文件,它是在數(shù)據(jù)庫(kù)建立時(shí)自動(dòng)被建立。控制文件可以在當(dāng)你改變文件名或移動(dòng)文件時(shí)而被更新。在任何時(shí)候,你都不能編輯控制文件。控制文件的內(nèi)容包括:

? 數(shù)據(jù)庫(kù)名字(控制文件只能屬于一個(gè)數(shù)據(jù)庫(kù))。? 數(shù)據(jù)庫(kù)建立時(shí)的郵戳。

? 數(shù)據(jù)文件-名字,位置及聯(lián)機(jī)/脫機(jī)。? 重做日志文件-名字及位置。? 表空間名字。? 當(dāng)前日志序列號(hào)。? 最近檢查點(diǎn)信息。

? 恢復(fù)管理器信息(RMAN)。(2)控制文件信息

在spfile.ora的配置文件中 有:

control_files =(“/home/oracle/app/oracle/oradata/s450/control01.ctl”, “/home/oracle/app/oracle/oradata/s450/control02.ctl”, “/home/oracle/app/oracle/oradata/s450/control03.ctl”)(3)查詢控制文件的信息

show parameters;select * from v$controlfile;desc V$CONTROLFILE_RECORD_SECTION v$datafile db_data_files v$logfile v$log v$controlfile show parameter control_files

其中,RECORD_SIZE NUMBER 記錄字節(jié)大小 RECORDS_TOTAL NUMBER 段的記錄數(shù)

RECORDS_USED NUMBER 段中已使用的記錄數(shù) FIRST_INDEX NUMBER 第一個(gè)記錄索引位置 LAST_INDEX NUMBER 最后一個(gè)記錄索引位置 LAST_RECID NUMBER 最后一個(gè)記錄ID號(hào)

select * from V$CONTROLFILE_RECORD_SECTION;7.6.4 控制文件信息的更改

需要在spfile.ora中做出相應(yīng)的更改。建立控制文件的步驟 1.建立控制文件準(zhǔn)備。

必須有數(shù)據(jù)文件(查DBA_DATA_FILES數(shù)據(jù)字典)、日志文件(查V$LOGFILE數(shù)據(jù)字典)的詳細(xì)列表。下面是創(chuàng)建控制文件的命令:

CREATE CONTROLFILE SET DATABASE “ORACLE” NORESETLOGS NOARACHIVELOG MAXLOGFILES 32 MAXLOGMEMBERS 2 MAXDATAFILES 32 MAXINSTANCES 1 MAXLOGHISTORY 1630 LOGFILE GROUP 1 'C:ORACLEDATABASELOG1ORCL.LOG' SIZE 200K, GROUP 2 'C:ORACLEDATABASELOG2ORCL.LOG' SIZE 200K, DATAFILE 'C:ORACLEDATABASESYS1ORCL.ORA', 'C:ORACLEDATABASEUSER1ORCL.ORA', 'C:ORACLEDATABASERBS1ORCL.ORA', 'C:ORACLEDATABASETMP1ORCL.ORA', 'C:ORACLEDATABASEAPPDATA1.ORA', 'C:ORACLEDATABASEAPPINDX1.ORA',;在例子中,參數(shù)選件與 CREATE DATABASE類似。NORESETLOGS 指定聯(lián)機(jī)的日志文件不要重新設(shè)置。2. 關(guān)閉數(shù)據(jù)庫(kù)。

3. 用NOMOUNT選件啟動(dòng)數(shù)據(jù)庫(kù),記住,安裝數(shù)據(jù)庫(kù),Oracle需要打開(kāi)控制文件。4. 用類似上面建立新的控制文件。并在INITsid.ORA參數(shù)文件中指定。5. 使用ALTER DATABASE OPEN命令打開(kāi)數(shù)據(jù)庫(kù)。6. 關(guān)閉數(shù)據(jù)庫(kù)并備份數(shù)據(jù)庫(kù)。

提示:如果你的數(shù)據(jù)庫(kù)正常,則可以用ALTER DATABASE BACKUP CONTROLFILE TO TRACE 命令來(lái)產(chǎn)生一個(gè)CREATE CONTROLFILE 的命令。該命令產(chǎn)生后被寫(xiě)到跟蹤文件中。請(qǐng)參考INITsid.OAR的USER_DUMP_DEST所指的目錄找到跟蹤文件,它就在跟蹤文件中。

建立好控制文件后,就要確定如何來(lái)補(bǔ)救被丟失的數(shù)據(jù)文件,可以從V$DATAFILE視圖來(lái)查到丟失的數(shù)據(jù)文件,這些數(shù)據(jù)文件的名字為MISSINGnnnn。如果你建立的控制文件帶有RESETLOGS選件,則丟失的數(shù)據(jù)文件就不能加回?cái)?shù)據(jù)庫(kù)中。如果你建立的控制文件帶有NORESETLOGS選件,則丟失的數(shù)據(jù)文件可以由數(shù)據(jù)庫(kù)的介質(zhì)恢復(fù)被加回?cái)?shù)據(jù)庫(kù)中。當(dāng)數(shù)據(jù)庫(kù)啟動(dòng)后可以 用下面命令進(jìn)行備份:

ALTER DATABASE BACKUP CONTROL FILE TO '' REUSE;Oracle公司建議無(wú)論你是否改變數(shù)據(jù)庫(kù)結(jié)構(gòu)、或加數(shù)據(jù)文件、或重新命名文件或刪除重做日志文件,都要進(jìn)行備份。

可以從視圖V$CONTROLFILE中查到控制文件的信息,status字段表示控制文件的狀態(tài),一般總是為空。如:

SQL> select * from v$controlfile;另外V$CONTROLFILE_RECORD_SECTION 視圖存儲(chǔ)控制文件所記錄的信息。它的結(jié)構(gòu)如下:

SQL> desc V$CONTROLFILE_RECORD_SECTION

下載用裸設(shè)備擴(kuò)數(shù)據(jù)庫(kù)表空間專題(完整版)word格式文檔
下載用裸設(shè)備擴(kuò)數(shù)據(jù)庫(kù)表空間專題(完整版).doc
將本文檔下載到自己電腦,方便修改和收藏,請(qǐng)勿使用迅雷等下載。
點(diǎn)此處下載文檔

文檔為doc格式


聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔(dān)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進(jìn)行舉報(bào),并提供相關(guān)證據(jù),工作人員會(huì)在5個(gè)工作日內(nèi)聯(lián)系你,一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

相關(guān)范文推薦

    表空間五篇范文

    管理表空間和數(shù)據(jù)文件 小結(jié):作用 Undo表空間和臨時(shí)表空間的建立方法 了解各個(gè)狀態(tài)(online,read write,readonly)的作用,及如何改變表空間的狀態(tài)的方法。 了解移動(dòng)數(shù)據(jù)文件的原因,及......

    Oracle數(shù)據(jù)庫(kù)創(chuàng)建表空間、建立用戶、授權(quán)、還原備份

    創(chuàng)建用戶一般分四步: 第一步:創(chuàng)建臨時(shí)表空間 第二步:創(chuàng)建數(shù)據(jù)表空間 第三步:創(chuàng)建用戶并制定表空間 第四步:給用戶授予權(quán)限 --Oracle創(chuàng)建臨時(shí)表空間 如果沒(méi)有指定的臨時(shí)表空間,則可......

    引入數(shù)據(jù)庫(kù)操作類命名空間

    Imports System.Data '引入數(shù)據(jù)庫(kù)操作類命名空間 Imports System.Data.OleDb '引入ADO.NET操作命名空間 Public Class Form2 Dim objConn As New OleDb.OleDbConnection '......

    VFP講稿(創(chuàng)建數(shù)據(jù)庫(kù)和表)

    第二部分 數(shù)據(jù)庫(kù)的創(chuàng)建與單命令 創(chuàng)建數(shù)據(jù)庫(kù)和表 一、Visual FoxPro 6.0的配置 P28 二、項(xiàng)目及其管理器P31 1.項(xiàng)目的概念 項(xiàng)目:是文件、數(shù)據(jù)、文檔和Visual FoxPro對(duì)象的集合,......

    第二章 數(shù)據(jù)庫(kù)和表的操作

    第二章 數(shù)據(jù)庫(kù)和表的操作 首先創(chuàng)建名為“教學(xué)管理”的數(shù)據(jù)庫(kù),完成以下操作: 1. 在數(shù)據(jù)庫(kù)中,建立“教師表”,表結(jié)構(gòu)如下: 教師表(教師編號(hào),姓名,性別,工作時(shí)間,政治面貌,學(xué)歷,職稱,系別,電......

    情感美文(空間用)

    情感美文(空間用) 女人 確實(shí)需要一個(gè)情人 我在QQ硬盤中,找到了朋友在博客中寫(xiě)的文章《女人 確實(shí)需要一個(gè)情人 》,開(kāi)始我還有點(diǎn)不理解,從男性的角度上,有些觀點(diǎn)和意識(shí),不能接受的。......

    空間游戲用(精選5篇)

    “金字塔?有木有!你是不是和我一樣激動(dòng)呢?”身旁的男子激動(dòng)的拉著你的手,“你敢告訴我為什么這座塔叫金字塔?” 外形像中文“金”字“這個(gè)答案真沒(méi)勁,”“激動(dòng)帝”有點(diǎn)不滿意,“據(jù)......

    Oracle大型數(shù)據(jù)庫(kù) 實(shí)驗(yàn)五 重做日志文件、表空間管理操作

    集美大學(xué)計(jì)算機(jī)工程學(xué)院實(shí)驗(yàn)報(bào)告 課程名稱:大型數(shù)據(jù)庫(kù)技術(shù) 指導(dǎo)教師:楊艷華 班級(jí):計(jì)算12 姓名: 實(shí)驗(yàn)成績(jī): 上機(jī)實(shí)踐日期:2014.12 上機(jī)實(shí)踐時(shí)間:2學(xué)時(shí) 實(shí)驗(yàn)項(xiàng)目名稱:重做日志文件、......

主站蜘蛛池模板: 无码精品a∨在线观看无广告| 中文无码妇乱子伦视频| 免费三级网站| 精品国产一卡2卡3卡4卡新区| 无码中文字幕加勒比一本二本| 曰本一道本久久88不卡| 成人免费xxxxx在线观看| 亚洲免费福利在线视频| 欧美做受又硬又粗又大视频| 日本大片免费观看完整视频| 亚洲综合av永久无码精品一区二区| 国产无遮挡又黄又爽不要vip网站| av老司机亚洲精品天堂| 国产午夜免费啪视频观看视频| 又粗又黑又大的吊av| 久久久成人毛片无码| 欧美综合自拍亚洲综合图| 色五月丁香五月综合五月4438| 日韩一区二区在线观看视频| 久久99精品国产麻豆| 国产久久精品| 日本三级欧美三级人妇视频| 国产亚洲国际精品福利| 亚洲中文字幕乱码一区| 亚洲精品国偷拍自产在线观看| 中文字幕乱码熟女人妻水蜜桃| 尤物国精品午夜福利视频| 中文人妻无码一区二区三区| 色欲一区二区三区精品a片| 国产成人无码一区二区三区| 国产精品无需播放器在线观看| 精品成人免费国产片| 日韩国产人妻一区二区三区| 国产日产久久高清欧美一区| 久久国产精品老女人| 亚洲熟女av乱码在线观看漫画| 肉色丝袜足j视频国产| 久久精品动漫一区二区三区| 国外亚洲成av人片在线观看| 偷国产乱人伦偷精品视频| 亚洲av无码乱码国产精品久久|