本文以问答的方式阐述了oracle并行服务器的相关概念。
1、什么是ops
ops(oracle parallel server)可以让位于不同系统的多个实例同时访问同一个数据库。并行服务器可以有效地提高系统的可用性和对多系统的访问性能,但是,如果你的数据没有做很好的分割,性能可能还会下降。
安装ops时,多个实例mount同一数据库文件,实例间的通讯由分布式锁管理器(dlm)来管理。需要注意的是分布式锁管理器与你所使用的硬件和操作系统有着密切的关系。为了确定多个企图同时修改同一数据的实例,oracle使用了十个后台进程:lck0-lck9,来锁定某一实例所使用的资源。
ops主要用于unix/linux集群环境中。
2、ops的优点
1)高可用性
2)加快事务响应时间 - 可用于决策支持系统
3)增大交易连接数 - 可用于联机事务处理系统
3、所有的应用都是适合ops吗?
可以根据功能或数据进行分割的应用最适合ops。那些有"热数据"(经常被多实例同时访问的数据)的应用并不适合使用ops。
4、ops需要特殊的硬件吗?
ops要求服务器之间互连并共享磁盘子系统。所有可以做成集群的系统都可以,常用的有unix/linux和nt等。
5、如何设置ops?
1)关闭数据库
2)启用ops选项,在unix中通过重新连接oracle软件的方式来完成。
3)使oracle软件在所有节点上都有效,可以通过复制软件到其他节点或共享磁盘的方式来完成。
4)每个实例要有自己的redo log file,所以要增加必要的log文件:
alter database add logfile thread 2
group g4 (''raw_file1'') size 500k,
group g5 (''raw_file2'') size 500k,
group g6 (''raw_file3'') size 500k;
alter database enable public thread 2;
5)每个实例要有自己的回滚段,所以要增加必要的回滚段:
create rollback segment rb2 tablespace rbs;
6)编辑初始化参数文件initsid.ora文件,添加如下几项:
parallel_server = true
instance_number = 1
thread = 1
rollback_segments = (r01, r02, r03, r04)
7)创建ops所需的数据字典,即运行catparr.sql。
8)在所有的节点上启动实例。