Decode360's Blog

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

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 ::  :: 管理 ::
            397 隨筆 :: 33 文章 :: 29 評論 :: 0 Trackbacks
          <2008年11月>
          2627282930311
          2345678
          9101112131415
          16171819202122
          23242526272829
          30123456

          公告

          話到七分,酒至微醺,筆墨疏宕,言詞婉約,古樸殘破,含蓄醞籍,就是不完而美之最高境界。

          常用鏈接

          留言簿(13)

          隨筆分類(397)

          隨筆檔案(397)

          文章分類(33)

          新聞分類(15)

          收藏夾(74)

          Blog_List

          IT_Web

          My_Link

          最新隨筆

          最新評論

          Oracle管理文件(一)
          ?
          ??? Oracle的管理文件說白了就是Oracle自動來進行文件的管理,如此則不再需要認為得進行指定和對OS上的文件系統進行操作,只需要操作Oracle的對象即可。這樣的做法可以提供比原始的管理更加有效的操作方式,不好的地方在于和我們以前的思維邏輯不太一致,可能會不太容易接受。先看一下關于Oracle管理文件的介紹。
          ?
          ?
          一、Oracle管理文件
          ?
          ??? “Oracle管理文件”可以簡化Oralce數據庫的管理,不需要DBA直接管理Oracle數據庫在操作系統上的文件。根據數據庫對象而不是文件名來指定操作。
          ?
          ??? “Oracle管理文件”可以是:跟蹤文件、審計文件、報警文件、核心文件等。
          ?
          ??? Oracle可以對“表空間”、“聯機重做日志”、“控制文件”來創建相應的唯一的Oracle管理文件,并在不需要時刪除。
          ?
          ?
          二、Oracle管理文件的好處
          ?
          ??? 1、使得數據庫管理更加方便。
          ??????? 不需要構造文件名和存儲要求,可相應命名,定義存儲特征并分配存儲池
          ?
          ??? 2、減少由管理員指定錯誤文件而產生的破壞
          ??????? 管理文件創造的文件及文件名都是唯一的,不會在不同數據庫使用同一文件,一個文件使用不同名稱等
          ?
          ??? 3、減少由廢棄文件消耗引起的磁盤空間浪費
          ??????? Oracle管理的文件不用時會自動刪除,并防止了刪除文件時可能出現的錯誤
          ?
          ??? 4、簡化測試和開發數據庫的創建過程
          ??????? 決定有關文件結構和名稱的時間減少,執行更少的文件管理任務
          ?
          ??? 5、便攜式第三方工具的開發更容易展開
          ??????? 不必將操作系統特定的文件名稱放到SQL腳本中
          ?
          ?
          三、Oracle管理文件的條件
          ?
          ??? Oracle管理文件可以單獨存在,即可以以前的文件都是非Oracle管理,之后創建的為Oracle管理文件
          ?
          ??? 初始化參數:
          ?
          ??? DB_CREATE_FILE_DEST:定義默認文件系統目錄位置。以后創建時將默認創建在此。
          ??????? 可以在這個目錄下創建:數據文件、臨時文件、聯機重做日志文件、控制文件。
          ??????? 例: DB_CREATE_FILE_DEST = '/u01/oradata/payroll'
          ?
          ??? DB_CREATE_ONLINE_LOG_DEST_n:聯機重做日志文件和控制文件的默認目錄位置。n表示多錄備份的不同位置。
          ??????? 可以在這個目錄下創建:聯機重做日志文件、控制文件。
          ??????? 例: DB_CREATE_ONLINE_LOG_DEST_1 = '/u02/oradata/payroll'
          ??????????? DB_CREATE_ONLINE_LOG_DEST_2 = '/u03/oradata/payroll'
          ?
          ??? 注意:上面指定的目錄必須要事先存在,Oracle不會自己創建。另改參數可以使用ALTER SYSTEM、ALTER SESSION來設置。
          ????????? 當創建命令中沒有指定文件,且上面兩個參數有設定的時候,Oracle將會創建Oracle管理文件。
          ?
          ?
          四、管理文件的創建
          ?
          ??? 1、名稱創建規則
          ?
          ??? 數據文件: ora_%t_%u.dbf??? /u01/oradata/payroll/ora_tbs1_2ixfh90q.dbf
          ??? 臨時文件: ora_%t_%u.tmp??? /u01/oradata/payroll/ora_temp1_6dygh80r.tmp
          ??? 日志文件: ora_%g_%u.log??? /u01/oradata/payroll/ora_1_wo94n2xi.log
          ??? 控制文件: ora_%u.ctl?????? /u01/oradata/payroll/ora_cmre7t30p.ctl
          ?
          ??? 注:%t是表空間名稱;%u是8位隨機字符;%g是聯機重做日志文件組號
          ?
          ??? 2、在創建數據庫時創建Oracle管理文件
          ?
          ??? 創建數據庫時可以包含以下子句來指定創建的文件名和地址:
          ??????? CONTROL_FILES、LOGFILE、DATAFILE、UNDO TABLESPACE、TEMPORARY TABLESPACE
          ?
          ??? * 如果在創建語句中指定了文件名,則不創建Oracle管理文件
          ??? * 在創建過程中未指定文件名,且已經配置了初始化管理文件地址參數,則創建為Oracle管理文件
          ??? * 如果即沒有文件名,也沒有指定參數,那么有的在默認路徑創建,有的報錯
          ?
          ??? 舉例1:
          ??? DB_CREATE_FILE_DEST = '/u01/oradata/sample'
          ??? DB_CREATE_ONLINE_LOG_DEST_1 = '/u02/oradata/sample'
          ??? DB_CREATE_ONLINE_LOG_DEST_2 = '/u03/oradata/sample'
          ??? CREATE DATABASE sample;
          ?
          ??? * u01下生成SYSTEM表空間的文件,大小100M,自動擴展,無大小限制
          ??? * u02、u03下生成兩個聯機日志組,每組兩個成員,每個組員100M
          ??? * 自動撤銷有效則在u01下生成撤銷表空間,大小10M
          ??? * u02、u03下生成兩個控制文件,u02為主控制文件
          ?
          ?
          五、創建Oracle管理文件
          ?
          ??? 1、表空間的數據文件
          ?
          ????? CREATE TABLESPACE tablespace_name
          ????? CREATE UNDO TABLESPACE tablespace_name
          ????? ALTER TABLESPACE tablespace_name ADD DATAFILE
          ?
          ??? 注1:只要不加文件地址和文件名,其他的命令參數都可以加入,不影響Oracle管理文件的創建
          ??? 注2:要注意表空間名不代表數據文件名
          ?
          ??? 2、臨時表空間的臨時文件
          ?
          ????? CREATE TEMPORARY TABLESPACE tablespace_name
          ????? ALTER TABLESPACE tablespace_name ADD TEMPFILE
          ?
          ??? 3、控制文件
          ?
          ??? 控制文件的創建地址順序確定:
          ?
          ????? ① 看命令中是否直接指定地址
          ????? ② 看啟動參數中是否有CONTROL_FILES參數
          ????? ③ 看DB_CREATE_ONLINE_LOG_DEST_n
          ????? ④ DB_CREATE_FILE_DEST
          ????? ⑤ 以上都無時,在默認路徑創建
          ?
          ??? 注意RESETLOGS/NORESETLOGS子句的使用,下面是創建實例:
          ?
          ??? CREATE CONTROLFILE
          ??? DATABASE sample
          ??? LOGFILE GROUP 1 ('/u02/oradata/sample/ora_1_o220rtt9.log',
          ???????????????????? '/u03/oradata/sample/ora_1_vhs82jdm.log',) SIZE 100M,
          ??????????? GROUP 2 ('/u02/oradata/sample/ora_2_82jd6nd9.log',
          ???????????????????? '/u03/oradata/sample/ora_2_nmisk9wj.log',) SIZE 100M
          ??? NORESETLOGS
          ??? DATAFILE '/u01/oradata/sample/ora_system_xu34ymd7.dbf' SIZE 100M
          ??? MAXLOGFILES 5
          ??? MAXLOGHISTORY 100
          ??? MAXDATAFILES 10
          ??? MAXINSTANCES 2
          ??? ARCHIVELOG;
          ?
          ??? 4、聯機重做日志
          ?
          ??? ALTER DATABASE ADD LOGDILE
          ??? ALTER DATABASE OPEN RESETLOGS
          ?
          ?
          posted on 2008-11-09 21:39 decode360 閱讀(128) 評論(0)  編輯  收藏 所屬分類: 08.DBA
          主站蜘蛛池模板: 乌什县| 陵川县| 明溪县| 黔江区| 荔浦县| 庄河市| 攀枝花市| 金坛市| 扶绥县| 南木林县| 高密市| 乌鲁木齐市| 博白县| 景洪市| 潞西市| 黔江区| 英山县| 肇东市| 邮箱| 武功县| 米易县| 铜鼓县| 高邑县| 福贡县| 舞钢市| 灯塔市| 绵阳市| 顺平县| 谢通门县| 阳信县| 额敏县| 遂昌县| 永善县| 北川| 分宜县| 江陵县| 渝北区| 麻江县| 历史| 霍山县| 高青县|