2019独角兽企业重金招聘Python工程师标准>>>

题记:

生产RAC,闪回和归档必须配置,但是闪回功能基本上用不到所以可以考虑不启用,读者只需要了解其作用以及如何紧急处理因归档或者闪回空间快满或者已经满导致数据库crash的解决方法即可。

数据库的备份、恢复始终是重点,后续继续讨论。


开启归档步骤

1.查看当前数据库归档情况--未开启

SQL> select name,log_mode,flashback_on from gv$database;

NAME  LOG_MODE     FLASHBACK_ON

--------- ------------ ------------------

RAC  NOARCHIVELOG NO

RAC  NOARCHIVELOG NO

2.查看集群数据库是否状态-默认为共享

SQL> show parameter cluster;

NAME     TYPE VALUE

------------------------------------ ----------- ------------------------------

cluster_database     boolean TRUE

cluster_database_instances     integer 2

cluster_interconnects     string

3.将归档置于ASM-ARCH,查看ASM是否存在

[grid@node1 u01]$ asmcmd lsdg

State    Type    Rebal  Sector  Block       AU  Total_MB  Free_MB  Req_mir_free_MB  Usable_file_MB  Offline_disks  Voting_files  Name

MOUNTED  EXTERN  N         512   4096  1048576      2048     1953                0            1953              0             N  ARCH/

MOUNTED  NORMAL  N         512   4096  1048576      3072     2146             1024             561              0             Y  CRSVOTE/

MOUNTED  EXTERN  N         512   4096  1048576      4096     2042                0            2042              0             N  DATA/

4.查看当前归档sequence号

nodeSQL> archive log list;

Database log mode       No Archive Mode

Automatic archival       Disabled

Archive destination       /u01/app/oracle/product/11.2.0/db_1/dbs/arch

Oldest online log sequence     5

Current log sequence       6

node2SQL> archive log list;

Database log mode       No Archive Mode

Automatic archival       Disabled

Archive destination       /u01/app/oracle/product/11.2.0/db_1/dbs/arch

Oldest online log sequence     1

Current log sequence       2

5.将整库启动到mount状态

5.1 先关闭整库

[oracle@node1 ~]$ srvctl stop database -d rac

5.2 查看整库状态

[oracle@node1 ~]$ srvctl status database -d rac

Instance rac1 is not running on node node1

Instance rac2 is not running on node node2

5.3 将整库启动到mount状态

[oracle@node1 ~]$ srvctl start database -d rac -o mount

5.4 查看库是否为mount状态

SQL> select inst_id,status from gv$instance;

INST_ID STATUS

---------- ------------

1 MOUNTED

2 MOUNTED

6. 配置归档路径

SQL> alter system set log_archive_dest_1='LOCATION=+ARCH' sid='rac1' scope=spfile;

System altered.

SQL> alter system set log_archive_dest_1='LOCATION=+ARCH' sid='rac2' scope=spfile;

System altered.

--配置归档路径也可以用此命令 alter system set log_archive_dest_1='LOCATION=+ARCH' sid='*' scope=spfile;

7.关闭集群控制文件共享

SQL> alter system set cluster_database=false scope=spfile;

System altered.


cluster_database的说明

这个参数的取值是TRUE和FALSE。对于所有实例,这个参数的取值应当设置为TRUE。TRUE值将指引实例在启动期间以共享模式挂载控制文件。

如果一个首先启动的实例将该参数设置为FALSE,那么它将能够以独占模式挂载控制文件。但是这样会禁止所有后台实例启动,如果试图去启动别的实例,

则会收到以下错误:

SQL> startup

ORA-01102: cannot mount database in EXCLUSIVE mode

在以下维护操作期间,必须使用cluster_database=FALSE启动实例:

从无存档日志模式转换为存档日志模式及反向转换。

启用闪回数据库功能。

升级期间。

对系统表空间执行介质恢复。

从Oracle RAC 数据库转换为单实例数据库及反向转换。

这个参数的默认值是FALSE,为了在Oracle RAC环境中启动实例,这个参数必须设置为TRUE。


8.关闭数据库

[oracle@node1 ~]$ srvctl stop database -d rac

9.启动数据库至mount状态

[oracle@node1 ~]$ srvctl start database -d rac -o mount

10. 确定当前实例为mount状态

SQL> select status,inst_id from gv$instance;

STATUSINST_ID

------------ ----------

MOUNTED      1

11. 开启归档

SQL> alter database archivelog;

Database altered.

12. 打开数据库

SQL> alter database open;

Database altered.

13. 打开集群控制文件共享

SQL> alter system set cluster_database=true scope=spfile;

System altered.

14. 关闭实例

SQL> shutdown immediate;

15.启动数据库

[oracle@node1 ~]$ srvctl start database -d rac

16.查看数据库归档状态

SQL> select name,log_mode,flashback_on from gv$database;

NAME  LOG_MODE     FLASHBACK_ON

--------- ------------ ------------------

RAC  ARCHIVELOG   NO

RAC  ARCHIVELOG   NO

17.归档测试

17.1 归档当前online日志组

SQL> alter system archive log current;

17.2 查看asm中是否生成

ASMCMD> ls

thread_1_seq_6.257.902564455

thread_1_seq_7.258.902564457

thread_1_seq_8.260.902564583

thread_2_seq_2.256.902564379

thread_2_seq_3.259.902564585

ASMCMD> pwd

+arch/rac/archivelog/2016_01_31


归档删除策略配置

日志的归档对于数据库的恢复提供了最完美的保障,对于纯粹的RAC或者单实例,归档的删除策略可以不用考虑,但是对于DG、OGG,那考虑的问题就要多了,且归档的删除策略关系到整个DG、OGG的完整性,因此归档删除策略以及闪回删除将独立为一篇!


开启闪回功能过程

11g开启闪回比10g容易许多,直接在线操作即可,如下

1. 查看当前闪回状态

QL> show parameter db_recover

NAME     TYPE VALUE

------------------------------------ ----------- ------------------------------

db_recovery_file_dest     string

db_recovery_file_dest_size     big integer 0

2. 配置闪回路径

SQL> alter system set db_recovery_file_dest='+arch' scope=spfile;

System altered.

3. 配置闪回空间大小

SQL> alter system set db_recovery_file_dest_size=1g scope=spfile;

System altered.

4. 打开闪回功能

SQL> alter database flashback on;

Database altered.

注意:可以根据需要为特定的表空间打开或关闭闪回:

SQL> alter tablespace users flashback on;

SQL> alter tablespace users flashback off

5. 查看闪回状态

SQL> select name,log_mode,flashback_on from gv$database;

NAME  LOG_MODE     FLASHBACK_ON

--------- ------------ ------------------

RAC  ARCHIVELOG   YES

RAC  ARCHIVELOG   YES

11g以后的闪回关闭很简单,直接在任意节点执行

SQL>alter database flashback off;即可

最后,附带官方对闪回FRA介绍:

Specifying a Fast Recovery Area
The Fast Recovery Area is a location in which Oracle Database can store and manage files related to backup and recovery. It is distinct from the database area, which is a location for the current database files (datafiles, control files, and online redo logs).You specify the Fast Recovery Area with the following initialization parameters:
DB_RECOVERY_FILE_DEST: Location of the Fast Recovery Area. This can be a directory, file system, or Automatic Storage Management (Oracle ASM) disk group. It cannot be a raw file system.In an Oracle Real Application Clusters (Oracle RAC) environment, this location must be on a cluster file system, Oracle ASM disk group, or a shared directory configured through NFS.DB_RECOVERY_FILE_DEST_SIZE: Specifies the maximum total bytes to be used by the Fast Recovery Area. This initialization parameter must be specified before DB_RECOVERY_FILE_DEST is enabled.
注意:DB_RECOVERY_FILE_DEST_SIZE先于DB_RECOVERY_FILE_DEST配置,且rac节点配置一致!In an Oracle RAC environment, the settings for these two parameters must be the same on all instances.
You cannot enable these parameters if you have set values for the LOG_ARCHIVE_DEST and LOG_ARCHIVE_DUPLEX_DEST parameters. You must disable those parameters before setting up the Fast Recovery Area.
注意:oracle rac中,在配置了FRA情况下,要禁掉LOG_ARCHIVE_DEST和LOG_ARCHIVE_DUPLEX_DEST 参数You can instead set values for the LOG_ARCHIVE_DEST_n parameters. The LOG_ARCHIVE_DEST_1 parameter is implicitly set to point to the Fast Recovery Area if a local archiving location has not been configured and LOG_ARCHIVE_DEST_1 value has not been set.Oracle recommends using a Fast Recovery Area, because it can simplify backup and recovery operations for your database.
注意:Oracle官方推荐使用FRA,因为它可以简化备份、恢复数据库操作。

Oracle RAC 11R2归档、闪回删除策略配置完整版,请移步:

http://my.oschina.net/1272149624/blog/611949

转载于:https://my.oschina.net/1272149624/blog/611947

Oracle RAC 11R2配置归档、删除策略,闪回配置完整版相关推荐

  1. Oracle Data Guard (RAC+DG) 归档删除策略及脚本

    1.Data Guard 主库归档文件删除策略: 当我们设置: RMAN>configure archivelog deletion policy to applied on standby; ...

  2. 主库 归档 删除策略

    对于Oracle Data Guard 的Maximum Availability和 Maximum Performance 两种模式下的主库归档文件的删除,必须是在归档文件在备库应用以后才可以删除. ...

  3. Oracle Data Guard 主库 归档文件 删除策略 .

    对于Oracle Data Guard 的Maximum Availability和 Maximum Performance 两种模式下的主库归档文件的删除,必须是在归档文件在备库应用以后才可以删除. ...

  4. Oracle Rac 11R2添加节点

    Oracle Rac 11R2添加节点 一.完成以下步骤,准备将节点添加到集群: 1.安装操作系统(版本和集群其他节点一致),同时配置hosts文件.内核参数,网络参数,及oracle rac依赖的p ...

  5. oracle数据误操作恢复【flashback闪回操作】

    几张表的数据全部执行了delete * 操作. 接到问题立刻知道了事件的严重性,立即开始研究解决办法. 了解到数据库是oracle 10G. 经查询可以使用flashback闪回操作进行恢复,这下放心 ...

  6. oracle导出自增设置,oracle008:oracle自增,自适应,数据闪回,导入导出

    oracle008:oracle自增,自适应,数据闪回,导入导出 oracle008:oracle自增,自适应,数据闪回,导入导出 一,oracle数据自增 在MySQL中自增使用主键和自增来实现,但 ...

  7. RMAN正确地删除Archivelog以及设置有备库的归档删除策略

    如何正确地删除Archivelog: Archivelog并不能直接得从OS层直接物理删除,因为archivelog的相关信息是记录在controlfile中的,当物理删除后不会改变controlfi ...

  8. oracle 闪回查询,闪回版本查询,闪回事务查询,闪回表,闪回删除,闪回数据库

    文章目录 1. 闪回查询 1.1. 闪回时间查询 1.2. 闪回scn查询 (1) 获取scn号的方法 (2) 闪回scn查询命令 2. 闪回版本查询 3. 闪回事务查询 4. 闪回表 5. 闪回删除 ...

  9. 关闭单节点oracle,oracle rac 如何正确的删除单个节点的actionlist

    1节点2 使用dbca删除一个节点 2节点1 alter database disable thread 2; 3节点1 验证是否已经删除一个节点数据库 [03:49:06 oracle(db)@ra ...

最新文章

  1. 一个用PPT画画的程序员
  2. Logstash 父子关系 配置
  3. format函数使用matlab,Matlab基本函数-format函数
  4. [翻译] 构建完美的WPF开发工作站
  5. apache httpclient 工具类_HttpClient 和Mycat 主从节点和读写分离
  6. android studio管理依赖,Android Studio 中的 Gradle 依赖统一管理
  7. 2048游戏c语言linux简易代码,C语言实现2048游戏代码
  8. CUDA 网格级并发-流(2)
  9. 机器学习-KMeans聚类 K值以及初始类簇中心点的选取
  10. Spark团队开源新项目MLflow发布0.2版本,内置TensorFlow集成
  11. 常用 API 函数(7): 位图、图标和光栅运算函数
  12. PHP语言的RSA算法加解密程序
  13. lenna的真实面目
  14. AE Dulik骨骼绑定脚本!
  15. 微信小程序即时聊天前后端(TP5+Gateway)
  16. 谷歌浏览器 发送到剪切板_将Google搜索结果发送到您的新闻阅读器
  17. Python中 or 和 and 用法
  18. Summation of polynomials
  19. 互联网快讯:中国石化与隆基达成战略合作;极米多款投影产品持续热销;百度网盘青春版正式上线
  20. Java专题 基础篇--判断(三元表达式,switch等) +个税计算案例

热门文章

  1. springboot异常处理方式
  2. React—Native开发之 Could not connect to development server(Android)解决方法
  3. 解决Ubuntu不能全屏问题
  4. UTF-8的CSV文件中文乱码问题解决办法
  5. win11HDMI端口无法使用怎么办 windows11HDMI端口无法使用的解决方法
  6. activiti启动流程实例,添加进businessKey
  7. maven分模块构建项目工程
  8. 发条js调试工具_【转载】移动端js调试工具:eruda
  9. uniapp实现瀑布流基本写法
  10. 统计平方和三元组的数目