Oracle10g數(shù)據(jù)庫(kù)培訓(xùn)學(xué)習(xí)經(jīng)典筆記_第1頁(yè)
Oracle10g數(shù)據(jù)庫(kù)培訓(xùn)學(xué)習(xí)經(jīng)典筆記_第2頁(yè)
Oracle10g數(shù)據(jù)庫(kù)培訓(xùn)學(xué)習(xí)經(jīng)典筆記_第3頁(yè)
Oracle10g數(shù)據(jù)庫(kù)培訓(xùn)學(xué)習(xí)經(jīng)典筆記_第4頁(yè)
Oracle10g數(shù)據(jù)庫(kù)培訓(xùn)學(xué)習(xí)經(jīng)典筆記_第5頁(yè)
已閱讀5頁(yè),還剩24頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、Oracle 10g 數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù) 培訓(xùn)學(xué)習(xí)筆記培訓(xùn)學(xué)習(xí)筆記姓名:唐曉鋒EMAIL:MSN:oracle_1.數(shù)據(jù)庫(kù)備份. 數(shù)據(jù)庫(kù)備份是對(duì)數(shù)據(jù)庫(kù)的物理結(jié)構(gòu)文件,包括數(shù)據(jù)文件,日志文件和控制文件的操作系統(tǒng)備份,這是物理的操作系統(tǒng)備份方法,這種備份方法對(duì)每一個(gè)數(shù)據(jù)庫(kù)來(lái)說(shuō)都是必需的。操作系統(tǒng)備份有完全數(shù)據(jù)庫(kù)及部分?jǐn)?shù)據(jù)庫(kù)備份,其中,部分?jǐn)?shù)據(jù)庫(kù)備份在數(shù)據(jù)庫(kù)恢復(fù)需要數(shù)據(jù)庫(kù)前一段運(yùn)行時(shí)產(chǎn)生歸檔的日志的支持完全數(shù)據(jù)庫(kù)備份是對(duì)構(gòu)成數(shù)據(jù)庫(kù)的全部數(shù)據(jù)文件、在線日志文件和控制文件的一個(gè)操作系統(tǒng)備份。完全數(shù)據(jù)庫(kù)備份在數(shù)據(jù)庫(kù)正常關(guān)閉之后進(jìn)行。在數(shù)據(jù)庫(kù)關(guān)閉時(shí),構(gòu)成數(shù)據(jù)庫(kù)的所有文件都關(guān)閉,文件的同步號(hào)與當(dāng)前檢驗(yàn)點(diǎn)號(hào)一致,不存

2、在不同步問(wèn)題。利用這種備份方法,在拷貝回?cái)?shù)據(jù)庫(kù)備份文件后,不需要進(jìn)行數(shù)據(jù)庫(kù)恢復(fù)。完全數(shù)據(jù)庫(kù)備份可以備份到任何類型的存儲(chǔ)介質(zhì)上。部分?jǐn)?shù)據(jù)庫(kù)備份也是物理文件的操作系統(tǒng)微備份。不同的是,部分?jǐn)?shù)據(jù)庫(kù)備份可以在數(shù)據(jù)庫(kù)關(guān)閉時(shí)也可以數(shù)據(jù)庫(kù)運(yùn)行時(shí)進(jìn)行。例如,對(duì)某一個(gè)表空間中全部數(shù)據(jù)庫(kù)文件備份、單個(gè)數(shù)據(jù)文件備份或控制文件備份。 部分?jǐn)?shù)據(jù)庫(kù)備份由于數(shù)據(jù)庫(kù)文件之間存在不同步,在備份文件拷回?cái)?shù)據(jù)庫(kù)時(shí)需要實(shí)施數(shù)據(jù)庫(kù)恢復(fù),所以這種方法只可以在歸檔模式下使用,使用歸檔日志進(jìn)行數(shù)據(jù)庫(kù)恢復(fù)。2.數(shù)據(jù)庫(kù)備份與恢復(fù)的方法。 對(duì)于Oracle數(shù)據(jù)庫(kù),備份方法可以分為物理備份與邏輯備份。根據(jù)數(shù)據(jù)庫(kù)的歸檔方式不同。物理備份又可以分為非歸

3、檔的操作系統(tǒng)備份、歸檔的操作系統(tǒng)備份。邏輯備份使用Export工具進(jìn)行備份,用Import進(jìn)行邏輯恢復(fù)。3.數(shù)據(jù)庫(kù)歸檔方式。 數(shù)據(jù)庫(kù)備份與恢復(fù)方法的確定與數(shù)據(jù)庫(kù)歸檔方式有直接關(guān)系的關(guān)系。因?yàn)槿绻x擇通過(guò)日志進(jìn)行數(shù) 據(jù)庫(kù)恢復(fù)的備份方法,則數(shù)據(jù)庫(kù)必需運(yùn)行在歸檔模式下,只有歸檔模式下才會(huì)產(chǎn)生歸檔日志,而只有產(chǎn)生歸檔日志,數(shù)據(jù)庫(kù)才可能實(shí)施恢復(fù)。參數(shù)文件(parameter file): 設(shè)置內(nèi)存各項(xiàng)參數(shù),指定控制文件控制文件(control file): 指定數(shù)據(jù)文件,臨時(shí)文件,重做日志文件及其他控制信息數(shù)據(jù)文件(data file): 存放數(shù)據(jù)庫(kù)全部數(shù)據(jù)重做日志文件(redo log file):存

4、放所有事務(wù)日志歸檔文件(archive log file): 重做日志文件的截?cái)鄠浞菘诹钗募?password file): 對(duì)通過(guò)網(wǎng)絡(luò)進(jìn)行管理的用戶進(jìn)行認(rèn)證警告文件(alert file): 記錄數(shù)據(jù)庫(kù)文件運(yùn)行中主要事件的命令與結(jié)果跟蹤文件(trace file): 記載后臺(tái)進(jìn)程遇到的重大事件信息構(gòu)成數(shù)據(jù)庫(kù)的8種文件類型:Oracle 10g數(shù)據(jù)庫(kù)備份與恢復(fù)1 .參數(shù)文件備份與恢復(fù)。參數(shù)文件備份與恢復(fù)。參數(shù)文件名及路徑:參數(shù)文件名及路徑:/u01/app/oracle/admin/oracle/pfile$ORACLE_HOME/dbs/spfile$ORACLE_SID.ora 二進(jìn)制配置

5、文件$ORACLE_HOME/dbs/init$ORACLE_SID.ora 文本配置文件spfile與pfile的相互生成SQLcreate pfile from spfile;SQLcreate spfile from pfile;spfile與pfile特點(diǎn)spfile:二進(jìn)制存儲(chǔ),參數(shù)修改動(dòng)態(tài)生效.pfile: 文本存儲(chǔ),易于查看修改,修改后重啟生效.SQLstartup open pfile=/u01/app/oracle/initora10.ora指點(diǎn)備份的參數(shù)文件啟動(dòng)。如果參數(shù)文件沒(méi)有備份而破壞了,可以到相同的服務(wù)器上拷貝一份pfile文件到破壞的服務(wù)器上。修改參數(shù)的值便可啟動(dòng)到

6、nomount下。需要修改的參數(shù)有:db_name,instance_name,db_domain,service_names,control_files,db_block_size,user_dump_dest,background_dump_dest等參數(shù)2. 控制文件控制文件備份與恢復(fù)備份與恢復(fù)(1) 控制文件概述控制文件概述每個(gè)oracle數(shù)據(jù)庫(kù)必須至少有一個(gè)控制文件,用于記載數(shù)據(jù)庫(kù)物理結(jié)構(gòu)每個(gè)oracle數(shù)據(jù)庫(kù)應(yīng)該至少有兩個(gè)控制文件相互鏡像,并存儲(chǔ)在不同磁盤(pán)上防止磁盤(pán)失效控制文件記載信息包括:數(shù)據(jù)庫(kù)名稱,數(shù)據(jù)文件名稱和位置,重做日志名稱和位置,表空間名稱,當(dāng)前日志序列號(hào),檢查點(diǎn)信息,

7、日志歷史信息.在線備份控制文件。在線備份控制文件。SQLalter database backup controlfile to /u02/oracle/control.backup;SQLalter database backup controlfile to trace;命令運(yùn)行結(jié)束后,在以下目錄中檢測(cè)跟蹤文件:/u01/app/oracle/admin/ora10/udump/*.trc(2) 查詢數(shù)據(jù)庫(kù)控制文件查詢數(shù)據(jù)庫(kù)控制文件SQLselect name,block_size,file_size_blks from v$controlfile;查看所有控制文件及大小/u01/app/

8、oracle/oradata/ora10/control01.ctl/u01/app/oracle/oradata/ora10/control02.ctl/u01/app/oracle/oradata/ora10/control03.ctlSQL select value from v$parameter where name=control_files;查看所有控制文件SQLhost ls l /u01/app/oracle/oradata/ora10/control*(3) 修改數(shù)據(jù)庫(kù)控制文件修改數(shù)據(jù)庫(kù)控制文件* 新增/移動(dòng)一個(gè)數(shù)據(jù)庫(kù)控制文件SQLselect name from v$co

9、ntrolfile;SQL create pfile from spfile 生成初參文件SQL shutdown immediate$cp control03.ctl control04.ctl 新增一個(gè)控制文件$mv control03.ctl ./controlbak.ctl 移動(dòng)/更名一個(gè)控制文件$vi init$ORACLE_SID.ora 修改初參文件SQL startup pfile=$ORACLE_HOME/dbs/init$ORACLE_SID.oraSQLselect name from v$controlfile;SQL create spfile from pfile;

10、* 所有控制文件被全部破壞的恢復(fù)$ cd /u01/app/oracle/oradata/ora10$ mv *.ctl . 模擬破壞控制文件$ cp /u01/app/oracle/oradata/ora10/* ./bak/備份數(shù)據(jù)文件和日志文件,以免重建控制文件失敗時(shí)數(shù)據(jù)文件和日志文件也被潛在損壞.SQLstartup open 啟動(dòng)失敗SQLstartup nomountSQLalter system set 重新指定控制文件2 control_files=/u01/app/oracle/oradata/ora10/newcontrolfile01,3 /u01/app/oracle/

11、oradata/ora10/newcontrolfile014 scope=spfile;SQLshutdown immediate; 重啟生效SQLstartup nomount;SQLselect value from v$parameterwhere name=control_files; 查看新設(shè)定SQLhost ls l /u01/app/oracle/oradata/ora10/ 查看數(shù)據(jù)/日志文件SQLcreate controlfile database ora10 noresetlogs 重建控制文件2 logfile3 group 1 /u01/app/oracle/ora

12、data/ora10/redo01.log,4 group 2 /u01/app/oracle/oradata/ora10/redo02.log,4 group 3 /u01/app/oracle/oradata/ora10/redo03.log5 datafile6 /u01/app/oracle/oradata/ora10/system01.dbf,7 /u01/app/oracle/oradata/ora10/undotbs01.dbf,8 /u01/app/oracle/oradata/ora10/sysaux01.dbf,8 /u01/app/oracle/oradata/ora10

13、/users01.dbf,8 /u01/app/oracle/oradata/ora10/example01.dbf9 character set zhs16gbkSQLalter database open;SQLalter tablespace temp add tempfile 重新建立臨時(shí)文件2 /u01/app/oracle/oradata/ora10/temp.dbf 以避免免排序報(bào)錯(cuò)3 size 10485760 reuse autoextend off; reuse指重用原OS文件SQLselect name from v$controlfile;SQLhost ls l /u

14、01/app/oracle/oradata/ora10 控制文件已生成4 .日志管理與歸檔方式每一個(gè)數(shù)據(jù)庫(kù)實(shí)例至少有兩個(gè)日志文件組,日志文件中記錄全部的數(shù)據(jù)庫(kù)修改信息,日志與Oracle的后臺(tái)進(jìn)程LGWR一起工作,當(dāng)一個(gè)在線日志文件組被寫(xiě)滿后,就發(fā)生日志卻換。行成了數(shù)據(jù)庫(kù)的歸檔日志文件,這時(shí)LGWR進(jìn)程將日志信息寫(xiě)倒下一個(gè)在線日志文件組,當(dāng)最后一個(gè)可用的在線日志文件的檢查點(diǎn)到來(lái)時(shí),又回到第一個(gè)組。 1.確認(rèn)數(shù)據(jù)庫(kù)的歸檔方式可以查詢數(shù)據(jù)字典v$database;SQLselect dbid 標(biāo)識(shí)號(hào),name 數(shù)據(jù)庫(kù)名,created 創(chuàng)建時(shí)間,log_mode 歸檔模式 from v$datab

15、ase;也可以使用sql*plus顯示數(shù)據(jù)庫(kù)歸檔模式:$sqlplus / as sysdbaSQLarchive log list; 2.數(shù)據(jù)庫(kù)歸檔設(shè)置:第一步關(guān)閉 數(shù)據(jù)庫(kù):SQLshutdown immediate;第二步把數(shù)據(jù)庫(kù)啟動(dòng)到mount狀態(tài)下:SQLstartup mount;第三步修改數(shù)據(jù)庫(kù)運(yùn)行模式:SQLalter database archivelog;第四步打開(kāi)數(shù)據(jù)庫(kù):SQLalter database open;也可以修改參數(shù)啟動(dòng)自動(dòng)歸檔進(jìn)程:將LOG_ARCHIVE_START設(shè)為T(mén)RUE在數(shù)據(jù)庫(kù)歸檔完成后,如果發(fā)生了日志切換,則在規(guī)定的目錄下會(huì)自動(dòng)產(chǎn)生歸檔日志文件,

16、可以使用alter system switch logfile命令強(qiáng)制日志切換。然后可以查詢數(shù)據(jù)庫(kù)字典v$archived_log檢測(cè)是否有歸檔日志產(chǎn)生。SQLselect recid,stamp,sequence#,first_change#,first_time,name from v$archived_log; 5.歸檔日志參數(shù)設(shè)置1,歸檔日志目錄:log_archive_dest=/u01/app/oracle/ora10/arch12,歸檔日志文件存格式,參數(shù)log_archive_format用于設(shè)置日志 格式,可以使用%ORACLE_SID%、%T、%t、%S、%s、%r alt

17、er system set log_archive_format=%r-%t-%s.da Scope=spfile;3, 歸檔日志鏡像目錄 log_archive_duplex_dest=/u02/oracle/arch2(1) 重做日志文件概述* 記錄數(shù)據(jù)庫(kù)數(shù)據(jù)進(jìn)行的所有修改操作,保證數(shù)據(jù)的一致性和安全性.* 數(shù)據(jù)庫(kù)失敗需要進(jìn)行恢復(fù)時(shí),能提供恢復(fù)所需的依據(jù).* 每個(gè)數(shù)據(jù)庫(kù)應(yīng)有多個(gè)redolog文件, 按序循環(huán)輪流被使用進(jìn)行日志記載,每個(gè)redolog文件稱為一個(gè)日志組.一個(gè)例程至少需兩組聯(lián)機(jī)重做日志文件.多個(gè)日志組應(yīng)分開(kāi)放在不同磁盤(pán)上以均衡磁盤(pán)IO.* 為防止每個(gè)日志組文件本身失效, 應(yīng)對(duì)每

18、個(gè)日志組文件進(jìn)行至少一份鏡像,每個(gè)日志組文件和其鏡像文件稱為其日志組的組員.兩者應(yīng)分開(kāi)放在不同磁盤(pán)上以避免磁盤(pán)失效.(2) 查看重做日志文件RRSQL select * from v$log; 查看日志組的信息Group# Bytes Members Archived Status- - - - -1 52824400 1 NO Current2 52824400 1 NO Inactive3 52824400 1 NO Inactive日志組的狀態(tài):current: 使用狀態(tài),該日志組正在使用中active: 激活狀態(tài), 實(shí)例恢復(fù)時(shí)將需要該日志組inactive:非激活狀態(tài),實(shí)例恢復(fù)時(shí)不再需

19、要該日志組unused: 未使用狀態(tài),該日志組尚未記錄過(guò)日志信息(新添加組)SQL select * from v$logfile; 查看日志組成員信息Group# Status Type Member- - - -1 online /u01/app/oracle/oradata/ora10/redo01.log2 stale online /u01/app/oracle/oradata/ora10/redo02.log3 stale online /u01/app/oracle/oradata/ora10/redo03.log日志組成員的狀態(tài):空白: 該文件是可用/活動(dòng)的(但不一定是正在使用

20、中的,參考v$log)stale: 表示該文件內(nèi)容不完全(系統(tǒng)特殊狀態(tài))invalid: 表明該文件暫不可訪問(wèn)(新添加鏡像)deleted:表明該文件已不再使用(已刪除)(3) 修改重做日志文件* 添加日志組(添加重做日志文件個(gè)數(shù))SQLalter database ora10 add logfile group 4(/u01/app/oracle/oradata/ora10/redo04.log) size 5M;SQLselect * from v$log; 新添加組狀態(tài)為unused.* 添加日志組成員(添加鏡像文件)SQLalter database ora10 add logfile

21、 member/u01/app/oracle/oradata/redo01.log to group 1,/u01/app/oracle/oradata/redo02.log to group 2,/u01/app/oracle/oradata/redo03.log to group 3,/u01/app/oracle/oradata/redo03.log to group 4;SQLselect * from v$logfile; 新加鏡像狀態(tài)為invalid.SQLalter system switch logfile; 進(jìn)行一次日志切換啟用鏡像.SQLselect * from v$lo

22、gfile; 再查新加鏡像狀態(tài).* 刪除日志組(削減重做日志文件個(gè)數(shù))SQLalter database ora10 drop logfile group 4;SQLselect * from v$logfile;SQLselect * from v$log;SQLalter system switch logfile;inactive和unused狀態(tài)的日志組才能刪除, current和active狀態(tài)的日志組不能刪除.要?jiǎng)h除current狀態(tài)的日志組, 應(yīng)先用logswitch將current狀態(tài)的日志組轉(zhuǎn)換為active狀態(tài),而要?jiǎng)h除active狀態(tài)的日志組,則需用checkpoint將

23、其轉(zhuǎn)換為inactive狀態(tài),才能刪除:SQLalter system checkpoint;* 刪除日志組成員(刪除鏡像文件)SQLalter database ora10 drop logfile member/u01/app/oracle/oradata/redo01.log ,SQLselect * from v$log;SQLselect * from v$logfile;日志組中最后一個(gè)日志成員不能被刪除;current日志組中任何成員都不能刪除;其他情況下不能刪組成員時(shí),可用logswitch將日志組狀態(tài)進(jìn)行轉(zhuǎn)換后才能刪除.SQLalter system switch logfi

24、le;手工切換日志,以將log 3轉(zhuǎn)變?yōu)榉莄urrent狀態(tài).* 移動(dòng)或重命名日志文件SQL alter system switch logfile;SQL shutdown immediateSQL host mv /u01/app/oracle/oradata/ora10/*.log /u01/appSQL startup mountSQL alter database rename file3 /u01/app/oracle/oradata/ora10/redo01.log ,4 /u01/app/oracle/oradata/ora10/redo02.log ,5 /u01/app/o

25、racle/oradata/ora10/redo03.log6 to7 /u01/app/redo01.log ,8 /u01/app/redo02.log ,9 /u01/app/redo03.log ;SQL alter database open;SQL alter system switch logfile;SQL select * from v$log;SQL select * from v$logfile;3. 數(shù)據(jù)文件(1) 數(shù)據(jù)文件概述* 每個(gè)oracle數(shù)據(jù)庫(kù)必須至少有一個(gè)數(shù)據(jù)文件,用于存放數(shù)據(jù)庫(kù)數(shù)據(jù)* 多個(gè)數(shù)據(jù)文件應(yīng)分放在不同的磁盤(pán)上以提高存取速度system01.dbf:

26、記錄系統(tǒng)運(yùn)行信息,包含所有數(shù)據(jù)庫(kù)字典,PL/SQL程序代碼及其他系統(tǒng)信息.sysaux01.dbf:system文件的輔助文件,存放支持oracle系統(tǒng)活動(dòng)的多種工具如LogMinerundotbs01.dbf:存放回退信息,即DML操作后的舊數(shù)據(jù)信息.users01.dbf:新建用戶未指定存儲(chǔ)空間時(shí),默認(rèn)數(shù)據(jù)存放在該文件中.example01.dbf:存放示例數(shù)據(jù)信息.2.物理備份數(shù)據(jù)庫(kù)(2) 查看數(shù)據(jù)庫(kù)數(shù)據(jù)文件SQLselect name,bytes from v$datafile; 查看數(shù)據(jù)文件及大小/u01/app/oracle/oradata/ora10/system01.dbf/u

27、01/app/oracle/oradata/ora10/undotbs01.dbf/u01/app/oracle/oradata/ora10/sysaux01.dbf/u01/app/oracle/oradata/ora10/users01.dbf/u01/app/oracle/oradata/ora10/example01.dbfSQLselect * from dba_data_files; 查看數(shù)據(jù)文件及大小SQLhost ls l /u01/app/oracle/oradata/ora10/*.dbf(3) 修改數(shù)據(jù)庫(kù)數(shù)據(jù)文件* 移動(dòng)/更名一個(gè)數(shù)據(jù)文件SQL shutdown imme

28、diate$ cd /u01/app/oracle/oradata/ora10$ mv example01.dbf ./example.dbfSQL startup mountSQL alter database ora10 rename file2 /u01/app/oracle/oradata/ora10/example01.dbf to3 /u01/app/oracle/oradata/example.dbf ;SQL alter database open;SQL select * from v$datafile;* 數(shù)據(jù)文件的擴(kuò)大和縮小SQLcreate tablespace tes

29、t datafile 新建表空間及其所包含的數(shù)據(jù)文件/u01/app/oracle/oradata/test1.dbf size 5M;SQL host ls l /u01/app/oracle/oradata/test1.dbf 查數(shù)據(jù)文件大小SQL alter database datafile 設(shè)置數(shù)據(jù)文件自動(dòng)擴(kuò)充 /u01/app/oracle/oradata/test1.dbf autoextend on;SQL select autoextensible from dba_data_files 查看自動(dòng)擴(kuò)充標(biāo)志where file_name=/u01/app/oracle/orad

30、ata/test1.dbf;SQL alter database datafile 手工擴(kuò)充數(shù)據(jù)文件大小 /u01/app/oracle/oradata/test1.dbf resize 10M;SQL host ls l /u01/app/oracle/oradata/test1.dbfSQL alter database datafile 手工縮減數(shù)據(jù)文件大小 /u01/app/oracle/oradata/test1.dbf resize 7M;SQL host ls l /u01/app/oracle/oradata/test1.dbf* 數(shù)據(jù)文件的添加和刪除A.添加數(shù)據(jù)文件到表空間S

31、QLalter tablespace test add datafile 新增數(shù)據(jù)文件/u01/app/oracle/oradata/test2.dbf size 5M;B.刪除表空間中的所有數(shù)據(jù)文件SQLselect file_name,tablespace_name from dba_data_files;查詢欲刪的數(shù)據(jù)文件對(duì)應(yīng)的表空間,是否包含多個(gè)數(shù)據(jù)文件SQLdrop tablespace test including contents;確定表空間所含所有數(shù)據(jù)文件均不需要,可直接刪除表空間.SQLhost rm /u01/app/oracle/oradata/test.dbf刪除數(shù)據(jù)文

32、件C.刪除表空間中的部分?jǐn)?shù)據(jù)文件SQLselect file_name,tablespace_name from dba_data_files;查詢欲刪的數(shù)據(jù)文件對(duì)應(yīng)的表空間,是否包含多個(gè)數(shù)據(jù)文件SQLalter database ora10 datafile/u01/app/oracle/oradata/test2.dbf offline drop;若表空間中包含多個(gè)數(shù)據(jù)文件,且部分?jǐn)?shù)據(jù)文件不能刪掉,則欲刪的數(shù)據(jù)文件先進(jìn)行脫機(jī)處理. 此處drop不意味著該數(shù)據(jù)文件在數(shù)據(jù)庫(kù)中已經(jīng)刪除,此時(shí)若在操作系統(tǒng)中直接刪除該數(shù)據(jù)文件,則數(shù)據(jù)庫(kù)將面臨崩潰.SQLselect file_name,tables

33、pace_name,online_statusfrom dba_data_files;數(shù)據(jù)文件依然存在(狀態(tài)recover),故不能直接刪除該數(shù)據(jù)文件.只能通過(guò)刪除表空間的方法刪除表空間中所有數(shù)據(jù)文件SQLselect owner,segment_name,segment_typefrom dba_segments where tablespace_name=TEST;查看表空間中包含的所有數(shù)據(jù)文件內(nèi)容,將表空間中其他數(shù)據(jù)文件中應(yīng)保留的內(nèi)容進(jìn)行exp備份,之后刪除整個(gè)表空間(此時(shí)該表空間中所有數(shù)據(jù)文件可刪),之后再重建表空間及數(shù)據(jù)文件,將備份內(nèi)容重新倒入.SQLhost rm /u01/app

34、/oracle/oradata/test2.dbf測(cè)試:若不按上步進(jìn)行,違反警告直接刪除脫機(jī)狀態(tài)的數(shù)據(jù)文件,SQLshutdown immediate;SQLstartup open; 則數(shù)據(jù)庫(kù)重啟可能報(bào)錯(cuò),啟動(dòng)失敗,處理方法如下:SQLalter database ora10 datafile 歸檔模式下脫機(jī)指定數(shù)據(jù)文件/u01/app/oracle/oradata/test2.dbf offline;SQLalter database ora10 datafile 非歸檔模式下脫機(jī)指定數(shù)據(jù)文件/u01/app/oracle/oradata/test2.dbf offline drop;SQ

35、Lalter database open;SQLselect name,status from v$datafile;SQLdrop tablespace test including contents;ora10.2可用drop參數(shù)刪數(shù)據(jù)文件,但存在限制:1.表空間中首個(gè)數(shù)據(jù)文件不能刪除;2.被刪除數(shù)據(jù)文件必須為空; 3.無(wú)法刪除表空間中最后一個(gè)數(shù)據(jù)文件,除非刪表空間本身.SQLcreate tablespace test2 datafile /u01/test01.dbf size 5M;SQLcreate tablespace test2 add datafile /u01/test02

36、.dbf size 5M;SQLcreate tablespace test2 add datafile /u01/test03.dbf size 5M;創(chuàng)建表空間并添加數(shù)據(jù)文件SQLalter tablespace test2 drop datafile /u01/test01.dbf刪除表空間中第一個(gè)數(shù)據(jù)文件報(bào)錯(cuò),不能進(jìn)行.SQLalter database ora10 datafile /u01/test01.dbf offline;SQLcreate table mytest (i number) tablespace test2;將首個(gè)數(shù)據(jù)文件離線,再在表空間中建測(cè)試表,則表將被保存

37、在剩余兩數(shù)據(jù)文件中SQLselect owner,segment_name,file_id from dba_extentswhere segment_name=mytest;SQLselect file_name,file_id from dba_data_files where file_id=?;查看測(cè)試表保存在哪個(gè)數(shù)據(jù)文件中,查到該數(shù)據(jù)文件號(hào)后再根據(jù)文件號(hào)查數(shù)據(jù)文件名SQLalter tablespace test2 drop datafile /u01/test02.dbf;刪除表空間中已分配了空間的數(shù)據(jù)文件(非空)報(bào)錯(cuò),不能進(jìn)行.SQLalter tablespace test2

38、drop datafile /u01/test03.dbf;刪除表空間中未分配空間的數(shù)據(jù)文件(為空),允許進(jìn)行.1.完全數(shù)據(jù)庫(kù)脫機(jī)備份 1)編寫(xiě)一個(gè)要備份的最新文件列表。必需備份數(shù)據(jù)庫(kù)的三類文件,不得漏掉某_一類文件??梢圆樵僤ba_data_files確認(rèn)數(shù)據(jù)庫(kù)文件、v$logfile確認(rèn)日志文件、v$controlfile確認(rèn)控制文件。SQLselect file_name from dba_data_files; 查看數(shù)據(jù)文件及大小/u01/app/oracle/oradata/ora10/system01.dbf/u01/app/oracle/oradata/ora10/undotbs

39、01.dbf/u01/app/oracle/oradata/ora10/sysaux01.dbf/u01/app/oracle/oradata/ora10/users01.dbf/u01/app/oracle/oradata/ora10/example01.dbf關(guān)閉數(shù)據(jù)庫(kù)后到操作系統(tǒng)下sqlhost cp /u01/app/oracle/oradata/ora10/*.dbf /u02/backupSQL select * from v$logfile; 查看日志組成員信息Group# Status Type Member- - - -1 online /u01/app/oracle/oradata/ora10/redo01.log2 stale online /u01/app/oracle/oradata/ora10/redo02.log3 stale online /u01/app/oracle/oradata/ora10/redo03.logsqlhost cp /u01/app/oracle/oradata/ora10/*.log /u02/backupSQLselect name,block_size,file_size_blks from v$controlfile;查看所有控制文件及大小/u01/app/o

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論