尽管RAC提供了避免或是减少宕机时间的方法,但是仍需要对database自身进行保护,在RAC中,database是被所有Instances共享的。这意味着需要为cluster database设计合适的备份恢复策略,就向在普通环境中一样。
为了最小化由于disk failure造成的data丢失,常会使用disk镜像技术。例如设置database为归档模式,并对disks进行三个备份。对此可以移除一个镜像副本用于执行备份操作,而剩下两个仍然保持镜像副本,从而保证在线磁盘的活动。为了正确实现这些操作,可能需要先将这些tablespaces设置为backup模式,随后,如果需要,暂时的将disk操作halt,具体使用命令ALTER SYSTEM SUSPEND。当命令完成,可重新恢复原来的操作,通过命名ALTER SYSTEM RESUME,并将tablespaces从新设置为非backup模式。在这里使用EM对备份恢复的设置我就不讲了。
1、初始化归档
要开启cluster的归档模式,必须通过一个专有Instance让database处于mounted但尚未open的状态。如果使用的是spfile,必须先为该Instance创建特定SID实体,另外,创建一个特殊目的的文本参数文件,在该文件中,必须为这个专用Instance设置下面的几个参数:
* CLUSTER_DATABASE:设置为FALSE
* LOG_ARCHIVE_DEST_n:根据具体的归档策略,设置
* LOG_ARCHIVE_FOMAT:包含%t或%T和%R参数用于区分thread
* LOG_ARCHIVE_START设置为TRUE
具体的详细步骤如下:
①关闭运行中的数据库
# su – oracle $sqlplus /nolog sql>connect /as sysdba sql>shutdown immediate |
②导出现有数据库的spfile文件
如果没有spfile,可以先创建spfile
sql>create spfile from pfile;
然后导出spfile
sql>create pfile=’/oracle/pfile.ora’ from spfile; //将pfile创建到/oracle目录下
③修改/oracle/pfile.ora文件
更改cluster_database参数为false。同时可以添加自动归档参数log_archive_start=true,如下:
*.log_archive_start=true *.cluster_database=false *.log_archive_dest=’LOCATION=/oracle/archivelog’ //将归档日志存放到/oracle/archivelog文件系统下,便于管理 *.log_archive_format=%t_%s.dbf |
④导入已修改的spfile
在数据库关闭状态下:
sql>create spfile from pfile=’/oracle/pfile.ora’;
⑤启动数据库到加载状态(mount)
$sqlplus /nolog sql>connect /as sysdba sql>startup mount |
⑥更改数据库运行模式为归档模式
$sqlplus /nolog sql>connect /as sysdba sql>startup mount sql>alter database archivelog; //更改为归档模式 sql>alter database open; //将数据库打开 sql>archive log list; //检查数据库归档参数是否已经正确更改 |
⑦将cluster_database参数更改回true
首先关闭数据库
$sqlplus /nolog sql>connect /as sysdba sql>shutdown immediate sql>create spfile from pfile=’/oracle/pfile01.ora’; //将现有spfile导出 修改/oracle/pfile01.ora,将cluster_database参数更改为true; |
⑧导入新修改的pfile01.ora文件
$sqlplus /nolog sql>connect /as sysdba sql>create spfile from pfile=’/oracle/pfile01.ora’; sql>startup //正常启动数据库 |
#p#副标题#e#
2、归档日志文件的配置
在备份恢复操作过程中,设计到归档日志文件,Oracle Server是通过控制文件来确定文件的路径和名称。归档日志文件的路径名称也可选择存储在恢复catalog中,如果使用的是RMAN的情况。但是归档日志文件的路径名称不包含node的name,所以RMAN希望在分配的channels上找到nodes所需的files。
如果使用cluster file system,Instances都可以写入相同的归档日志路径中。这被称为cluster file system scheme。备份恢复归档日志在这种情况下很简单,因为所有的logs都分布在相同的目录中。
如果没有使用cluster file system,Oracle推荐在每个Instance本地创建归档日志destination,使用NFS-read 加载到其他Instances上。这被称为本地归档的NFS scheme。在备份期间,即可从每个主机上备份归档日志,也可选择一个host执行备份所有归档日志的操作。在恢复期间,一个Instance可以访问来
关键词标签:数据备份和恢复
相关阅读
热门文章 Oracle中使用alter table来增加,删除,修改列oracle中使用SQL语句修改字段类型-oracle修使用低权限Oracle数据库账户得到管理员权限Oracle对user的访问控制
人气排行 ORACLE SQL 判断字符串是否为数字的语句Oracle中使用alter table来增加,删除,修改列的语法ORACLE和SQL语法区别归纳(1)oracle grant 授权语句如何加速Oracle大批量数据处理Oracle删除表的几种方法ORACLE修改IP地址后如何能够使用Oracle 10g创建表空间和用户并指定权限
查看所有0条评论>>