oracle HA 高可用性具体解释(之中的一个,client、server端服务具体解释):http://write.blog.csdn.net/postedit
我们已经看到TAF是的Oracle的会话可以自己主动又一次连接,须要说明的是。这个能力是基于OCI的,是OCI的一个功能,JDBC Thin Driver无效。由于这样的驱动不是构建在OCI库上的。
尽管这个功能发起于RAC。但TAF并不局限于RAC,单实例、DG环境都可以享受这个优点。
Oralce声称其TAF可以保证用户会话自己主动的转移到还有一个实例上。这一点确实是真的。可是是有水分的。
为了深入理解TAF的能力。我们接下来做一个更精细的实验。
1. TAF和事务
在RAC环境下,能够有三种方式把一个用户会话迁移到还有一个实例上。包含altersystem disconnect from session、shutdown、dbms_service包。这三种方式的后台机制和效果事实上都是一致的,这三种方法能够把一个会话透明的或者说优雅的从一个实例迁移到还有一个实例,对于这个会话来说,甚至感觉不到这样的感觉迁移的发生。我们这个实验就用alter system的方法进行,这个命令的语法例如以下:
Altersystem disconnect session [post_transaction | immediate];
这个命令有两个选项,分别含义例如以下:
Post_transaction:意思是在事务提交之后再断开已有连接;
Immediate: 意思是马上断开连接;
Oracle cluster HA框架
术语介绍
(1) Resource(资源)
资源须要由CRS管理的实体叫做Resource。
一般而言是指一个火一组进程。
(2) Resource Dependency(资源依赖性)
不同资源之间会有依赖关系,比方使用ASM作为存储的数据库而言,数据库实例就依赖与ASM实例。这样的依赖关系体如今ASM实例必须先于数据库实例启动,必须等到数据库实例关闭之后才干关闭。
而Resource Dependency就是用来说明这样的关系的,通过REQUIRED_RESOURCES參数定义。
(3) Application Profile(应用描写叙述文件)
Application Profile是一个文件,用来告诉CRS应该怎样管理应用程序的。
这个文件通过“属性=值“的格式来描写叙述应用程序的属性,比方资源脚本、资源依赖性、资源检察频率等。在使用Oraclecluster HA时。第一步就是创建这个文件,但这个文件又是一个过渡文件,文件的内容最后要注冊到OCR中。
(4) Action Program
Action Program是一个可运行文件,可以使二进制文件、很多其它的是SHELL脚本。
Oracle Cluster HA架构就是通过这个脚本来完毕启动、关闭、检查、转移资源工作的。这个脚本必需要可以接受处理start、stop、check这三个參数。
(5) OCR
在配置第三方应用的HA集群时,Application Profile的内容最后要注冊到OCR中。
Oracle Cluster住工作时是从OCR而不是Application Profile读取配置内容的。
配置命令
(1) crs_profile
配置时有两个文件须要创建的,Application Profile和ActionProfile。前者是一个配置文件。后者是一个SHELL脚本。但实际上这两个文件都不须要手工创建,通过这个命令能够自己主动的创建,读者仅仅须要在其基础上进行改动就可以。
[[email protected]]# ./crs_profile -h
Usage: crs_profile -create resource_name -t application
[-dir directory_path] [-a action_script] [-B binary_pathname]
[-d description] [-h hosting_members] [-r required_resources]
[-l optional_resources] [-p placement_policy]
[-o as=auto_start,ci=check_interval,ft=failure_threshold,
fi=failure_interval,ra=restart_attempts,fd=failover_delay,
st=script_timeout,ap=active_placement,
ut=uptime_threshold,rt=start_timeout,pt=stop_timeout] [-f] [-q]
crs_profile -create resource_name -I template_file [-dir directory_path][-f] [-q]
crs_profile -delete resource_name [-dir directory_path] [-q]
crs_profile -print [resource_name [...]] [-dir directory_path] [-q]
crs_profile -template resource_name [-dir directory_path] [-Otemplate_file]
crs_profile -template -t application [-O template_file]
crs_profile -update resource_name [-dir directory_path] [option ...] [-ooption,...] [-q]
crs_profile -validate resource_name [-dir directory_path] [-q]
[[email protected] bin]#