SharePlex操作手册
1.5. SharePlex的队列和进程
SharePlex的队列有capture, export, post,进程有capture, read, export, import和post,这些队列和进程在复制过程中的作用如下。
在源系统:
Capture 进程读取Online Redo Log或Archive Log将复制数据送到Capture 队列; Read 进程读取Capture队列的内容,准备需要传送的数据,放入Export 队列; Export 进程通过网络将复制数据传送到目标系统;
在目标系统:
Import 进程接收复制数据并传送到Post Queue;
Post 进程读取Post Queue,创建操作的SQL语句,并在目标系统中执行。
Quest Professional Services, 4/2/2015 5
SharePlex操作手册
第2章 建立SharePlex的复制环境
2.1. 初始化同步
2.1.1. 为什么要初始化同步?
SharePlex在开始进行复制工作之前,一定要保证生产中心系统和目标系统的数据
库一致,包括所有需要复制的表结构和表里的数据必须一致。而对于一个新建的目标系统来说,数据库里没有用户数据或者连数据库也未安装,因此,初始化同步是必须的。
2.1.2. 初始化同步的方法
因为系统已经上线,所以需要在线完成初始化同步。
本例中通过RMAN备份方式进行在线初始化同步,步骤详见《SharePlex实施手册》。
2.2. 启动SharePlex
生产中心系统和目标系统都需要启动SharePlex,启动的方式相同。
启动SharePlex即启动SharePlex的主进程,首先以SharePlex产品和队列文件所有者(缺省为Oracle用户)的身份登录,然后进入到product_dir/bin目录下,其中product_dir为SharePlex的安装目录,在该目录下运行如下命令启动SharePlex主进程:
$ export EXTSHM=ON -- for AIX system $ sp_cop &
$ unset EXTSHM -- for AIX system
其中$为UNIX提示符
针对XXXX的系统情况:
启动SharePlex: 以oracle用户登录 $ sp_cop &
$ ps -ef |grep sp_ 检查进程运行情况
关闭SharePlex $ sp_ctrl
sp_ctrl> shutdown
Quest Professional Services, 4/2/2015 6
SharePlex操作手册
2.3. 建立SharePlex的配置文件
SharePlex的配置文件实际上是一个基于ASCII的文本文件,必须按照一定的格式将所有需要复制的表增加到这个文件里,它不但确定了SharePlex要复制哪些内容,而且还确定了复制的目的地。
2.3.1. SharePlex配置文件的格式
以下是一个具体的SharePlex配置文件,通过它来说明配置文件的结构以及含义:
Datasource:o.sourceSID
source_owner.table target_owner.table targetsystem@o.targetSID
文件中粗体显示的部分是配置文件的关键字,不能改变。其中sourceSID是生产中心系统Oracle的SID;targetSID是目标系统Oracle的SID;targetsystem是目标系统主机名(IP地址亦可)。
文件的第一行信息代表生产中心系统Oracle的SID,从第二行之后代表要复制的表,一行信息对应一个表,它包括三部分内容:
该表在生产中心系统中的模式用户名以及表名; 该表在目标系统中的模式用户名以及表名; 路由信息。
有时为提高post性能,需要创建多个post队列,要确认不同post队列中的表没有严格的依赖关系。因为在同一post队列中的表的操作顺序SharePlex可以保证,但不同队列的数据是分别处理的,所以无法严格保证队列间的先后顺序。
source_owner.table target_owner.table targetsystem:app@o.targetSID 如上所示,这个表通过post队列”app”进行处理。
2.3.2. 建立SharePlex配置文件的方法
有两种方法建立SharePlex的配置文件。一种是手工编辑,一种是利用SharePlex的工具自动生成。
手工编辑的方法
(1)进入到生产中心系统$product_dir/bin目录下,其中$product_dir为SharePlex的安装目 录;
(2)在该目录下运行sp_ctrl进入SharePlex的控制台: $sp_ctrl
其中$为UNIX提示符
(3)在控制台下运行create config filename
Quest Professional Services, 4/2/2015 7
SharePlex操作手册
sp_ctrl(Source)> edit config filename
其中filename为配置文件名,该命令使UNIX系统激活vi的环境,Windows系统激活写字版程序,然后进行文字编辑,编辑完成后保存配置文件,UNIX系统中用wq命令保存文件并退出vi环境,Windows系统用file菜单下的save选项保存,然后退出写字版程序;
用SharePlex工具自动生成配置文件
配置文件也可以用SharePlex提供的工具自动生成。自动生成需要遵循以下步骤:
(1)进入生产中心系统的product_dir/util目录下; 其中product_dir为SharePlex的安装目录);
(2)编辑config.sql文件,保证只有需要复制的用户下的表被复制而且只有需要复制的用户下的序列被复制;
(3)进入生产中心系统SharePlex配置文件所在的目录; $ cd Variable_dir/config
其中Variable_dir为SharePlex队列所在目录;
(4)启动Sqlplus 并运行config.sql脚本; $ sqlplus SYSTEM/systempassword SQL> @product_dir/util/config.sql
其中product_dir为SharePlex产品的安装目录;
(5)在出现 'Name of the Target machine --> '提示时输入目标系统的主机名(IP地址亦可),然后回车;
(6)在出现'Source Database Sid --> '提示时输入生产中心系统数据库的SID,然后回车;
(7)在出现'Target Database Sid --> '提示时输入目标系统数据库的SID,然后回车;
(8)在出现'Replicate Sequences (y/n) --> '提示时输入y,然后回车;
(9)在出现'SharePlex oracle username --> '提示时输入SharePlex配置数据库时建立的模式用户名(缺省为SPLEX),然后回车;
(10)脚本运行完成后,会在/Variable_dir/config目录下自动生成SharePlex的配置文件config.file,该文件不用进行任何修改。
2.4. 激活配置文件
配置文件只有被激活之后才能生效。激活配置文件一定要加live选项,建议在业务较少的时候进行,激活前确认数据库无长时间不释放的锁。以下是激活配置文件的步骤:
(1)进入生产中心系统SharePlex的控制台;
进入到product_dir/bin目录下运行sp_ctrl,其中product_dir为SharePlex的安装目录; Quest Professional Services, 4/2/2015 8