Decode360's Blog

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

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 ::  :: 管理 ::
            397 隨筆 :: 33 文章 :: 29 評論 :: 0 Trackbacks
          修改Redo LogFile大小
          ?
          ?
          ??? 最近在把DATABASE切換到ARCHIVELOG模式之后,發(fā)現(xiàn)Oracle默認(rèn)的是非自動歸檔,即LOG_ARCHIVE_START = FALSE 可能是 因為當(dāng)前測試的數(shù)據(jù)庫是手工創(chuàng)建的,所以有些啟動參數(shù)和用DBCA創(chuàng)建的不太一致。
          ?
          ??? 另外自己創(chuàng)建的重做日志文件也都比較小,只有3個2M的文件,直接執(zhí)行一個腳本就把所有重做日志寫滿了,又沒有設(shè)置自動歸檔,所以整個系統(tǒng)都hang住了,都在等待日志歸檔,clear了也不行,就只能增加logfile了。
          ?
          ??? alter.log日志信息:
          ?
          ??? Mon Dec 15 14:38:08 2008
          ??? Thread 1 advanced to log sequence 155
          ????? Current log# 2 seq# 155 mem# 0: D:\ORACLE\ORADATA\KAKA\REDO02.LOG
          ??? Thread 1 advanced to log sequence 156
          ????? Current log# 3 seq# 156 mem# 0: D:\ORACLE\ORADATA\KAKA\REDO03.LOG
          ??? Thread 1 cannot allocate new log, sequence 157
          ??? All online logs needed archiving
          ????? Current log# 3 seq# 156 mem# 0: D:\ORACLE\ORADATA\KAKA\REDO03.LOG
          ?
          ?
          ??? LogFile不能像DataFile那樣直接通過alter database datafile ... resize 來重置大小,所以比較麻煩。
          ?
          ??? 在網(wǎng)上查了一下,找到N多年前biti老大給的方法,步驟應(yīng)該很清楚了,前提是要用ARCHIVELOG模式,否則刪除舊日志后無備份信息。
          ?
          ?
          ?
          方法:加入新的大的日志文件,然后刪掉舊的小的日志文件

          假設(shè)現(xiàn)有3個日志組,每個組內(nèi)有1個成員,每個成員的大小為1MB,現(xiàn)在想把此3個日志組的成員大小都改為10MB

          1、創(chuàng)建2個新的日志組

          alter database add logfile group 4 ('D:\ORACLE\ORADATA\ORADB\REDO04_1.LOG') size 1024k;
          alter database add logfile group 5 ('D:\ORACLE\ORADATA\ORADB\REDO05_1.LOG') size 1024k;

          2、切換當(dāng)前日志到新的日志組

          alter system switch logfile;
          alter system switch logfile;

          3、刪除舊的日志組

          alter database drop logfile group 1;
          alter database drop logfile group 2;
          alter database drop logfile group 3;

          4、操作系統(tǒng)下刪除原日志組1、2、3中的文件

          5、重建日志組1、2、3

          alter database add logfile group 1 ('D:\ORACLE\ORADATA\ORADB\REDO01_1.LOG') size 10M;
          alter database add logfile group 2 ('D:\ORACLE\ORADATA\ORADB\REDO02_1.LOG') size 10M;
          alter database add logfile group 3 ('D:\ORACLE\ORADATA\ORADB\REDO03_1.LOG') size 10M;

          6、切換日志組

          alter system switch logfile;
          alter system switch logfile;
          alter system switch logfile;

          7、刪除中間過渡用的日志組4、5

          alter database drop logfile group 4;
          alter database drop logfile group 5;

          8、到操作系統(tǒng)下刪除原日志組4、5中的文件


          9、備份當(dāng)前的最新的控制文件

          SQL> alter database backup controlfile to trace resetlogs;
          ?
          ?
          posted on 2008-12-02 22:05 decode360 閱讀(194) 評論(0)  編輯  收藏 所屬分類: 07.Oracle
          主站蜘蛛池模板: 郓城县| 宁河县| 建湖县| 油尖旺区| 河间市| 广宁县| 博客| 隆昌县| 离岛区| 永城市| 竹溪县| 安龙县| 高邑县| 乌鲁木齐县| 内江市| 灵川县| 麻城市| 福清市| 凉城县| 尉犁县| 通海县| 新蔡县| 调兵山市| 芷江| 浦北县| 舞阳县| 襄汾县| 昌都县| 长葛市| 杭锦旗| 安仁县| 两当县| 青浦区| 乌苏市| 奉新县| 大足县| 武威市| 新沂市| 上饶县| 那坡县| 全州县|