Oracle 控制归档
在安装Oracle 11g时,默认为数据库运行在非归档模式下,这样可以避免在创建数据库的过程中对生成的重做日志进行归档。当数据库开始正常运行后,就可以将它切换到归档模式中。要将数据库在归档模式与非归档式之间进行切换,需要使用带ARCHIVELOG或NOARCHIVELOG子句的ALTER DATABAS语句。
1.改变日志操作模式
从Oracle 10g开始,改变日志操作模式已经变得很简单,更容易管理。在11g中,默认情况下,归档日志会存放到快速恢复区所对应的目录(由初始化参数DB_RECOVERY_FILE_DEST设定),并且会按照特定的格式生成归档日志文件名。当想要将归档日志放在默认的路径下是,只需执行ALTER DATABASE ARCHIVELOG即可。
改变日志操作模式时,必须以SYSDBA和SYSOPER身份执行相应操作。将数据库由非归档模式切换为归档式的具体操作步骤:
(1)检查当前日志操作模式。
在改变日志操作模式之前,DBA应首先检查当前日志操作模式。通过查询动态性能视图V$DATABASE,可以确定当前日志操作模式。示例如下:
SQL> select log_mode from v$database;
LOG_MODE
------------
NOARCHIVELOG
(2)关闭数据库,然后装载数据库。
改变日志操作模式只能在MOUNT状态下进行,因此必须先关闭数据库,然后重新装载数据库。需要注意,如果要改变日志操作模式,那么在关闭数据库时不能使用SHUTDOWN ABORT命令。示例如下:
SQL> shutdown immediate;
SQL>startup mount
(3)改变日志操作模式,然后打开数据库。
将数据库转变为MOUNT状态后,就可以使用ALTER DATABASE语句将数据库切换到归档模式。改变日志操作模式后,打开数据库。示例如下:
SQL> alter database archivelog;
数据库已更改。
SQL> alter database open;
数据库已更改。
可以使用如下的语句查看数据库是否已经处于归档模式:
SQL> archive log list;
数据库日志模式存档模式
自动存档启用
存档终点USE_DB_RECOVERY_FILE_DEST
最早的联机日志序列68
下一个存档日志序列71
当前日志序列71
安装oracle10g从这里要可以看出,数据库是否已经被置于归档模式下,并且是否启用了自动归档功能,以及归档的重做日志等信息。
2.配置归档进程
为避免LGWR进程出现等待状态,可以考虑启动多个ARCn进程。修改初始化参数LOG_ARCHIVE_MAX_PROCESSES可以调整启动ARCn进程的数量。当将数据库转变为ARCHIVELOG模式时,默认情况下Oracle会自动启动两个归档进程。通过改变初始化参数LOG_ARCHIVE_MAX_PROCESSES的值,DBA可以动态地增加或降低归档进程的个数。例如:
SQL> alter system set log_archive_max_processes=5;
系统已更改。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论