./disql --用时40min backup database full backupset '/dmbak/OA_FULL_20231007' COMPRESSED LEVEL 1 PARALLEL 8 ; ./dmrman check backupset '/dmbak/OA_FULL_20231007'; show backupset '/dmbak/OA_FULL_20231007';
scp -r /dmbak/OA_FULL_20231007 root@192.168.0.1:/data/1/1009bak scp -r /dmbak/OA_FULL_20231007 root@192.168.0.2:/data/1/1009bak
#停集群
cd /data/1/dm/dmdata/
cp -r OAK OA20231007
./dmrman restore DATABASE '/data/1/dm/dmdata/OAK/dm.ini' FROM BACKUPSET '/data/1/1009bak' recover DATABASE '/data/1/dm/dmdata/OAK/dm.ini' FROM BACKUPSET '/data/1/1009bak' recover DATABASE '/data/1/dm/dmdata/OAK/dm.ini' UPDATE DB_MAGIC
cd /data/log1/dm/dmdbms/bin
#以mount方式启动数据库实例
./DmServiceOA1 start
./disql SYSDBA/SYSDBA
#源端 OGUID 为 453333,和 dmwatcher.ini 配置文件不一样,需要修改 OGUID
SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1);
SP_SET_OGUID(26180);
SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0);
cd /data/log1/dm/dmdbms/bin
#以mount方式启动数据库实例
./DmServiceOA2 start
./disql SYSDBA/SYSDBA
#源端 OGUID 为 453333,和 dmwatcher.ini 配置文件不一样,需要修改 OGUID
#默认模式是 primary ,需要手动修改为 standby
SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1);
SP_SET_OGUID(26180);
ALTER DATABASE STANDBY;
SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0);
sp_set_para_value(1,'ENABLE_LOCAL_OSAUTH',1);
sp_set_para_value(1,'FAST_LOGIN',2);
sp_set_para_value(1,'IO_THR_GROUPS',32);
#主机
./DmWatcherOA01 start
#备机
./DmWatcherOA02 start
select 'SP_ENABLE_JOB('||NAME||', 0);' from sysjob.sysjobs
EDM_BASE
、SYSDBA
外的用户--1.禁用外键
select 'alter table '||owner||'.'||table_name||' disable constraint '||constraint_name||';'
from all_constraints
where constraint_type='R' and status='ENABLED' and owner in ('EKP');
--2.禁用触发器
select 'alter trigger '||owner||'.'||trigger_name||' disable '||';'
from all_triggers
where status='Y' and OWNER IN ('EKP') ;
--3.禁用 SYSDBA 除外的所有用户
SELECT 'ALTER USER '||USERNAME||' ACOUNT LOCK;'
FROM DBA_USERS
WHERE OWNER NOT IN ('SYSDBA');
ALTER USER "CHECK" ACOUNT LOCK;
...
...
#源端删除tmp文件;
cd /home/dmdba/dmhs/bin
rm -rf cpt.tmp
#删除目的端数据库中的hs表
#目标端重启,重启会新建hs表
cd /home/dmdba/dmhs/bin
./DmhsService restart
./dmhs_console
start exec
#源端启动并执行COPY重装字典
./DmhsService start
./dmhs_console
copy 0 "sch.name in ('EKP',...)" DICT
DMHS_CHECKPOINT_TABLE
select * from "SYSDBA"."DMHS_CHECKPOINT_TABLE";
--源端siteid: 1,目的端siteid: 2
SITEID 改为 1
--3106838309969 为全量备份的 end lsn
SEQID 改为 3106838309969
cd /home/dmdba/dmhs/bin ./DmhsService restart ./dmhs_console start cpt
--启动cpt,查看目的端表信息 DMHS_TABLE_SEQID 有变化
select * from "SYSDBA"."DMHS_CHECKPOINT_TABLE";
select * from "SYSDBA"."DMHS_TRXID_TABLE";
select * from "SYSDBA"."DMHS_TABLE_SEQID";
查看目的端日志。大概 20: 10 之后无错误。
SELECT 'SELECT '''||OWNER||'.'||TABLE_NAME||''' ,COUNT(*) FROM '||OWNER||'.'||TABLE_NAME||' UNION ALL' FROM DBA_TABLES WHERE OWNER NOT IN ('EKPBAK') AND TABLE_NAME IN (...
'IVW_CLSA_EMPLOYEE_OA',
'CITICS_OA_ODEPARTMENT')
ORDER BY OWNER ;
文章
阅读量
获赞