Decode360's Blog

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

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 ::  :: 管理 ::
            397 隨筆 :: 33 文章 :: 29 評論 :: 0 Trackbacks
          修改Redo LogFile大小
          ?
          ?
          ??? 最近在把DATABASE切換到ARCHIVELOG模式之后,發現Oracle默認的是非自動歸檔,即LOG_ARCHIVE_START = FALSE 可能是 因為當前測試的數據庫是手工創建的,所以有些啟動參數和用DBCA創建的不太一致。
          ?
          ??? 另外自己創建的重做日志文件也都比較小,只有3個2M的文件,直接執行一個腳本就把所有重做日志寫滿了,又沒有設置自動歸檔,所以整個系統都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 來重置大小,所以比較麻煩。
          ?
          ??? 在網上查了一下,找到N多年前biti老大給的方法,步驟應該很清楚了,前提是要用ARCHIVELOG模式,否則刪除舊日志后無備份信息。
          ?
          ?
          ?
          方法:加入新的大的日志文件,然后刪掉舊的小的日志文件

          假設現有3個日志組,每個組內有1個成員,每個成員的大小為1MB,現在想把此3個日志組的成員大小都改為10MB

          1、創建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、切換當前日志到新的日志組

          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、操作系統下刪除原日志組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、到操作系統下刪除原日志組4、5中的文件


          9、備份當前的最新的控制文件

          SQL> alter database backup controlfile to trace resetlogs;
          ?
          ?
          posted on 2008-12-02 22:05 decode360 閱讀(192) 評論(0)  編輯  收藏 所屬分類: 07.Oracle
          主站蜘蛛池模板: 武威市| 江川县| 永康市| 永春县| 高邮市| 凤冈县| 海宁市| 合川市| 张北县| 崇阳县| 石渠县| 瓮安县| 安阳市| 库尔勒市| 桐城市| 平陆县| 金湖县| 绥芬河市| 绥中县| 西宁市| 祁阳县| 汪清县| 镶黄旗| 平罗县| 义马市| 平遥县| 得荣县| 通河县| 天津市| 金昌市| 南通市| 琼海市| 襄汾县| 桃江县| 富川| 福清市| 宁德市| 马鞍山市| 西昌市| 芒康县| 宽城|