单实例部署DDS

1.系统环境

操作系统:Centos 7

数据库:oracle11g

2.安装前准备

(1)root用户下创建dds用户

useradd -g oinstall -G oinstall,dba,oper dds
passwd dds

(2)设置dds环境变量

cp /home/oracle/.bash_profile /home/dds/
chown -R dds:oinstall /home/dds/

登录到dds用户,修改和添加.bash_profile文件参数,添加(NLS_LANG若存在就不加第一行

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export SHLIB_PATH=$ORACLE_HOME/lib
export LIBPATH=$ORACLE_HOME/lib:
export DDS_HOME=/data/dds/bin
export DDS_DATA=/data/dds/ds
export PATH=$PATH:$DDS_DATA:$DDS_HOME:.
ulimit -c unlimited


source .bash_profile

(3)创建目录

mkdir -p /data/dds/ds
chown -R dds:oinstall /data/dds
chmod -R 775 /data/dds

上传压缩包至:/data/dds

dds用户解压

tar -xvf dds2.13.9.9690.P18.ora11g.linux64.tar.bz2

源端:在创建的dds用户下执行

sqlplus / as sysdba

若报错:

解决参考:解决ORA-12705无法访问NLS问题_51CTO博客_ora12705 无法访问nls数据文件 

进入数据库:执行

@/data/dds/tools/setup-s.sql;
create or replace view XKCCLE as select * from sys.x$kccle;
create or replace view XKCCCP as select * from sys.x$kcccp;
alter database force logging;
alter database add supplemental log data;
alter database add supplemental log data (primary key, unique
index) columns;
create user dds1 identified by dds1;
create role dds_role identified by dds_role;
grant connect to dds_role;
grant lock any table to dds_role;
grant select any table to dds_role;
grant select any dictionary to dds_role;
grant alter system to dds_role;
grant execute on dbms_flashback to dds_role;
grant execute any type to dds_role;
grant dds_role to dds1;
grant connect to dds_role;
grant connect to dds1;
grant lock any table to dds1;
grant select any table to dds1;
grant select any dictionary to dds1;
grant alter system to dds1;
grant execute on dbms_flashback to dds1;
grant execute any type to dds1;
alter user dds1 quota 2m on users;
create table dds1.ddstemp( f1 int );
--alter system set "_log_parallelism_max"=1 scope = spfile;

重启实例: 

sqlplus / as sysdba
shutdown immediate
startup

3.源端生成配置软件

cd DDS_HOME
./dds_conf

配置启动软件参数的文件

vi $DDS_DATA/config/sys.cfg

LOGIN           dds1/dds1
SOURCE_ID       0
INTERVAL        2
SZSHM           8388608
#check_rac 1 --rac环境必须添加
COMM_PARAM      TCP:192.168.40.11:8203
WEB_PORT        8303
AuthStr         dds1/dds1
REDO_ARCH       50              (MB)
DISK_REMAIN     32              (MB)
WEB_REFRESH     600             (Seconds)
ALARM_COMM_DELAY 60             (Seconds)
ALARM_DIFF_OBJ   10             (Seconds)
LEN_LOG_BUF     5242880
LEN_LOG_ADD     0
Sequence        1
Procedure       1
View            1
MView           1
Privilege       1
Synonym         1
Index           1
Trigger         1
redoINocfs      0
dbfInASM        0
dml_mode        rowid
merge_dtf       0       (First Sync, 1: merge multi-files into 1 file)
max_lob_rows    128
delete_arch     0
#no_tbs tbs1,tbs2
alarm_comm_dtf     1000
alarm_merge_dtf    1000
alarm_track_delay  300  (Seconds)
large_part_num     20
large_part_blk     20000
lob_piece_len      8388608
szLog           104857600
DDS_NAME        source
# no_user               dds/dds2

#LogPath1 /arch1 --非归档模式不用
#LogPath2 /arch2 --非归档模式不用
#select name from v$archived_log;
CONFIG1 665694f4
CONFIG2 4ea7afe5a2fa630ef92d1eda01ec703a883599fc6a64a371796311b71f6926db

 编辑目标端地址参数的文件

 vim $DDS_DATA/config/tgt.cfg

#tgtID NextSendNo NextSaveNo Communication-Param  Web-Comm-Param    TcpFlow(KB/s)
# 1    0          0          TCP 192.168.1.1:8204   192.168.1.1:8304  0
  1    0          0          TCP 192.168.40.111:8204 192.168.40.111:8304

编辑同步对象配置文件

cat $DDS_DATA/config/map.cfg


# define the mapping
# Fields description
#   1. map_id ( must>0, if mapid<=0, means deleted )
#   2. tgt_id
#   3. map_type: [ db | user | table | group ]
#   4. state     [ stop | run | sync ]
#   5. source object
#             If map_type='db', It's user names which not to be exported
#             If map_type='user', It's user name, EX: testuser
#             if map_type='table', It's user and table name, EX: usr1.t1
#             if map_type='group', It's Group-Number
#             if map_type='users', It's users' name
#             if map_type='tables', It's tables' name
#   6. Options, Support options:
#      TNS=tns_val
# EX
#--------------------------------
# 1 1,2 USER   STOP user1
# 2 1,2 USER   STOP user2            tns=@db0a
# 3 1   TABLE  STOP user2.table001
# 4 1   GROUP  STOP 1
# 5 1   USERS  STOP hs_%%
# 6 1,2 TABLES STOP acct.acct_j%%
# 7 1,2 TABLES STOP bank%%.jour_
# 8 1,2 DB     STOP %SYS%,DDS%,XDB,DBSNMP,OUTLN,ANONYMOUS,MDDATA,SCOTT
#--------------------------------
  1 1 USER   STOP dds1
  2 1 USER   STOP HS_HIS

添加 sn.txt license 到$DDS_DATA/config 目录文件

源端配置完成。

4.目标端配置 

(1)root用户下创建dds用户

useradd -g oinstall -G dba,oper -s /bin/bash -d /home/ddszb -m ddszb
passwd ddszb

(2)设置dds环境变量

cp /home/oracle/.bash_profile /home/ddszb/
chown -R ddszb:oinstall /home/ddszb/

登录到dds用户,修改和添加.bash_profile文件参数,添加(NLS_LANG若存在就不加第一行

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export SHLIB_PATH=$ORACLE_HOME/lib
export LIBPATH=$ORACLE_HOME/lib:
export DDS_HOME=/data/ddszb/bin
export DDS_DATA=/data/ddszb/dt
export PATH=$PATH:$DDS_DATA:$DDS_HOME:.
ulimit -c unlimited


source .bash_profile

(3)在ddszb用户下执行创建工作目录

mkdir -p /data/ddszb/dt
chown -R dds:oinstall /data/ddszb
chmod -R 775 /data/ddszb

上传压缩包至:/data/ddszb

 (4)目标端:在新创建的 ddszb 用户下执行

sqlplus / as sysdba
show user ;

create user dds identified by dds default tablespace users;

grant dba to dds;

grant connect,resource to dds;

grant update on sys.seq$ to dds;
create user dds2 identified by dds2 default tablespace users;

Grant dba to dds2;

grant all on sys.seq$ to dds2;

create directory dds_lobdir as '/dds/lobdir';

grant read,write on directory dds_lobdir to dds2;

(5)目标端生成配置软件

cd $DDS_HOME
./dds_conf

 编辑系统配置文件

vim /data/ddszb/dt/config/tgt_sys.cfg

LOGIN           dds2/dds2
MULTI_SOURCE    1               (1 to 32)
DELAY           0
AUDIT           0
#check_rac 1 --不是rac不添加
COMM_PARAM      TCP:192.168.40.111:8204
AuthStr         dds2/dds2
szLog           104857600
RM_BLK_CNT      128
SOURCE          TCP:192.168.40.11:8203
SOURCE_WEB_PORT 8303
WEB_PORT        8304
DDS_NAME        target
PACKBAK         5       (Hours)
ReserveTableCNT 50
dbfInASM        1
dml_mode        rowid
load_user       0
diff_endian     0
#restart_mem    80  (MB)
#restart_dtf    300 (DTFs)
#dds_rb_hours   0   (Hours)
DISK_REMAIN     512             (MB)
SPLIT_TXN       0               (Commit each DTF)
trace_rowid   0

编辑目标系统配置文件

vim /data/ddszb/dt/config/tgt_map.cfg

#MapTYPE SourceOBJ TargetOBJ
#EX:
#USER  user1 user1_tgt
#TABLE usr1."abc"   usr1."xyz"
#
USER dds1 dds2

添加 sn.txt license 到$DDS_DATA/config 目录文件

 

(6)启动软件

源端:

cd $DDS_DATA
ddstart

目标端:

cd $DDS_DATA
ddstart

(7)数据同步

源端:

map_start

(8)常用命令

源端:
ddstart 启动软件
ddstop  关闭软件
vshms -m  查看同步用户列表
vshms -o  查看同步对象
vshms -t  查看同步到目标端的ip和程序端口
vshms -p  查看软件运行状态
vshms -c  查看源端软件配置
vs 查看实时日志
dds_pweb -s  启动源端web监控
dds_pweb -q  关闭源端web监控


目标端
ddstart 启动软件
ddstop  关闭软件
vshms -p  查看软件运行状态
vshms -c  查看源端软件配置
vt  查看实时日志
dds_pweb -t  启动目标端web监控
dds_pweb -q  关闭目标端web监控

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

柠檬不酸z

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值