【正文】
lter system set pga_aggregate_target=950m scope=memory。ISSPEC COUNT(*) TRUE 31FALSE 232上面的查詢表示有31個參數(shù)存在于二進制參數(shù)文件,213個參數(shù)為默認值.兩類參數(shù)文件的相互轉(zhuǎn)換Create pfile from spfile。是否動態(tài)存儲修改的參數(shù)4。密碼文件丟失必須重新建立Orapwd為oracle的命令,用于建立密碼文件,命令的格式如下Orapwd file=….. Password=….密碼文件中含有sys用戶的密碼建立密碼文件的步驟,刪除老的密碼文件orapwd file=/dbocfs/gfdb/orapwgfdb1 password=manager1其中gfdb1為實例的名稱,manager1為密碼,是sys用戶的密碼Conn sys/maanger1 as sysdba顯示為連接的空閑實例,因為數(shù)據(jù)庫還沒有啟動。select 39。Checkpoint (CKPT)檢查點進程存盤點觸發(fā)dbwn,寫臟數(shù)據(jù)塊更新數(shù)據(jù)文件頭,更新控制文件System monitor (SMON)系統(tǒng)監(jiān)測進程實例崩潰時進行自動恢復清除作廢的排序臨時段Process monitor (PMON)進程監(jiān)測進程清除死進程重新啟動部分進程監(jiān)聽的自動注冊我們連接到數(shù)據(jù)庫其實是連接到實例這個過程叫建立一個會話實驗1:數(shù)據(jù)庫的最高帳號sys的操作系統(tǒng)認證模式.操作系統(tǒng)認證,因為數(shù)據(jù)庫是在OS上的軟件能進入ORACLE帳號,就可以進入到數(shù)據(jù)庫的最高帳號。PGA:包含單個服務器進程或單個后臺進程的數(shù)據(jù)和控制信息,與幾個進程共享的SGA正相反,PGA 是只被一個進程使用的區(qū)域,PGA 在創(chuàng)建進程時分配,在終止進程時回收.后臺進程是實例和數(shù)據(jù)庫的聯(lián)系紐帶分為核心進程和非核心進程當前后臺進程的查看SQL select name,description from v$bgprocess where paddr39。Oracle 數(shù)據(jù)庫基礎數(shù)據(jù)庫是我們安裝完產(chǎn)品后建立的,可以在同一臺主機上存在8i,9i,10g,11g等多個數(shù)據(jù)庫產(chǎn)品,一套產(chǎn)品可以建立多個數(shù)據(jù)庫,每個數(shù)據(jù)庫是獨立的。它包含Oracle 服務器的數(shù)據(jù)和控制信息,它是在Oracle 服務器所駐留的計算機的實際內(nèi)存中得以分配,如果實際內(nèi)存不夠再往虛擬內(nèi)存中寫。Log writer (LGWR)日志寫進程將日志緩沖寫入到磁盤的日志文件只有一個,因為日志寫是順序?qū)?,所以一個就可以了,因為是順序?qū)懰砸膊荒転槎鄠€。實驗2:數(shù)據(jù)庫的最高帳號sys的密碼文件認證模式該實驗的目的是使用密碼文件的認證方式進入到最高sys帳號,或者操作系統(tǒng)認證不可以使用的情況下,請使用密碼文件來認證sys用戶在unix下密碼文件路徑/oracle_home/dbs密碼文件名稱orapw+sidsid為實例名稱,查看實例名稱select instance_name from v$instance。密碼文件必須存在,即使你以操作系統(tǒng)認證,因為參數(shù)remote_login_passwordfile默認的值是要使用密碼文件的,除非你將remote_login_passwordfile的值改為none,這樣就禁止了密碼文件的使用,你想進入到sys用戶必須使用操作系統(tǒng)認證模式。優(yōu)先級不同3。ISSPECIFIEDTRUEFALSE因為上面的選擇有true,千萬不要編輯二進制參數(shù)文件,你編輯以后會報ora00600的錯誤.SQL select isspecified ,count(*) from v$spparameter group by isspecified。TRUE39。同時修改二進制文件和內(nèi)存,該參數(shù)必須是可以動態(tài)修改的.System altered.SQL alter system set pga_aggregate_target=950m。TRUE39。select instance_name,status from v$instance。Mount數(shù)據(jù)庫的過程是讀參數(shù)文件中描述的控制文件,校驗控制文件的正確性,將控制文件的內(nèi)容讀入到內(nèi)存,mount是掛接的意思,我們可以理解為實例是水泵,放到哪個水塘里就會抽取哪里的數(shù)據(jù),控制文件中有數(shù)據(jù)文件和日志文件的信息.select instance_name,status from v$instance。默認的open方式為read write想改read only為read write 必須重新啟動數(shù)據(jù)庫我們現(xiàn)在回想一下數(shù)據(jù)庫啟動的三個臺階,我們先讀的是參數(shù)文件,控制文件描述了數(shù)據(jù)文件和日志文件的信息,如果控制文件丟失可以重新建立,目的是我們可以準確的知道哪里有問題,等于startup open。%$39。腳本建立的.查看哪些字典中含有TABLE關鍵字,一定要大寫.select table_name from dict where table_name like 39。查看哪些字典中的一列含有FILE這一列,一定要大寫.select table_name from dict_COLUMNS WHERE COLUMN_NAME=39。STATUS NAME IS_ BLOCK_SIZE FILE_SIZE_BLKS /dbocfs/gfdb/ NO 16384 932 /dbocfs/gfdb/ NO 16384 932 /dbocfs/gfdb/ NO 16384 932select CONTROLFILE_SEQUENCE from v$database??刂莆募奈恢迷趨?shù)文件中描述control_files=‘file1’,’file2’多個控制文件是鏡像的關系最多八個,最少一個實驗7:減少控制文件的個數(shù)該實驗的目的是初步認識如何修改參數(shù)文件,如何減少控制文件.減少控制文件,實驗的目的,有一個控制文件損壞,我們要將損壞的控制文件剔除。, 39。control_files39。驗證內(nèi)存被修改了VALUE/dbocfs/gfdb//dbocfs/gfdb/ SQL select value from v$spparameter where name=39。.增加控制文件,查看v$controlfile修改二進制的初始化參數(shù)文件中的control_files選項SQL alter system set control_files=39。, 39。control_files39。/dbocfs/gfdb/39。SQL host cp /dbocfs/gfdb/ /dbocfs/gfdb/使用操作系統(tǒng)的命令將老的控制文件覆蓋SQL alter database open。啟動到open狀態(tài)Database altered.SQL select value from v$spparameter where name=39。STATUS NAME IS_ BLOCK_SIZE FILE_SIZE_BLKS /dbocfs/gfdb/ NO 16384 932 /dbocfs/gfdb/ NO 16384 932 /dbocfs/gfdb/ NO 16384 932日志文件日志文件是二進制文件它記錄了數(shù)據(jù)文件的變化Select * from v$logfile。查看日志組的信息SQL Select * from v$log。yyyy/mm/dd39。日志組的切換要產(chǎn)生檢查點(checkpoint)檢查點有增量檢查和完全檢查兩種完全檢查 。默認為假,不寫日志。備份和恢復更是根據(jù)SCN來決定我們要重做那些操作和交易。SCN小的就是先操作的,SCN大的就是后操作的,數(shù)據(jù)庫使用SCN來維護因果關系。,39。FFFFFFFFFFFF39。ffffffffffff39。在數(shù)據(jù)庫正常關閉過程中,stop s被設置成當前系統(tǒng)的最大SCN值。(9i以后才有)檢查點的SCN,檢查點是一個特殊的SCN,小于該號碼的塊都已經(jīng)存盤了,數(shù)據(jù)庫的恢復只需要恢復該SCN號碼以后的操作就可以了。select name,checkpoint_change from v$datafile。 GROUP SEQUENCE STATUS FIRST_CHANGE TIME 1 331 CURRENT 12380769291235 2012/04/16:14:42:55 2 330 INACTIVE 12380769286055 2012/04/16:13:57:35 3 75 INACTIVE 12380769203316 2012/04/16:08:00:54 4 76 CURRENT 12380769286059 2012/04/16:13:57:3675號日志記錄了12380769203316到12380769286059之間的數(shù)據(jù)庫變化。實驗9:日志文件管理和nologging的實現(xiàn)該實驗的目的是驗證我們學習的日志文件的原理,.增加組查看當前日志文件的路徑Select member from v$logfile。如果不指定組號,數(shù)據(jù)庫自動分配組號驗證 Select * from v$log。/dbocfs/gfdb/39。Alter system switch logfile。如果刪除不掉,可能是因為該組為當前組手工切換alter system switch logfile。,請切換 Alter system switch logfile。 * from v$logfile。如果是請切換組alter database drop logfile group 5。Table created.SQL insert into t1 select * from t1。正常的SQL語句,沒有禁止日志的產(chǎn)生3584 rows created.Statistics 298 recursive calls 322 db block gets 157 consistent gets 1 physical reads 193200 redo size 正常產(chǎn)生日志 SQL rollback。將T2表改為nologging模式Table altered.SQL insert into t2 select * from t1 nologging。FORCE_YES原來數(shù)據(jù)庫的運行模式為強制產(chǎn)生日志,這就難怪了.SQL alter database no FORCE LOGGING。3584 rows created.Statistics 327 recursive calls 261 db block gets 183 consistent gets 0 physical reads 188816 redo size 沒有效果SQL insert /*+ append */ into t2 select * from t1。設備也可以。 size 2m。 siz