- 使用 dba 登录:
Microsoft Windows [版本 10.0.18363.836] (c) 2019 Microsoft Corporation。保留所有权利。 C:\Users\xuxiaowei>sqlplus sys/orcl as sysdba SQL*Plus: Release 11.2.0.1.0 Production on 星期日 5月 31 18:07:59 2020 Copyright (c) 1982, 2010, Oracle. All rights reserved. 连接到: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL>
- 查看是否开启归档日志:
- 方法一:
SQL> archive log list; 数据库日志模式 非存档模式 自动存档 禁用 存档终点 USE_DB_RECOVERY_FILE_DEST 最早的联机日志序列 22 当前日志序列 24 SQL>
- 方法二:
SQL> select log_mode from v$database; LOG_MODE ------------ NOARCHIVELOG SQL>
- 方法一:
- 开启归档日志:
- 关闭数据库(改变日志操作模式必须在 mount 状态下进行,因此必须要关闭数据库):
SQL> shutdown immediate; 数据库已经关闭。 已经卸载数据库。 ORACLE 例程已经关闭。 SQL>
- 开启 mount 模式(改变日志操作模式必须在 mount 状态下进行,因此必须要关闭数据库):
SQL> startup mount; ORACLE 例程已经启动。 Total System Global Area 409194496 bytes Fixed Size 2176248 bytes Variable Size 306187016 bytes Database Buffers 92274688 bytes Redo Buffers 8556544 bytes 数据库装载完毕。 SQL>
- 开启归档日志:
SQL> alter database archivelog; 数据库已更改。 SQL>
- 开启数据库:
SQL> alter database open; 数据库已更改。 SQL>
- 关闭数据库(改变日志操作模式必须在 mount 状态下进行,因此必须要关闭数据库):
- 查看归档状态:
- 方法一:
SQL> archive log list; 数据库日志模式 存档模式 自动存档 启用 存档终点 USE_DB_RECOVERY_FILE_DEST 最早的联机日志序列 22 下一个存档日志序列 24 当前日志序列 24 SQL>
- 方法二:
SQL> select log_mode from v$database; LOG_MODE ------------ ARCHIVELOG SQL>
- 方法一:
- 查看归档文件位置、大小:
SQL> show parameter recover NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ db_recovery_file_dest string D:\app\xuxiaowei\recovery_area db_recovery_file_dest_size big integer 3912M recovery_parallelism integer 0 SQL>
- 设置归档文件大小:
SQL> alter system set db_recovery_file_dest_size=1G; 系统已更改。 SQL> show parameter recover NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ db_recovery_file_dest string D:\app\xuxiaowei\recovery_area db_recovery_file_dest_size big integer 1G recovery_parallelism integer 0 SQL>
- 查看已使用归档文件的百分比:
SQL> select vfrau.* from v$flash_recovery_area_usage vfrau where vfrau.file_type = 'ARCHIVED LOG'; FILE_TYPE PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE -------------------- ------------------ ------------------------- NUMBER_OF_FILES --------------- ARCHIVED LOG 0 0 0 SQL>
- 创建表:
CREATE TABLE "A" ( "id" NVARCHAR2(255) )
- 插入随机数据:
使用循环插入一百万条随机数,此时归档日志还未爆满,数据库能正常使用。declare i number; begin i:=0; while i<1000000 loop INSERT INTO A ("id") VALUES (DBMS_RANDOM.RANDOM); i:=i+1; end loop; end;
- 接下来插入一千万条随机数据,让归档日志爆满:
归档日志爆满时,普通用户将不能使用数据库,仅 dba 可连接数据库。
查看归档日志已使用的百分比:declare i number; begin i:=0; while i<10000000 loop INSERT INTO A ("id") VALUES (DBMS_RANDOM.RANDOM); i:=i+1; end loop; end;
SQL> select vfrau.* from v$flash_recovery_area_usage vfrau where vfrau.file_type = 'ARCHIVED LOG'; FILE_TYPE PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE -------------------- ------------------ ------------------------- NUMBER_OF_FILES --------------- ARCHIVED LOG 99.64 0 23 SQL>
- 此时在 Navicat 使用普通用户连接数据库时:
- 使用 dba 连接:
- 此时在 Navicat 使用普通用户连接数据库时:
- 删除归档日志:
- 删除所有归档日志:
rman.exe 在 Oracle 安装目录的 product\11.2.0\dbhome_1\BIN\ 文件夹下。
删除所有归档日志方式一:delete archivelog all;
删除所有归档日志方式二:
删除示例如下:delete archivelog until time 'sysdate';
Microsoft Windows [版本 10.0.18363.836] (c) 2019 Microsoft Corporation。保留所有权利。 C:\Users\xuxiaowei>D:\app\xuxiaowei\product\11.2.0\dbhome_1\BIN\rman.exe target sys/orcl 恢复管理器: Release 11.2.0.1.0 - Production on 星期日 5月 31 19:23:47 2020 Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved. 连接到目标数据库: ORCL (DBID=1568723183) RMAN> delete archivelog all; 使用目标数据库控制文件替代恢复目录 分配的通道: ORA_DISK_1 通道 ORA_DISK_1: SID=159 设备类型=DISK db_unique_name 为 ORCL 的数据库的归档日志副本列表 ===================================================================== 关键字 线程序列 S 时间下限 ------- ---- ------- - ---------- 13 1 36 A 31-5月 -20 名称: D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_36_HF73WHGR_.ARC 14 1 37 A 31-5月 -20 名称: D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_37_HF73WMCF_.ARC 15 1 38 A 31-5月 -20 名称: D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_38_HF73WQ44_.ARC 16 1 39 A 31-5月 -20 名称: D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_39_HF73WTWY_.ARC 17 1 40 A 31-5月 -20 名称: D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_40_HF73WYOO_.ARC 18 1 41 A 31-5月 -20 名称: D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_41_HF741RKZ_.ARC 19 1 42 A 31-5月 -20 名称: D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_42_HF741WD0_.ARC 20 1 43 A 31-5月 -20 名称: D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_43_HF742027_.ARC 21 1 44 A 31-5月 -20 名称: D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_44_HF7423VL_.ARC 22 1 45 A 31-5月 -20 名称: D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_45_HF74281V_.ARC 23 1 46 A 31-5月 -20 名称: D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_46_HF742CTL_.ARC 24 1 47 A 31-5月 -20 名称: D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_47_HF742HVM_.ARC 25 1 48 A 31-5月 -20 名称: D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_48_HF742MMG_.ARC 26 1 49 A 31-5月 -20 名称: D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_49_HF742QF0_.ARC 27 1 50 A 31-5月 -20 名称: D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_50_HF742V34_.ARC 28 1 51 A 31-5月 -20 名称: D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_51_HF742YTN_.ARC 29 1 52 A 31-5月 -20 名称: D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_52_HF7432VB_.ARC 30 1 53 A 31-5月 -20 名称: D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_53_HF7436PO_.ARC 31 1 54 A 31-5月 -20 名称: D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_54_HF743B47_.ARC 32 1 55 A 31-5月 -20 名称: D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_55_HF743FYB_.ARC 33 1 56 A 31-5月 -20 名称: D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_56_HF743L1N_.ARC 34 1 57 A 31-5月 -20 名称: D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_57_HF743P31_.ARC 35 1 58 A 31-5月 -20 名称: D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_58_HF743T1Q_.ARC 是否确定要删除以上对象 (输入 YES 或 NO)? Y 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_36_HF73WHGR_.ARC RECID=13 STAMP=1041879951 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_37_HF73WMCF_.ARC RECID=14 STAMP=1041879955 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_38_HF73WQ44_.ARC RECID=15 STAMP=1041879959 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_39_HF73WTWY_.ARC RECID=16 STAMP=1041879963 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_40_HF73WYOO_.ARC RECID=17 STAMP=1041879966 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_41_HF741RKZ_.ARC RECID=18 STAMP=1041880120 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_42_HF741WD0_.ARC RECID=19 STAMP=1041880124 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_43_HF742027_.ARC RECID=20 STAMP=1041880128 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_44_HF7423VL_.ARC RECID=21 STAMP=1041880132 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_45_HF74281V_.ARC RECID=22 STAMP=1041880136 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_46_HF742CTL_.ARC RECID=23 STAMP=1041880140 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_47_HF742HVM_.ARC RECID=24 STAMP=1041880144 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_48_HF742MMG_.ARC RECID=25 STAMP=1041880147 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_49_HF742QF0_.ARC RECID=26 STAMP=1041880151 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_50_HF742V34_.ARC RECID=27 STAMP=1041880155 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_51_HF742YTN_.ARC RECID=28 STAMP=1041880159 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_52_HF7432VB_.ARC RECID=29 STAMP=1041880163 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_53_HF7436PO_.ARC RECID=30 STAMP=1041880166 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_54_HF743B47_.ARC RECID=31 STAMP=1041880170 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_55_HF743FYB_.ARC RECID=32 STAMP=1041880174 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_56_HF743L1N_.ARC RECID=33 STAMP=1041880178 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_57_HF743P31_.ARC RECID=34 STAMP=1041880182 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_58_HF743T1Q_.ARC RECID=35 STAMP=1041880186 23 对象已删除 RMAN>
- 删除 7 天前的归档日志如下:
delete archivelog until time 'sysdate-7';
- 删除所有归档日志:
- Windows 自动删除归档日志(随机插入一千万条数据):
- 在 D:\app 新建 ClearOracleArchlog.rman 文件,内容如下:
由于本人电脑上的 Oracle 归档日志都属于同一天,所以是删除所有归档日志,正式环境请根据自己的需要保留归档日志的天数和设置归档文件的大小。DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE'; EXIT;
- 新建 ClearOracleArchlog.bat 脚本:
@rem 获取当前日期 set new_date=%date% @rem 获取当前时间 set new_time=%time% @rem 时间格式化(符合文件名) set new_time_format=%new_time:~0,2%-%new_time:~3,2%-%new_time:~6,2% @rem 日期与时间组合 set new_date_time_format=%new_date%-%new_time_format% @rem 运行脚本 D:/app/xuxiaowei/product/11.2.0/dbhome_1/BIN/rman target sys/orcl cmdfile=D:/app/ClearOracleArchlog.rman log=D:/app/rman_%new_date_time_format%.log
- 运行脚本 ClearOracleArchlog.bat:
- 查看日志文件 rman_2020-05-31-19-45-45.log:
恢复管理器: Release 11.2.0.1.0 - Production on 星期日 5月 31 19:45:45 2020 Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved. 连接到目标数据库: ORCL (DBID=1568723183) RMAN> DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE'; 2> 3> EXIT; 使用目标数据库控制文件替代恢复目录 分配的通道: ORA_DISK_1 通道 ORA_DISK_1: SID=33 设备类型=DISK 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_59_HF7511LY_.ARC RECID=36 STAMP=1041881121 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_60_HF7511V0_.ARC RECID=37 STAMP=1041881122 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_61_HF751244_.ARC RECID=38 STAMP=1041881122 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_62_HF7513NG_.ARC RECID=39 STAMP=1041881123 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_63_HF75157L_.ARC RECID=40 STAMP=1041881125 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_64_HF7516PF_.ARC RECID=41 STAMP=1041881126 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_65_HF75185Q_.ARC RECID=42 STAMP=1041881128 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_66_HF7519MH_.ARC RECID=43 STAMP=1041881129 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_67_HF751C5D_.ARC RECID=44 STAMP=1041881131 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_68_HF751DOY_.ARC RECID=45 STAMP=1041881132 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_69_HF751G7D_.ARC RECID=46 STAMP=1041881134 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_70_HF751HOB_.ARC RECID=47 STAMP=1041881135 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_71_HF751K41_.ARC RECID=48 STAMP=1041881137 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_72_HF751LMX_.ARC RECID=49 STAMP=1041881138 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_73_HF751N2B_.ARC RECID=50 STAMP=1041881140 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_74_HF75VFN2_.ARC RECID=51 STAMP=1041881965 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_75_HF75VKN8_.ARC RECID=52 STAMP=1041881969 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_76_HF75VOC4_.ARC RECID=53 STAMP=1041881973 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_77_HF75VSJ6_.ARC RECID=54 STAMP=1041881977 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_78_HF75VXK9_.ARC RECID=55 STAMP=1041881981 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_79_HF75W1C5_.ARC RECID=56 STAMP=1041881985 已删除的归档日志 归档日志文件名=D:\APP\XUXIAOWEI\RECOVERY_AREA\ORCL\ARCHIVELOG\2020_05_31\O1_MF_1_80_HF75W5BO_.ARC RECID=57 STAMP=1041881989 22 对象已删除 恢复管理器完成。
- 配置 Windows 定时任务:
- 打开计算机管理:
- 方式一:在此电脑(我的电脑)上右键,点管理。
- 方式二:运行 compmgmt.msc。
- 在 计算机管理(管理) --> 系统工具 --> 任务计划程序 --> 任务计划程序库 上新建文件夹,命名为:Oracle,在 Oracle 文件夹下 创建基本任务,命名:rman:
- 选择频率:
- 选择开始时间:
- 选择操作:
- 选择脚本:
- 点击完成:
- 创建后显示:
- 运行后日志:
- 刷新定时器,显示:
- 打开计算机管理:
- 在 D:\app 新建 ClearOracleArchlog.rman 文件,内容如下:
- Linux 与 Windows 同理。
Oracle 11g 管理归档日志
于 2020-05-31 18:23:11 首次发布