Decode360's Blog

          業(yè)精于勤而荒于嬉 QQ:150355677 MSN:decode360@hotmail.com

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 ::  :: 管理 ::
            302 隨筆 :: 26 文章 :: 82 評論 :: 0 Trackbacks
          一、DataFile管理準(zhǔn)則
          ?
          ??? 1、初始參數(shù)DB_FILES
          ?
          ??? DB_FILES指出了數(shù)據(jù)文件信息保留的SGA空間數(shù)量,所以也指出了可以為該實例創(chuàng)建的數(shù)據(jù)文件的最大編號。
          ??? 注:更改DB_FILES值需要重啟實例后才可生效。
          ?
          ??? DB_FILES太小,則在關(guān)閉數(shù)據(jù)庫前無法添加超過限制數(shù)量的數(shù)據(jù)文件,太大則消耗內(nèi)存。
          ?
          ??? 2、添加DataFile到表空間
          ?
          ??? 添加DataFile到表空間需要遵循一下的條件:
          ?
          ??? * 操作系統(tǒng)對一個進程能夠同時打開的文件數(shù)加以限制
          ??? * 操作系統(tǒng)對數(shù)據(jù)文件的數(shù)量和大小加以限制
          ??? * Oracle對實例打開的數(shù)據(jù)庫文件最大數(shù)量有限制(與操作系統(tǒng)有關(guān))
          ??? * 不能超過DB_FILES所指定的數(shù)據(jù)文件數(shù)量
          ??? * CREATE DATABASE/CONTROLFILE 中 MAXDATAFILES子句的影響
          ?
          ??? 3、考慮性能的影響
          ?
          ??? 4、確定數(shù)據(jù)文件的大小
          ?
          ??? SYSTEM表空間的數(shù)據(jù)文件至少需要150M來包括數(shù)據(jù)字典和回滾段。
          ??? 如果安裝了Oracle的其他產(chǎn)品,則可能還需要額外的空間。
          ?
          ??? 5、適當(dāng)放置數(shù)據(jù)文件
          ?
          ??? 數(shù)據(jù)文件全部放在一個磁盤驅(qū)動器可能會引起競爭,有條件可以分開存放。
          ?
          ??? 6、與重做日志文件分開存儲
          ?
          ??? 數(shù)據(jù)文件與重做日志文件存放在一個磁盤容易造成全部數(shù)據(jù)丟失,盡量分開存放。或保存多個重做日志文件。
          ?
          ?
          二、創(chuàng)建和添加DataFile
          ?
          ??? CREATE TABLESPACE? --創(chuàng)建表空間及其數(shù)據(jù)文件
          ??? CREATE TEMPORARY TABLESPACE? --創(chuàng)建臨時表空間及其臨時文件
          ??? ALTER TABLESPACE ... ADD DATAFILE? --添加一個數(shù)據(jù)文件
          ??? ALTER TABLESPACE ... ADD TEMPFILE? --添加一個臨時文件
          ??? CREATE DATABASE? --創(chuàng)建數(shù)據(jù)庫和關(guān)聯(lián)的數(shù)據(jù)文件
          ??? ALTER DATABASE ... CREATE DATAFILE? --創(chuàng)建一個新的空的數(shù)據(jù)文件代替原來的
          ?
          ??? 注:推薦指定文件全名,否則按系統(tǒng)默認會比較混亂。
          ?
          ?
          三、改變DataFile大小
          ?
          ??? 1、啟用/禁用數(shù)據(jù)文件的自動盤區(qū)
          ?
          ??? 自動盤區(qū)指DataFile可以在額定的范圍內(nèi)自動增長,這樣可以減少表空間用完時立即干預(yù)的必要,也可以確保應(yīng)用程序不會因為分配盤區(qū)而失敗或暫停。
          ?
          ??? 查詢數(shù)據(jù)文件是否為自動盤區(qū),可以查詢DBA_DATA_FILES視圖的AUTOEXTENSIBLE字段。
          ?
          ??? 要將數(shù)據(jù)文件設(shè)置成自動盤區(qū),可以在以下語句中加入 AUTOEXTEND ON 子句:
          ??? CREATE DATABASE ...
          ??? CREATE TABLESPACE ...
          ??? ALTER TABLESPACE ...
          ?
          ??? 添加的舉例:
          ?
          ??? ALTER TABLESPACE users
          ??? ADD DATAFILE '/u02/oracle/rbdb1/users03.dbf' SIZE 10M
          ??? AUTOEXTEND ON
          ??? NEXT 512K
          ??? MAXSIZE 250M;
          ?
          ??? 禁用的例子:
          ?
          ??? ALTER DATABASE DATAFILE '/u02/oracle/rbdb1/users03.dbf'
          ??? AUTOEXTEND OFF;
          ?
          ?
          ??? 2、手動調(diào)整DataFile
          ?
          ??? 使用以下語句來手動改變DataFile的大小:
          ??? ALTER DATABASE DATAFILE '/u02/oracle/rbdb1/stuff01.dbf'
          ??? RESIZE 100M;
          ?
          ?
          四、修改數(shù)據(jù)文件可用性
          ?
          ??? 要使DataFile脫機或聯(lián)機,有兩種方法:
          ?
          ??? ① ALTER DATABASE 語句修改單獨的DataFile
          ??? ② ALTER TABLESPACE 語句修改所有的DataFile
          ?
          ??? 1、在ARCHIVRLOG模式下的更改DataFile狀態(tài)
          ?
          ??? ALTER DATABASE DATAFILE '/u02/oracle/rbdb1/stuff01.dbf' ONLINE;
          ??? ALTER DATABASE DATAFILE '/u02/oracle/rbdb1/stuff01.dbf' OFFLINE;
          ?
          ??? 注:只有在ARCHIVELOG模式下才可使用ALTER DATABASE來更改DataFile
          ?
          ??? 2、在NOARCHIVELOG模式下使DataFile脫機
          ?
          ??? 由于在NOARCHIVELOG模式下,數(shù)據(jù)文件脫機后會造成數(shù)據(jù)的遺失,所以只能使用ALTER DATABASE語句下帶有DATAFILE和OFFLINE DROP子句的選項將該DataFile直接取消,例如該DataFile只包含臨時段數(shù)據(jù),并沒有備份時
          ?
          ??? ALTER DATABASE DATAFILE '/u02/oracle/rbdb1/users3.dbf' OFFLINE DROP;
          ?
          ??? 3、修改TableSpace中所有DataFile或TempFile的可用性
          ?
          ??? ALTER TABLESPACE ... DATAFILE {ONLINE|OFFLINE}
          ??? ALTER TABLESPACE ... TEMPFILE {ONLINE|OFFLINE}
          ?
          ??? 注:修改某TableSpace中的所有數(shù)據(jù)文件,但是TableSpace本身的狀態(tài)不改變。
          ?
          ??? 總結(jié):
          ?
          ??? ① ALTER TABLESPACE可以在數(shù)據(jù)庫裝載狀態(tài)時發(fā)布,無需打開
          ??? ② 涉及到系統(tǒng)表空間、撤銷表空間、默認臨時表空間時,必須是未打開的數(shù)據(jù)庫
          ??? ③ ALTER DATABASE DATAFILE 語句中必須填入文件全名




          -The End-

          posted on 2009-02-04 21:18 decode360-3 閱讀(399) 評論(0)  編輯  收藏 所屬分類: DBA
          主站蜘蛛池模板: 奎屯市| 洞头县| 罗江县| 义马市| 博兴县| 文成县| 酒泉市| 来凤县| 岗巴县| 成安县| 高陵县| 泗洪县| 乐至县| 永昌县| 广南县| 灵台县| 八宿县| 仁怀市| 色达县| 永仁县| 鄄城县| 万州区| 上栗县| 大余县| 胶南市| 阳江市| 克山县| 江城| 道孚县| 黑龙江省| 饶平县| 庆安县| 芦山县| 汽车| 临邑县| 宝兴县| 嘉峪关市| 通道| 吴堡县| 奈曼旗| 天门市|