Oracle数据库有联机重做日志,汇总这个日志是数据记录对数据库所做的修改,比如插入、库各删除、版本更新等,单机对这些操作都会记录在联机重做日志里。启用一般数据库至少要有2个联机重做日志组。归档如果数据库处于非归档模式,汇总联机日志在切换时就会丢弃,数据而在归档模式下,当发生日志切换的时候,被切换的日志会进行归档。
[[400592]]
非归档模式不生成归档日志,从数据安全角度来说,这种模式缺点是主要的,而优点可以忽略不计。
对于oracle 9i启用日志归档的方法如下:
- ALTER SYSTEM SET log_archive_start=TRUE SCOPE=spfile;
- ALTER SYSTEM SET log_archive_dest_1='location=/u01/oradata/MYSID/archive/' SCOPE=spfile;
- ALTER SYSTEM SET log_archive_format='arch_%t_%s.arc' SCOPE=spfile;
- SHUTDOWN IMMEDIATE;
- STARTUP MOUNT;
- ARCHIVE LOG START;
- ALTER DATABASE ARCHIVELOG;
- ALTER DATABASE OPEN;
在oracle 10g中log_archive_start参数和archive log start命令被废弃。其方法如下:
- ALTER SYSTEM SET log_archive_dest_1='location=/u01/oradata/MYSID/archive/' SCOPE=spfile;
- ALTER SYSTEM SET log_archive_format='arch_%t_%s_%r.arc' SCOPE=spfile;
- SHUTDOWN IMMEDIATE;
- STARTUP MOUNT;
- ALTER DATABASE ARCHIVELOG;
- ALTER DATABASE OPEN;
由于ALTER DATABASE ARCHIVELOG仅当数据库以独占模式挂载时,才能执行该命令。这意味着必须先停止整个群集数据库,然后才能执行该操作。
1、设置相关的存档参数
- ALTER SYSTEM SET log_archive_start = TRUE范围= spfile;
- ALTER SYSTEM SET log_archive_dest_1 ='location = / u01 / oradata / MYDB / archive /'SCOPE = spfile;
- ALTER SYSTEM SET log_archive_format ='arch_%t_%s.arc'SCOPE = spfile;
2、由于我们需要以独占模式挂载数据库,因此我们必须还更改以下参数
- ALTER SYSTEM SET cluster_database=FALSE SCOPE=spfile;
3、停止集群
- $ srvctl stop database -d MYDB
4、在群集关闭的情况下,我们可以连接到单个节点并发出以下命令。
- STARTUP MOUNT;
- ARCHIVE LOG START;
- ALTER DATABASE ARCHIVELOG;
- ALTER SYSTEM SET cluster_database=TRUE SCOPE=spfile;
- SHUTDOWN IMMEDIATE;
请注意,该CLUSTER_DATABASE参数已被重置为其原始值。由于数据文件和spfile在所有实例之间共享,因此该操作仅需要从单个节点执行。
5、再次启动集群数据库
- $ srvctl start database -d MYDB
当前设置将所有存档日志放置在同一目录中。这是可以接受的,因为线程(%t)是存档格式的一部分,可以防止实例之间的任何名称冲突。如果需要位于特定于节点的位置,LOG_ARCHIVE_DEST_1则可以为每个实例使用相关的SID前缀。
如果LOG_ARCHIVE_DEST_n未设置参数,则已归档的重做日志将放置在FRA中。如果要手动指定其位置和文件名格式,可以按以下步骤进行操作。
1、设置归档相关参数
- ALTER SYSTEM SET log_archive_dest_1 ='location = / u01 / oradata / MYDB / archive /'SCOPE = spfile;
- ALTER SYSTEM SET log_archive_format ='arch_%t_%s_%r.arc'SCOPE = spfile;
2、由于我们需要以独占模式挂载数据库,因此我们还必须更改以下参数。
- ALTER SYSTEM SET cluster_database=FALSE SCOPE=spfile;
3、在群集关闭的情况下,我们可以连接到单个节点并发出以下命令。
- STARTUP MOUNT;
- ALTER DATABASE ARCHIVELOG;
- ALTER SYSTEM SET cluster_database=TRUE SCOPE=spfile;
- SHUTDOWN IMMEDIATE;
请注意,该CLUSTER_DATABASE参数已被重置为其原始值。由于数据文件和spfile在所有实例之间共享,因此该操作仅需要从单个节点执行。
4、启动集群数据库
- $ srvctl start database -d MYDB
从10gR2开始,您不再需要CLUSTER_DATABASE在此过程中重置参数。
如果LOG_ARCHIVE_DEST_n未设置参数,则已归档的重做日志将放置在FRA中。如果要手动指定其位置和文件名格式,可以按以下步骤进行操作。
1、设置归档相关参数
- ALTER SYSTEM SET log_archive_dest_1 ='location = / u01 / oradata / MYDB / archive /'SCOPE = spfile;
- ALTER SYSTEM SET log_archive_format ='arch_%t_%s_%r.arc'SCOPE = spfile;
2、在命令行中,我们可以使用以下命令停止整个集群数据库并以装入模式启动它。
- $ srvctl stop database -d MYDB
- $ srvctl start database -d MYDB -o mount
一旦数据库处于mount模式可以用下面的命令启动归档
- sqlplus / as sysdba
- ALTER DATABASE ARCHIVELOG;
- EXIT;
由于数据文件和spfile在所有实例之间共享,因此该操作仅需要从单个节点执行。
3、停止并重新启动集群数据库
- $ srvctl stop database -d MYDB
- $ srvctl start database -d MYDB
配置方法同oracle 10gR2
配置方法同oracle 10gR2
1、此文汇集了oracle各版本单机和集群启用归档的方法,以备工作中查询备用。
责任编辑:姜华 来源: 今日头条 Oracle数据库rac启用
(责任编辑:休闲)
2019年化解产能过剩“路线图”出台 坚定不移推进供给侧结构性改革
安徽:截止10月底各级财政累计拨付民生工程资金1213.2亿元
欧盟将对华不锈钢无缝钢管反倾销税延长5年 对中国涉案产品最高征收71.9%